2013-03-25 49 views
0

你好我已经在Java类中的两个URL映射 一个呼吁超级链接等是按键@URLMappings注释,操作将被用于每个映射

的超级链接我叫

@URLAction(mappingId="abc") 
//method.. 
private String hello(){ 
return null; 
} 

按钮我称之为

@URLAction(mappingId="def") 
//method.. 
private String hi(){ 
return null; 
} 

我第一次在超级链接打电话问候()它工作正常 但是当我上按钮调用喜()它的工作原理罚款o但是hello()也被称为

与OCPSOFT 一样如果注解方法所属的类使用@URLMappings注释声明多个URL映射,则该操作将用于每个映射。 http://ocpsoft.org/docs/prettyfaces/3.3.3/en-US/html/Configuration.html

我的问题是,我想调用一个方法对每个urlmapping id任何想法? 提前。

回答

1

如果通过点击类似于<h:commandButton>的方式提交JSF表单,JSF将始终执行回发,这意味着请求将返回到原始页面。这就是您的方法第二次执行的原因。如果你不想这样做,你可以配置PrettyFaces跳过页面操作方法调用回发:

@URLAction(mappingId="abc", onPostback=false) 
private String hello(){ 
    return null; 
}