如何将f:ajax标记添加到h:link?
我有这个:如何将f:ajax标记添加到h:link?,ajax,jsf,Ajax,Jsf,我有这个: <h:link value="Sign In" outcome="login.jsp" /> 知道我做错了什么吗?谢谢 这个确实不能以这种方式工作。改用 <h:form> <h:commandLink value="Sign In" action="login.jsp?faces-redirect=true" /> <f:ajax listener="#{loginHandler.dismissSignUpDialo
<h:link value="Sign In" outcome="login.jsp" />
知道我做错了什么吗?谢谢 这个
确实不能以这种方式工作。改用
<h:form>
<h:commandLink value="Sign In" action="login.jsp?faces-redirect=true" />
<f:ajax listener="#{loginHandler.dismissSignUpDialog}" />
</h:commandLink>
</h:form>
顺便问一下,为什么您仍然使用JSP而不是Facelets?我认为您最好使用一个
,其操作设置为您的方法,然后更改该方法以返回与您的结果相对应的字符串。即:
<h:commandLink value="Sign In" action="#{loginHandler.dismissSignUpdialog}" />
谢谢这就是原因。我有两个页面login.jsp和loginError.jsp,它们被配置为web.xml中的中的两个页面。我的应用程序中的所有页面都是Facelets/XHTML,但这两个页面都是JSP——最初是因为我的理解是,我不能将“JSF”页面用于登录页面。这方面有什么建议吗?为什么没有?您可以自由地在Facelet文件中编写简单的HTML。您甚至可以在一个简单的HTML GET表单中使用JSF组件。请参见代码中有一个小的输入错误,因此不允许我编辑小于6个字符的内容。定义动作后,h:commandLink有一个结束标记;斜线应该被删除。顺便说一句,巴卢斯岩石!:)
<h:form>
<h:commandLink value="Sign In" action="login.jsp?faces-redirect=true" />
<f:ajax listener="#{loginHandler.dismissSignUpDialog}" />
</h:commandLink>
</h:form>
<h:commandLink value="Sign In" action="#{loginHandler.dismissSignUpdialog}" />
public String dismissSignUpDialog() {
setUpDialogDismissed(true);
return "login";
}