代码之家  ›  专栏  ›  技术社区  ›  Berek Bryan

JSF核心问题:javax.servlet.servletexception

  •  0
  • Berek Bryan  · 技术社区  · 16 年前

    说明:

    我有一个JSF命令链接,它在支持bean中设置了一个成员,但是,当使用setPropertyActionListener设置支持bean成员时,我会得到一个无法识别的标记错误。

    项目建设和部署没有问题。将显示默认页面,然后使用setPropertyActionListener在页面请求上引发错误。

    其他同事可以使用相同的设置精细地运行应用程序。我猜我缺少一个库,或者某个目录或文件存在权限问题。

    设置:

    • 网豆6.7.1
    • 阿帕奇Tomcat 6.0.18
    • JDK 1.6
    • JavaServer面1.2
    • 小脸

    代码:

    <html xmlns="http://www.w3.org/1999/xhtml"
          xmlns:ui="http://java.sun.com/jsf/facelets"
          xmlns:h="http://java.sun.com/jsf/html"
          xmlns:f="http://java.sun.com/jsf/core"
          xmlns:rich="http://richfaces.org/rich">
    
        <ui:composition template="/template.xhtml">
    
            <ui:define name="body">      
                <h:commandLink value="view" action="viewer">
                    <f:setPropertyActionListener target="#{ViewerBean.ticket_id}" value="#{ticket.ticket_id}" />
                </h:commandLink>
            </ui:define>
        </ui:composition> 
    </html>
    

    Stacktrace: complete trace

    javax.servlet.servletexception:/portal/index.xhtml@65125标记库支持命名空间: http://java.sun.com/jsf/core ,但没有为名称:setPropertyActionListener定义标记

    com.sun.facelets.tag.tagexception:/portal/index.xhtml@65125标记库支持命名空间: http://java.sun.com/jsf/core ,但没有为名称:setPropertyActionListener定义标记

    Apache中的库:

    • 注释-api.jar
    • 加泰罗尼亚罐
    • EL-API.JAR
    • 茉莉罐
    • mysql-connector-java-5.1.7-bin.jar
    • 汤猫-郊狼.jar
    • Tomcat-i18n-fr.jar.罐
    • 卡特琳娜-蚂蚁.jar
    • 卡特琳娜部落.jar
    • Jasper-Jd.Jar
    • TAMCAT-DCPC.JAR
    • Tomcat-i18n-ja.罐
    • 卡塔琳娜哈尔
    • commons-logging-1.1.1.jar
    • 茉莉罐
    • JSP-API.JAR
    • Servel-API.JAR
    • tomcat-i18n-es.jar.罐

    项目中的库:

    • 活化罐
    • 公用消化罐
    • ezmorp-1.0.6.jar型
    • 杰斯罐
    • richfaces-ui-3.3.0.ga.jar版本
    • commons-beanutils-1.8.0.jar
    • commons-lang-2.4.jar(通用语言-2.4.jar)
    • JSF-API.JAR
    • JXL缸
    • 标准罐
    • commons-beanutils.jar文件
    • commons-logging-1.1.1.jar
    • jsf-facelets.jar文件
    • 邮筒
    • commons-collections-3.2.jar
    • commons-logging.jar
    • jsf-impl.jar文件
    • richfaces-api-3.3.0.ga.jar版本
    • commons-collections.jar
    • EL PIM-1.0.JAR
    • json-lib-2.2.3-jdk15.jar
    • richfaces-impl-3.3.0.ga.jar版本
    2 回复  |  直到 16 年前
        1
  •  1
  •   Romain Linsolas    16 年前

    您不能精确地确定您在项目中使用的JSF的版本。

    的确, setPropertyActionListener 标记已包含在JSF1.2中,不能用于JSF1.1项目。

    这可以解释你遇到的问题…

        2
  •  0
  •   Berek Bryan    16 年前

    [编辑]

    然而,这个问题又重新出现了,我认为我找到了解决办法。我想我的jsf-facelets.jar文件有问题。

    我下载了最新版本并将其添加到项目中。现在一切似乎都很好。

    2010年1月26日


    我无法验证到底是什么冲突,所以我重新安装了一个。

    我在一个运行NetBeans 6.7的Ubuntu盒子上,它是从NetBeans网站手动安装的。ApacheTomcat与IDE一起安装。

    首先,我删除了netbeans和tomcat的可见目录。我真的把它们移到了垃圾桶里,以防它们出了大问题。

    $ mv /home/bbryan/apps/netbeans6.7 /home/bbryan/.local/share/Trash
    $ mv /home/bbryan/apps/apache-tomcat-6.0.18 /home/bbryan/.local/share/Trash
    

    删除这两个目录后,我删除了隐藏的netbeans目录。这一点很重要;如果不安装NetBeans和Tomcat,下一次安装的设置将与以前的设置相同,无论好坏。

    $ mv /home/bbryan/.netbeans /home/bbryan/.local/share/Trash
    

    三个目录都被删除后,我重新安装了一个目录,并对我们的本地设置和宾果游戏做了一些小的调整。