Jsf 使用showcase呈现Jboss错误选取列表

Jsf 使用showcase呈现Jboss错误选取列表,jsf,primefaces,jboss-eap-7,picklist,Jsf,Primefaces,Jboss Eap 7,Picklist,相关链接: 这个问题与这个链接类似,因为当我调试picklistRender时,我得到了之前链接中显示的相同错误,相同的语法,但我正在阅读所有与问题相关的内容,Thomas Andraschko sugguest是mojarra的问题,但我试着用myfaces-version-22和myfaces-version-23进行测试,我面临同样的问题 我试图找出解决我的例子的方法,比如showcase p:picklist,但不是worls,正如文档所说,我尝试了几个选项,比如 - don't u

相关链接:

这个问题与这个链接类似,因为当我调试picklistRender时,我得到了之前链接中显示的相同错误,相同的语法,但我正在阅读所有与问题相关的内容,Thomas Andraschko sugguest是mojarra的问题,但我试着用myfaces-version-22和myfaces-version-23进行测试,我面临同样的问题


我试图找出解决我的例子的方法,比如showcase p:picklist,但不是worls,正如文档所说,我尝试了几个选项,比如

 - don't use mojarra,use myfaces
 - change primefaces version 7.0 to 8.0.RC1
 - put a custom converter
 -jboss-deployment-structure.xml (disables packages from jboss)
错误何时发生? -加载页 为什么我要使用转换器? -是我试图解决问题的一个选项,但是,ussue之前提出,我使用或不使用转换器进行测试,并发生相同的错误

环境

-Jboos EAP 7.2 
- repo https://github.com/Qleoz12/Primefaces-Mydemo
但我总是有这个错误

java.lang.NullPointerException

viewId=/components/usingCompositeComponent.xhtml
location=I:\developer\Fado\Servidores\jboss-eap-7.2\standalone\deployments\Primefaces-        
Mydemo.war\components\usingCompositeComponent.xhtml
phaseId=RENDER_RESPONSE(6)

Caused by:
java.lang.NullPointerException
at org.primefaces.component.picklist.PickListRenderer.encodeMarkup(PickListRenderer.java:103)
xhtml


  • 问题: 对于PickListRenderer,NPE在第78行,然后在PickListRenderer内的第128行:

    encodeList(context, pickList, clientId + "_target", PickList.TARGET_CLASS, model.getTarget(),
            pickList.getFacet("targetCaption"), pickList.isShowTargetFilter(), false); 
    
    发行

  • 与模型相关的NPE变量在encodeMarkup中始终为null,之后使用此模型null调用encodeList

    DualListModel model = getModelValueToRender(context, pickList);
    
    堆栈跟踪


  • 这两个问题是相关的,因为在另一个问题中,他们可以解决问题,但我遵循他们的所有东西,但我不明白,是的,这两个问题是相似的,他们有一些小不同,但对我来说是相同的场景

  • 7:如果与mojarra无关,请移除mojarra标签。8:在jsf开发模式下运行jsf应用程序

    是的,我正在尝试解决这个错误—使用mojarra测试或测试myfaces—我没有删除mojarra的标记。

    问题

    -在xhtml上修复bean的名称该bean的名称通常以小写字母开头

    value="#{CompositeComponent.cities}"
    
    对此

    value="#{compositeComponent.cities}"
    
    -对于字符串,请删除转换器,但对于自定义对象,您必须编写自己的转换器实现,我在中的repo中添加了一个示例

    我测试了两种处理JSF连接和其他项目的方法 您必须选择一个,不要同时使用两个,否则在部署阶段时会出现错误

            <!-- javax.* APIs -->
        <!-- old way -->
        <dependency>
        <groupId>javax</groupId>
        <artifactId>javaee-web-api</artifactId>
        <version>8.0</version>
        <scope>provided</scope>
        </dependency>
        <!-- end old way -->
        <!-- new way -->
        <dependency>
            <groupId>org.apache.geronimo.specs</groupId>
            <artifactId>geronimo-atinject_1.0_spec</artifactId>
            <version>1.0</version>
        </dependency>
        <dependency>
            <groupId>org.apache.geronimo.specs</groupId>
            <artifactId>geronimo-jcdi_2.0_spec</artifactId>
            <version>1.0.1</version>
        </dependency>
        <dependency>
            <groupId>org.apache.geronimo.specs</groupId>
            <artifactId>geronimo-interceptor_1.2_spec</artifactId>
            <version>1.0</version>
        </dependency>
        <dependency>
            <groupId>org.apache.geronimo.specs</groupId>
            <artifactId>geronimo-annotation_1.3_spec</artifactId>
            <version>1.0</version>
        </dependency>
    
    
    爪哇
    javaeewebapi
    8
    假如
    org.apache.geronimo.specs
    geronimo-atinject_1.0_规范
    1
    org.apache.geronimo.specs
    geronimo-jcdi_2.0_规范
    1.0.1
    org.apache.geronimo.specs
    geronimo-interceptor_1.2_规范
    1
    org.apache.geronimo.specs
    geronimo-annotation_1.3_规范
    1
    
    @Kukeltje是的,我有,我只是为测试选择列表创建了一个简单的primefaces项目,并不能解决您在相关链接中发现的所有问题……我的环境是我创建的回购的链接,我提出这个问题是因为其他用户建议创建一个新的问题,是的,与相关链接非常相似,但我试图在链接帖子中发表评论,但我的声誉低于50分,因为我不能,我不使用OmniFace。我不明白这是我测试情况的最低示例,A应该在问题中,而不是在github或其他外部系统中(它可能会消失在那里)。也读。github中有太多的代码示例1:xhtml代码不完整(没有结束标记)2:为什么要使用转换器,您有简单的字符串3:如果相关,转换器的代码在哪里?回答问题很好,您解决了它。您最终是否尝试过在de开发模式下运行?因为这会给你这个根本原因的直接指示。而你的“新方式”是错误的。如果您正在运行JavaEE服务器,则根本不需要以非提供的方式向项目中添加规范(api)JAR。“老办法”是好办法。这些JAR不是关于JSF注释的,而是关于注入(CDI注释)。你是在使用jBoss 7.x(它不是一个符合java ee规范的服务器)还是jBoss 7.x EAP?哦,你的问题与我们前面提到的“另一个”毫无关系。我使用的是jBoss EAP 7.2
    value="#{CompositeComponent.cities}"
    
    value="#{compositeComponent.cities}"
    
            <!-- javax.* APIs -->
        <!-- old way -->
        <dependency>
        <groupId>javax</groupId>
        <artifactId>javaee-web-api</artifactId>
        <version>8.0</version>
        <scope>provided</scope>
        </dependency>
        <!-- end old way -->
        <!-- new way -->
        <dependency>
            <groupId>org.apache.geronimo.specs</groupId>
            <artifactId>geronimo-atinject_1.0_spec</artifactId>
            <version>1.0</version>
        </dependency>
        <dependency>
            <groupId>org.apache.geronimo.specs</groupId>
            <artifactId>geronimo-jcdi_2.0_spec</artifactId>
            <version>1.0.1</version>
        </dependency>
        <dependency>
            <groupId>org.apache.geronimo.specs</groupId>
            <artifactId>geronimo-interceptor_1.2_spec</artifactId>
            <version>1.0</version>
        </dependency>
        <dependency>
            <groupId>org.apache.geronimo.specs</groupId>
            <artifactId>geronimo-annotation_1.3_spec</artifactId>
            <version>1.0</version>
        </dependency>