繁体   English   中英

JSF核心问题:javax.servlet.ServletException

[英]JSF Core issue: javax.servlet.ServletException

说明:

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

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

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

设定:

  • Netbeans 6.7.1
  • Apache Tomcat 6.0.18
  • JDK 1.6
  • JavaServer Faces 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: 完整跟踪

javax.servlet.ServletException:/portal/index.xhtml @ 65,125标记库支持名称空间: http : //java.sun.com/jsf/core ,但未为名称定义标记:setPropertyActionListener

com.sun.facelets.tag.TagException:/portal/index.xhtml @ 65,125标记库支持名称空间: http : //java.sun.com/jsf/core ,但未为名称定义标记:setPropertyActionListener

Apache中的库:

  • 注解-api.jar
  • catalina.jar
  • el-api.jar
  • jasper.jar
  • mysql-connector-java-5.1.7-bin.jar
  • tomcat-土狼.jar
  • tomcat-i18n-fr.jar
  • 卡塔琳娜·安东尼
  • 卡塔利娜部落
  • jasper-jdt.jar
  • tomcat-dbcp.jar
  • tomcat-i18n-ja.jar
  • 卡塔利娜哈
  • commons-logging-1.1.1.jar
  • 贾斯珀·埃尔·贾尔
  • jsp-api.jar
  • servlet-api.jar
  • tomcat-i18n-es.jar

项目中的图书馆:

  • activation.jar
  • commons-digester.jar
  • ezmorph-1.0.6.jar
  • jstl.jar
  • richfaces-ui-3.3.0.GA.jar
  • commons-beanutils-1.8.0.jar
  • commons-lang-2.4.jar
  • jsf-api.jar
  • jxl.jar
  • standard.jar
  • commons-beanutils.jar
  • commons-logging-1.1.1.jar
  • jsf-facelets.jar
  • mail.jar
  • commons-collections-3.2.jar
  • commons-logging.jar
  • jsf-impl.jar
  • richfaces-api-3.3.0.GA.jar
  • commons-collections.jar
  • el-impl-1.0.jar
  • json-lib-2.2.3-jdk15.jar
  • richfaces-impl-3.3.0.GA.jar

您无法确定项目中使用的JSF版本。

实际上, setPropertyActionListener标记已包含在JSF 1.2中,并且不适用于JSF 1.1项目。

那可以解释您遇到的问题...

[编辑]

这个问题已经浮出水面,但是,我想我已经找到了解决方案。 我认为jsf-facelets.jar文件出了点​​问题。

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

2010.01.26


我无法验证确切的冲突是什么,所以我进行了全新安装。

我在运行Netbeans 6.7的Ubuntu机器上,该机器是从Netbeans网站手动安装的。 IDE已安装了Apache Tomcat。

首先,我删除了Netbeans和Tomcat的可见目录。 我实际上将它们移到了“废纸rash”,以防万一某些地方出了错。

$ 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

删除所有三个目录后,我将进行全新安装,并对本地设置和BINGO进行了一些小的调整。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM