如何使Android按钮在单击时自动显示动画

我正在尝试制作一个按钮,按下时会播放动画列表。 我在这里显示了一个animation.xml: 也适用于onClick函数: b_button.setBackgroundResource(R.drawable.animation); AnimationDrawable frameAnimation = (AnimationDrawable) b_button.getBackground(); frameAnimation.setOneShot(true); frameAnimation.start(); 当我按下按钮时,动画将被播放,但是,只有一次,当我第二次按下它时,它将无法播放。 此外,如何将按钮更改回原始状态? 表示按钮的灰色默认外观。 任何帮助表示赞赏,在此先感谢

在jdk 8中定义接口上的静态(非inheritance)方法的正确语法是什么?

虚拟扩展方法/ aka默认的可覆盖方法的语法(在jdk 8中)有详细记录: public interface Foo { default void bar(String out) { System.out.println(out); }; } 但我找不到任何关于接口上静态非inheritance方法的正确语法的参考?

Spring安全性:添加一个支持IP身份validation的新ROLE

我是Spring Security的新用户。 我之前配置了Spring Security来为我的Web应用程序执行基于表单的身份validation。 我已经使用Annotations来指示哪些控制器/方法需要ROLE_USER与匿名,并实现了我自己的daoAuthenticationProvider来执行身份validation。 我现在正在实现REST服务,需要在BasicAuthentication上进行身份validation+对我的数据库进行IPvalidation。 所以我在REST服务控制器上定义了一个新角色ROLE_IP_AUTH。 在这一点上我只是有点不知所措。 有人能给我一个简短的描述我应该采取的下一步措施吗? 我是否需要为新角色创建新的元素? 我应该切换到这个FilterChainProxy吗? 如果是,我应该包括哪些filter? 我应该在现有的daoAuthenticationProvider类中处理这个问题吗? 基本上我只需要知道我要进入的方向。我想我已经足够了解到达目的地,只有5种不同的方式可以在Spring看到它。 附加信息我当前的实现具有如下配置元素: 我剩下的问题是如何实现自己的IPvalidation。 我可以使用自定义filter添加BasicAuthfilter并实现我自己的基本身份validationfilter来检查IP。 但我对如何使该filter仅适用于我的REST服务使用的ROLE_IP_AUTH模糊不清?

@Valid没有触发 – Spring MVC 3.2

出于某种原因,它不起作用。 我搜索并尝试了在网上找到的所有解决方案。 没有骰子。 看起来我错过了什么。 我的光束: @Entity @Table(name=”employees”) public class Person { private Integer person_id; private String name; private String name2; private String email; private double phone; private String desc; @Id @Max(value=500) @Column (name=”id”) public Integer getPerson_id() { return person_id; } public void setPerson_id(Integer person_id) { this.person_id = person_id; } @NotNull @NotEmpty @Column (name=”fn”) public String […]

从套接字读取图像

可能重复: 通过Java Socket读取映像文件 void readImage() throws IOException { socket = new Socket(“upload.wikimedia.org”, 80); DataOutputStream bw = new DataOutputStream(new DataOutputStream(socket.getOutputStream())); bw.writeBytes(“GET /wikipedia/commons/8/80/Knut_IMG_8095.jpg HTTP/1.1\n”); bw.writeBytes(“Host: wlab.cs.bilkent.edu.tr:80\n\n”); DataInputStream in = new DataInputStream(socket.getInputStream()); File file = new File(“imgg.jpg”); file.createNewFile(); DataOutputStream dos = new DataOutputStream(new FileOutputStream(file)); int count; byte[] buffer = new byte[8192]; while ((count = in.read(buffer)) > 0) { […]

正确实现生产者 – 消费者场景和“优雅”终止线程池

我正在开发我的第一个multithreading项目,因此有一些我不确定的事情。 关于我的设置的详细信息是在上一个问题上 ,简而言之:我有一个由Executors.newFixedThreadPool(N)实现的线程池。 一个线程被赋予一个动作,该动作对本地和远程资源执行一系列查询,并迭代地填充ArrayBlockingQueue ,而其余​​线程调用队列上的take()方法并处理队列中的对象。 尽管小型和监督测试似乎运行正常,但我不确定如何处理特殊情况,例如开头(队列还没有项目),结束(队列清空)以及任何最终的InterruptedExceptions 。 我在这里做了一些阅读,然后让我读到 Goetz和Kabutz的两篇非常好的文章。 共识似乎是不应忽视这些例外。 但是我不确定提供的示例是如何与我的情况相关的,我没有在我的代码中的任何地方调用thread.interrupt() …说到这,我不确定我是否应该这样做… 总结一下,鉴于下面的代码,我如何最好地处理特殊情况,例如终止条件和InterrruptedExceptions? 希望问题有意义,否则我会尽力进一步描述。 提前致谢, 编辑:我已经在实施了一段时间了,我遇到了一个新的打嗝,所以我想我会更新情况。 我遇到了遇到ConcurrentModificationException的不幸,这很可能是由于线程池的不完全关闭/终止造成的。 一旦我发现我可以使用isTerminated()我试过,然后由于一个不同步的wait()我得到一个IllegalMonitorStateException 。 代码的当前状态如下: 我已经听过@ Jonathan的回答中的一些建议,但我不认为他的建议与我需要/想要的一样。 背景故事与我上面提到的相同,相关的代码如下: 持有/管理池的类,以及提交runnables: public void serve() { try { this.started = true; pool.execute(new QueryingAction(pcqs)); for(;;){ PathwayImpl p = bq.take(); if (p.getId().equals(“0”)){ System.out.println(“–DEBUG: Termination criteria found, shutdown initiated..”); pool.shutdown(); // give 3 minutes per item […]

无法访问资源:401 – 仅适用于RestClient插件

我正在使用Postman(Chrome插件)和RestClient(Mozilla插件)​​,当我通过Postman执行时它不起作用。 但是同样使用Rest CLient执行它然后它工作。 即使是相同的我执行代码 OAuthClientRequest request = OAuthClientRequest .tokenLocation(ACCESS_TOKEN_URL) .setGrantType(GrantType.AUTHORIZATION_CODE) .setClientId(CLIENT_ID) .setClientSecret(CLIENT_SECRET) .setRedirectURI(REDIRECT_URL) .setCode(authorizationCode) .buildQueryMessage(); //create OAuth client that uses custom http client under the hood OAuthClient oAuthClient = new OAuthClient(new URLConnectionClient()); OAuthAccessTokenResponse oAuthResponse = oAuthClient.accessToken(request); System.out.println(oAuthResponse.getBody()); request= new OAuthBearerClientRequest(“https://ap5.salesforce.com//services/data/v40.0/”). setAccessToken(oAuthResponse.getAccessToken()). buildBodyMessage(); OAuthClient client = new OAuthClient(new URLConnectionClient()); OAuthResourceResponse resourceResponse= client.resource(request, “GET”, OAuthResourceResponse.class); if (resourceResponse.getResponseCode()==200){ […]

Java Web应用程序安全性:向请求添加令牌

我正在寻找一种方法或当前的API,允许您将令牌添加到Web应用程序请求。 也许在会议期间但不是坚持。 或者,如果您可以通过概述一种有效的方法来帮助我 例如 1. GET request => Servlet生成一个令牌并在视图中打印它 2.返回带有隐藏令牌的视图 3.提交POST请求=>表单并检查令牌是否相同。 很少有事情需要注意,如果有Ajax请求,那么其他一些令牌必须在许多请求中处于活动状态。 如果用户决定关闭浏览器,则当会话超时时,令牌将不得不死亡。 如果用户未能完成表单,则在网站上执行其他操作,则必须在未使用时删除这些令牌。 但实现这样的系统的最佳方法是什么, Spring Security 3有一个我可以使用的系统吗? 在Java,Grails,Spring MVC,Spring Security 3和Hibernate领域

如何通过Base64编码的图像字符串识别文件类型

我得到一个Base64编码的字符串文件作为图像。 但我认为其内容包含有关文件类型的信息,如png,jpeg等。如何检测? 有没有可以帮助我的图书馆?

Axis 2 webservice SSL通信

我从这段代码得到了Soap Response SOAPConnectionFactory sfc = SOAPConnectionFactory.newInstance(); SOAPConnection connection = sfc.createConnection(); SOAPMessage soapMessageResponse = connection.call(soapRequest, new URL(serviceLocation)); 如何使其基于SSL? 我知道如何从SSLContext创建SSLSocketFactory给我指定的密钥库 。 如何告诉SOAPConnection类有关SSLSocketFactory或SSLContext ? 这样我的沟通就可以得到保障。 我不想在系统属性或xml文件中设置密钥库。 我正在使用Websphere 7。 编辑: Caused by: java.lang.reflect.InvocationTargetException at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:48) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:37) at java.lang.reflect.Method.invoke(Method.java:600) at com.ibm.ws.webservices.engine.soap.SOAPConnectionImpl.callJAXWSDispatch(SOAPConnectionImpl.java:416) … 49 more Caused by: javax.xml.soap.SOAPException: javax.xml.ws.WebServiceException: javax.net.ssl.SSLHandshakeException: General SSLEngine problem at com.ibm.ws.webservices.engine.xmlsoap.saaj13only.SOAPConnectionJAXWS.call(SOAPConnectionJAXWS.java:72) … 54 […]