我的p:dataTable
. 首先,当我尝试使用链接调用时h:link
,f:param
链接总是发送相同的 ID。始终是第一个条目的 id。更大的问题是当我按下命令按钮时,h:link
虽然这种行为完全出乎意料,但它会被调用。特别是没有正确的参数。这是一个错误还是我做错了什么?当我删除h:link
一切都按预期工作。我将不胜感激在这件事上的任何帮助
我的 Primefaces 版本是 3.5,我在 Tomcat 7 上使用 Liferay 6.1。使用最新的 FacesBridge
<h:form id="serviceForm">
<p:dataTable id="newServicesTable" var="service" value="#{cloudServicesBean.newServices}" rowKey="service.serviceId" selection="#{cloudServicesBean.selectedService}">
<p:column headerText="Servicename">
<h:link outcome="/views/cloudservice/overview.xhtml" includeViewParams="true" value="#{service.serviceName}">
<h:outputText value="#{service.serviceId}"/>
<f:param name="selectedServiceId" value="#{service.serviceId}" />
</h:link>
</p:column>
<p:column headerText="Provider">
<h:outputText value="#{adminBean.getOrganizationNameForId(service.providerId)}" />
</p:column>
<p:column headerText="Datum">
<h:outputText value="#{service.createDate}" />
</p:column>
<p:column headerText="Aktionen" rendered="#{adminBean.isUserAdministrator()}">
<p:commandButton icon="ui-icon-check" action="#{cloudServicesBean.setServiceApproved}" update=":serviceForm">
<f:setPropertyActionListener value="#{service}" target="#{cloudServicesBean.selectedService}" />
</p:commandButton>
</p:column>
</p:dataTable>