primefaces commandbutton更新属性在wildfly 15中仅起作用一次
我有一个简单的xhtml,它只包含一个commandbutton。当您按下那个commandButton时,它在一个支持bean中调用一个打印字符串的方法,仅此而已 问题是commandbutton只在您第一次按下它时调用支持bean的方法primefaces commandbutton更新属性在wildfly 15中仅起作用一次,primefaces,jsf-2,wildfly,Primefaces,Jsf 2,Wildfly,我有一个简单的xhtml,它只包含一个commandbutton。当您按下那个commandButton时,它在一个支持bean中调用一个打印字符串的方法,仅此而已 问题是commandbutton只在您第一次按下它时调用支持bean的方法 服务器日志或chrome控制台中未显示任何错误 同样的例子在tomcat上非常有效 如果我删除update=“form\u test” xhtml: <?xml version="1.0" encoding="UTF-8"?> <!DO
- 服务器日志或chrome控制台中未显示任何错误
- 同样的例子在tomcat上非常有效
- 如果我删除
update=“form\u test”
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:h="http://java.sun.com/jsf/html"
xmlns:p="http://primefaces.org/ui">
<h:head>
<title>test</title>
</h:head>
<h:body style="background-color:black;" >
<h:form id="form_test">
<p:commandButton
update="form_test"
value="test agogo"
action="#{testBean.test}"/>
</h:form>
</h:body>
</html>
@ManagedBean
@SessionScoped
public class TestBean {
public String test() {
System.out.println("--- you pressed a button");
return null;
}
}
升级到pf7.0似乎可以解决这个问题。但是,此解决方案可能不适合实际项目,因为以前版本中的许多接口会发生变化,您可能需要进行大量代码重构。从PrimeFaces 1.0升级到7.0是实际项目的最佳解决方案。还有一个
h:commandButton
,里面有f:ajax
,它能工作吗?(我希望是非主题)您的JSF名称空间是“错误的”或JSF2.3,请更新它们。您的bean注释也不推荐;-)因此,升级更多的东西是最好的,如果你在tomcat上部署100%相同的项目,你要么在war中有JSF实现,要么在其他地方配置它。这对于现实生活中的项目来说是非常重要的信息。您是否尝试过在开发模式下运行?