Абсолютный uri: http://java.sun.com/jsf/html не может быть разрешен при запуске приложения JSF 1.0 в Wildfly 8.1.

Я работаю над обновлением одного из своих приложений с JSF 1.0 до 2.0. Он работает на JBoss 4.0.3SP1, и я пытаюсь запустить его на финальной версии WildFly 8.1. После некоторых усилий мне удалось скомпилировать и развернуть приложение в WildFly, но я получил эту ошибку при доступе к файлу .jsp.

2015-07-09 07:40:08,600 ERROR [io.undertow.request] (default task-2) UT005022: Exception generating error page /errorpages/error.faces: org.apache.jasper.Jasper
Exception: JBWEB004113: **The absolute uri: http://java.sun.com/jsf/html cannot be resolved in either web.xml or the jar files deployed with this application** at org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:53) [jastow-1.0.0.Final.jar:1.0.0.Final]
        at org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:147) [jastow-1.0.0.Final.jar:1.0.0.Final]

Я прочитал следующие статьи, но до сих пор не могу решить проблему.

Я также включил org.jboss.jbossfaces.WAR_BUNDLES_JSF_IMPL в web.xml и отключил «сварку» в WildFly и поместил следующие библиотеки/файлы в <EAR>/lib, <WAR>/WEB-INF/lib.

  • jsf-api.jar
  • jsf-импл.jar
  • jstl.jar
  • стандарт.jar
  • html_basic.tld, jsf_core.tld

И для JSTL я пробовал разные URL-адреса, например:

<%@ taglib uri="http://java.sun.com/jsf/html" prefix="h"%>

or

<%@ taglib uri="http://java.sun.com/jsp/jstl/html" prefix="h"%>

или поместите URL-адрес в <html> вместо использования <%@taglib>.

Тем не менее, проблема не может быть решена вышеуказанными шагами.

Может у кого была такая же проблема, поделитесь опытом? Я хотел бы узнать, могу ли я запустить код JSF 1.0 на WildFly?

Заранее спасибо!


person user2280292    schedule 09.07.2015    source источник
comment
Я бы не стал тратить на это время. Лучше потратьте время на то, чтобы ваше веб-приложение работало на WF8 в стандартной комплектации, не предоставляя никаких JAR-файлов Java EE через веб-приложение. JSF 2.2 обратно совместим с JSP в стиле JSF 1.x. В долгосрочной перспективе это будет стоить меньше времени, чем попытка понизить версию WF8 для использования JSF 1.x.   -  person BalusC    schedule 09.07.2015
comment
@BalusC: если я правильно понял, они также обновляются до версии 2.0... Которая, в свою очередь, по-прежнему понижает версию WF 8.   -  person Kukeltje    schedule 09.07.2015
comment
@Kukeltje: Название действительно противоречит телу. Я просто предположил, что это невнимательность, и проигнорировал заголовок. Мой комментарий основан на теле (OP фактически пытался отправить JAR-файлы JSF 1.x вместе с веб-приложением (и даже JAR-файлы JSTL и свободный файл TLD: X ни один из них не нужен))   -  person BalusC    schedule 09.07.2015
comment
@BalusC: ‹nitpick_mode›из тела: Я работаю над обновлением одного из своих приложений с JSF 1.0 до 2.0. ‹/nitpick_mode› ;-) но вы правы (как обычно)   -  person Kukeltje    schedule 09.07.2015
comment
Спасибо за оба ваших ответа. Изначально я планировал делать небольшими шагами, чтобы избежать переписывания целиком. Моим первым шагом было перейти на Wildfly. Однако, поскольку оно не поставляется с возможностями JSF 1.x, мое приложение не работало должным образом на Wildfly даже после того, как я устранил эти проблемы с компиляцией и упаковкой.   -  person user2280292    schedule 09.07.2015
comment
У вас будет больше шансов на успех, если вы зададите вопрос конкретно о той проблеме, которую вы обобщили как неработающую.   -  person BalusC    schedule 09.07.2015
comment
@BalusC: мне пришлось исключить сварку в Wildfly и указать для org.jboss.jbossfaces.WAR_BUNDLES_JSF_IMPL значение true в web.xml, поэтому Wildfly может поддерживать JSF 1.x. Теперь я застрял на этой абсолютной ошибке URL. Полная ошибка: UT005022: страница ошибки генерации исключения /errorpages/error.faces: org.apache.jasper.Jasper Exception: JBWEB004113: абсолютный uri: java.sun.com/jsf/html не может быть разрешен ни в web.xml, ни в файлах jar, развернутых с этим приложением. Я подозреваю, что это вызвано конфигурацией, связанной с загрузкой классов. Еще раз спасибо!   -  person user2280292    schedule 09.07.2015
comment
Извините, я не это имел в виду. Просто без связывания каких-либо из этих JAR-файлов в webapp. Итак, у вас есть ошибки компиляции? Какие именно? API JSF 2.x полностью обратно совместим с API JSF 1.x.   -  person BalusC    schedule 09.07.2015
comment
Я взял файлы jsf*.jar, jstl.jar и jsp-api.jar и собрал приложение, но во время развертывания на Wildfly возникли некоторые ошибки. Одна ошибка: вызвано: java.lang.ClassNotFoundException: javax.faces.model.SelectItem from [Module deployment.poweronremotemaps.dev.ear.poremoteweb.war:main from Service Module Loader] в org.jboss.modules.ModuleClassLoader .findClass(ModuleClassLoader.java: 213) Спасибо!   -  person user2280292    schedule 09.07.2015
comment
Как ни странно, я нашел SelectItem в jsf-api в Wildfly. И я смог развернуть и запустить приложение JSF 1.0 hello world на Wildfly. Я приму ваше предложение начать обновление JSF. Спасибо!   -  person user2280292    schedule 10.07.2015