Java p:commandLink操作不会触发
p:commandLink操作不会在我的视图bean上触发。我尝试了很多事情,但没有成功:应该有一个简单的问题。如果你能帮助我,我将不胜感激Java p:commandLink操作不会触发,java,jsf,jsf-2,primefaces,commandlink,Java,Jsf,Jsf 2,Primefaces,Commandlink,p:commandLink操作不会在我的视图bean上触发。我尝试了很多事情,但没有成功:应该有一个简单的问题。如果你能帮助我,我将不胜感激 <p:dataTable var="message" value="#{messagesView.dataModel}" id="messageDt" emptyMessage="#{msg['kayitBulunamadi']}" lazy = "true" paginator="true" rows="10"
<p:dataTable var="message" value="#{messagesView.dataModel}"
id="messageDt" emptyMessage="#{msg['kayitBulunamadi']}"
lazy = "true" paginator="true" rows="10"
paginatorTemplate="{CurrentPageReport} {FirstPageLink} {PreviousPageLink} {PageLinks} {NextPageLink} {LastPageLink} {RowsPerPageDropdown}"
rowsPerPageTemplate="10,15,30" currentPageReportTemplate="{currentPage} / {totalPages}">
<p:column styleClass="min-image">
<f:facet name="header">
<h:outputText value="Durum" />
</f:facet>
<p:commandLink ajax="true" process="@this"
action="#{messagesView.selectedMessages(message)}"
oncomplete="PF('msjDialog').show();">
<!--<p:graphicImage value="#{message.mesajDurumu=='NEW'?'/images/DealerNewMessages.png':'/images/DealerReadMessage.png'}" style="width: 60px; height: 60px;" />-->
<p:graphicImage rendered="#{message.mesajDurumu=='REP'}"
value="/images/email-send.png" style="width: 30px; height: 30px;" />
<p:graphicImage rendered="#{message.mesajDurumu=='NEW'}"
value="/images/DealerNewMessages.png"
style="width: 30px; height: 30px;" />
<p:graphicImage
rendered="#{message.mesajDurumu!='REP' and message.mesajDurumu!='NEW'}"
value="/images/DealerReadMessage.png"
style="width: 30px; height: 30px;" />
</p:commandLink>
</p:column>
您是否尝试使用:
actionListener="#{messagesView.selectedMessages(message)}"
而不是
action="#{messagesView.selectedMessages(message)}"
也许可以试试这个:
<p:commandLink ajax="true" process="@this"
action="#{messagesView.selectedMessages}"
oncomplete="PF('msjDialog').show();">
MessagesView Bean代码:
public void selectedMessages() {
SELECTedMessage = getMessage();
oncekiMesajiAl();
UpdateMessageStatusRead(SELECTedMessage);
}
这就是通过元素的值在bean上设置变量。然而,您需要使用getter和setter使message成为bean中的字段变量;否则这将无法工作。必须嵌套在中才能正常工作。您确定“message”是DealMessages的实例吗?另外,请尝试删除graphicImage标记并检查其是否有效。也许在某个地方你得到了一个例外。它在一个h:表单中吗?请发布你的完整xhtml页面。
... value = "#{messagesView.message} ....
public void selectedMessages() {
SELECTedMessage = getMessage();
oncekiMesajiAl();
UpdateMessageStatusRead(SELECTedMessage);
}