首页 > 解决方案 > 将数据表变量作为参数传递给复合 bean 方法

问题描述

Websphere 5 Java 6 Jsf 2.x Mojarra 2.3.2

我需要将primefaces“var”数据表属性作为方法参数传递给组合。

xhtml

 <p:dataTable id="dtPub" 
            var="pub" 
            widgetVar="pub"
            value="#{pubMB.pubList}">
 <p:column....>
 <p:commandLink onclick="PF('confirmationRev').show()" >
   ....
   ....
   <p:/datatable> 


    <services:genericConfirmDialog
       widgetvar="confirmationRev"
       actionbeanbotao1="#{pubMB.delete()}"
       varDatatable="pub"/>

合成的 :

<composite:interface>
             <composite:attribute name="varDatatable" />
             <composite:attribute name="actionbeanbotao1" method-signature="java.lang.String action()" />

<p:commandButton id="confirm" value="#{cc.attrs.labelbotao1}"  
    action="#{cc.attrs.actionbeanbotao1(#{cc.attrs.varDatatable})}" />

action="#{cc.attrs.actionbeanbotao1(#{cc.attrs.varDatatable})}" 无法将参数添加到指向 cc.attrs 的 MethodExpression

这个想法是将primefaces数据表var作为参数传递给然后bean delete #{pubMB.delete(xxxxxx)}我在没有复合的情况下进行了测试,并且工作正常。它传递给 bean 方法删除 var 并删除记录。

标签: jsfprimefacescomposite

解决方案


action="#{cc.attrs.actionbeanbotao1(#{cc.attrs.varDatatable})}" />

你试过这种方式吗?


推荐阅读