Основная проблема JSF: javax.servlet.ServletException - PullRequest
0 голосов
/ 20 августа 2009

Пояснение:

У меня есть ссылка на команду JSF, которая устанавливает элемент в компоненте поддержки, однако при настройке члена компонента в программе с помощью setPropertyActionListener я получаю ошибку тега не распознана.

Проект создается и развертывается без проблем. Отображается страница по умолчанию, а затем в запросе страницы выдается ошибка с помощью setPropertyActionListener.

Другие коллеги могут нормально запускать приложение, используя ту же настройку. Я предполагаю, что мне не хватает библиотеки или есть проблема с правами доступа к некоторому каталогу или файлу.

Настройка:

  • Netbeans 6.7.1
  • Apache Tomcat 6.0.18
  • JDK 1.6
  • JavaServer Faces 1.2
  • Facelets

Код:

<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
  • эль-api.jar
  • jasper.jar
  • MySQL-разъем-Java-5.1.7-bin.jar
  • кот-coyote.jar
  • tomcat-i18n-fr.jar
  • Catalina-подпапке
  • Catalina-tribes.jar
  • jasper-jdt.jar
  • кот-dbcp.jar
  • кот-i18n-ja.jar
  • Catalina-ha.jar
  • Обще-каротаж 1.1.1.jar
  • яшма-el.jar
  • JSP-api.jar
  • servlet-api.jar
  • кот-i18n-es.jar

Библиотеки в проекте:

  • activation.jar
  • Обще-digester.jar
  • ezmorph-1.0.6.jar
  • jstl.jar
  • RichFaces-щ-3.3.0.GA.jar * * 1 101
  • Викисклада BeanUtils-1.8.0.jar
  • Обще-Ланг-2.4.jar
  • JSF-api.jar
  • jxl.jar
  • standard.jar
  • Обще-beanutils.jar
  • Обще-каротаж 1.1.1.jar
  • JSF-facelets.jar
  • mail.jar
  • Викисклад коллекция-3.2.jar
  • Обще-logging.jar
  • JSF-impl.jar
  • RichFaces-апи-3.3.0.GA.jar
  • Обще-collections.jar
  • эль-осущ-1.0.jar
  • JSON-Lib-2.2.3-jdk15.jar
  • RichFaces-осущ-3.3.0.GA.jar

Ответы [ 2 ]

1 голос
/ 20 августа 2009

Вы не указали, какую версию JSF вы используете в своем проекте.

Действительно, тег setPropertyActionListener был включен в JSF 1.2 и недоступен для проекта JSF 1.1.

Это может объяснить проблему, с которой вы столкнулись ...

0 голосов
/ 22 августа 2009

[Изменить]

Эта проблема всплыла, однако, я думаю, что нашел решение. Я думаю, что-то не так с моим файлом jsf-facelets.jar.

Я скачал самую новую версию и добавил ее в проект. Кажется, теперь все супер.

2010.01.26


Я не смог проверить точный конфликт, поэтому я сделал новую установку.

Я нахожусь на Ubuntu, работающем под управлением Netbeans 6.7, который был установлен вручную с веб-сайта Netbeans. Apache Tomcat был установлен вместе с 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

Как только все три каталога были удалены, я заново установил и внес несколько небольших изменений в нашу локальную настройку и BINGO.

...