2013-11-08 2 views
0

Мы пытаемся использовать основное приложение для доступа к общим файлам Facelets из общей библиотеки, развернутой в WebLogic.Доступ к файлам Facelets из общей библиотеки в WebLogic

общих файлов Facelets приведены ниже пути в общей библиотеке:

META-INF->resources->common-ac->HelloWorld.xhtml

Мы доступ к этому на главной странице приложения, как:

<ui:include src="/common-ac/HelloWorld.xhtml" /> 

Однако это не сработало, он бросает следующее:

javax.faces.view.facelets.TagAttributeException: /....public/Home.xhtml @47,50 <ui:include src="/common-ac/HelloWorld.xhtml"> Invalid path : /common-ac/HelloWorld.xhtml 
    at com.sun.faces.facelets.tag.ui.IncludeHandler.apply(IncludeHandler.java:125) 

Как это вызвано и как я могу его решить?

+0

Является ли это совместимым с Servlet 3.0 webapp? Проблема не предполагает, но вы никогда не знаете с WebLogic. – BalusC

+0

- Наша сеть .xml определяется как 2.4, но мы используем JSF2.1 – user684434

ответ

0

Использование JAR /META-INF/resources в качестве общего ресурса webapp поддерживается только с сервлета 3.0. Поэтому до тех пор, пока вы развертываете свой webapp в контейнере, совместимом с Servlet 3.0 (например, WebLogic 12), с web.xml, который объявляется совместимым с сервлет 3.0 спецификацией, тогда он должен просто обработать окно.

Если вы, тем не менее, развертываете ваш webapp в контейнере без сервлета 3.0 (например, WebLogic 11 или старше) или каким-то образом не можете объявить свою спецификацию Servlet 3.0 web.xml, или целевой контейнер предоставляет ошибку в отношении ресурса разрешая из JAR (например, ранние версии JBoss 6), тогда вам нужно будет создать собственный обработчик ресурсов Facelets, как описано в этом ответе: How to create a modular JSF 2.0 application?

Смежные вопросы