JSF2一个动作被调用两次

时间:2014-10-08 15:45:51

标签: jsf jsf-2 primefaces action

我使用的是Primefaces 4.0(由于我们使用旧版本的IE,因此很难更新它)。 JSF的库是2.1(Mojarra 2.1.6-FCS)。这个项目在Linux上运行在Tomcat7中。

当同步呼叫休息服务并且其响应时间超过10分钟时出现问题。

我有一个动作调用其他服务并一直等待响应,但在此之前响应将被接收,我的动作再次执行,恰好在第一次执行动作的5分钟时

Web应用程序和Rest服务在同一个tomcat 7中.Web App直接调用Rest Service。

非常感谢

我的代码在

之下

mypage.xhtml

<h:form>
    <p:commandButton value="testing" 
          actionListener="#{myBean.testing}" 
          update="@form"
     />  
</h:form>

myBean.java

public class EquipoBean implements Serializable {  
    public void testing() {
        log.debug("Init testing");
        String url = REST_URL+"control/sleepThread/12";
    try {
        //execute the remote call
        String response = RestClient.executeRequest(RestClient.HTTP_GET, url, null);
    } catch (Exception e) {
                e.printStackTrace();
        }
        log.debug("End testing");
    }
}

restServices.java(我的休息服务)

@GET
 @Path("sleepThread/{minutes}")
 public String sleepThread(@PathParam("minutes") Integer minutes){
    log.debug("Init sleepThread " + minutes + " minutes");
    try {
        Thread.sleep(minutes * 60 * 1000;);
    } catch (InterruptedException e) {
        e.printStackTrace();
    }
    return "Ok"
 }

0 个答案:

没有答案