Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jsf-2/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jsf RichFaces rich:CollableSubtable未通过ajax加载结果_Jsf_Jsf 2_Richfaces - Fatal编程技术网

Jsf RichFaces rich:CollableSubtable未通过ajax加载结果

Jsf RichFaces rich:CollableSubtable未通过ajax加载结果,jsf,jsf-2,richfaces,Jsf,Jsf 2,Richfaces,我试图通过一个参数化的ajax方法调用来填充rich:collapsalbeSubTable 其目的是显示客户列表,当选择客户时,必须进行ajax调用以加载合同列表以填充子表 <rich:dataTable value="#{searchController.results}" var="customer"> <rich:column colspan="2"> <rich:collapsibleSubTableToggler for="co

我试图通过一个参数化的ajax方法调用来填充rich:collapsalbeSubTable

其目的是显示客户列表,当选择客户时,必须进行ajax调用以加载合同列表以填充子表

<rich:dataTable value="#{searchController.results}" var="customer">

    <rich:column colspan="2">
        <rich:collapsibleSubTableToggler for="contractSubTable" />
        <h:outputText value="#{customer.name}" />
    </rich:column>

    <rich:collapsibleSubTable
        value="#{searchController.getFirstTenContracts(customer.partnerId)}"
        var="contract" id="contractSubTable" expanded="false"
        expandMode="ajax">

        <rich:column>
            <h:outputText value="#{contract.contractId}" />
        </rich:column>
        <rich:column>
            <h:outputText value="#{contract.contractDesc}" />
        </rich:column>

    </rich:collapsibleSubTable>

</rich:dataTable>

控制器方法的签名为:

public List<Contract> getFirstTenContracts(Object partnerId)
public List getFirstTenContracts(对象partnerId)

如果我的方法有问题,请有人帮我解决这个问题或给我指出正确的方向。

java.lang.NoSuchMethodError揭示了问题:

您的方法签名有一个类型为
Object
的参数,您传入的是我假定的
int
。即使在普通的旧java中,这也会导致编译失败


只需更改方法签名,您就可以了

这是所有stacktrace吗?抱歉,应该立即发布整个stacktrace。它是长数据类型,但我已经尝试了很长时间,如果您可以告诉Object所有的结果都相同…@dngfng,那么这很可能是因为您的EL版本不支持采用参数的方法表达式类型。您使用的是什么应用服务器和JSF/EL发行版?这个基于参数的EL是在2.2中引入的。我们在Tomcat 6上使用带JSF 2.1的EL api 2.2,我首先检查的是EL api。@dngfng Tomcat 6附带jsp-api.jar(以及其他与jsp 2.1相关的jar)。因此,请确保您的app server安装中没有任何2.1相关的JAR,并重新启动您的app server。
public List<Contract> getFirstTenContracts(Object partnerId)