Как настроить приложение J2EE (ear) для использования общих библиотек JSF и JSTL в weblogic 11g?

Я пытаюсь развернуть приложение J2EE в Weblogic. Состоит из веб-модуля и ejb-модуля. Мой веб-модуль использует JSF 1.2 и JSTL 1.2. Я развернул обе библиотеки в Weblogic, а затем указал своему WebModule использовать эти библиотеки в weblogic.xml.

    <weblogic-web-app xmlns="http://www.bea.com/ns/weblogic/weblogic-web-app"
 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
 xsi:schemaLocation="http://www.bea.com/ns/weblogic/weblogic-web-app/1.0
 http://www.bea.com/ns/weblogic/weblogic-web-app/1.0/weblogic-web-app.xsd">

 <context-root>/dailyplanner</context-root>

 <library-ref>
  <library-name>jsf</library-name>
  <specification-version>1.2</specification-version>
  <implementation-version>1.2</implementation-version>
  <exact-match>false</exact-match>
 </library-ref>

 <library-ref>
  <library-name>jstl</library-name>
  <specification-version>1.2</specification-version>
  <implementation-version>1.2</implementation-version>
  <exact-match>false</exact-match>
 </library-ref>
    </weblogic-web-app>

Все работает нормально, если я развертываю только WebModule как отдельное приложение.

Затем я настроил все приложение для использования этих библиотек со следующим кодом в weblogic-application.xml (который находится внутри ejb/META-INF)

<weblogic-application xmlns="ttp://www.bea.com/ns/weblogic/weblogic-application"
 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
 xsi:schemaLocation="http://www.bea.com/ns/weblogic/weblogic-application/1.0
 http://www.bea.com/ns/weblogic/weblogic-application/1.0/weblogic-application.xsd">

 <library-ref>
  <library-name>jsf</library-name>
  <specification-version>1.2</specification-version>
  <implementation-version>1.2</implementation-version>
  <exact-match>false</exact-match>
 </library-ref>

 <library-ref>
  <library-name>jstl</library-name>
  <specification-version>1.2</specification-version>
  <implementation-version>1.2</implementation-version>
  <exact-match>false</exact-match>
 </library-ref>
</weblogic-application>

Но если я сейчас попытаюсь развернуть все приложение J2EE (ear-файл), weblogic не сможет развернуть его из-за отсутствия классов JSF и JSTL.

Что я должен сделать, чтобы указать моему приложению J2EE использовать общие библиотеки JSF и JSTL в weblogic?

Спасибо


person edio    schedule 17.11.2010    source источник


Ответы (1)


Попробуйте сохранить конфигурацию в войне внутри уха.

person Pau    schedule 17.11.2010
comment
Можете ли вы объяснить, что вы имеете в виду, пожалуйста? Я не уверен, я тебя понимаю. - person edio; 17.11.2010
comment
Вместо того, чтобы перемещать конфигурацию на уровень уха, оставьте ее на уровне веб-модуля. Как и в первом примере, в WEB-INF/weblogic.xml веб-модуля. - person Pau; 17.11.2010
comment
Но конфигурация все же есть. Я просто удвоил его на уровне ушей, предполагая, что это ничего не сломает. Сейчас попробую оставить конфигурацию только в одном месте. - person edio; 17.11.2010
comment
Тогда более странно. Хорошо ли он настроен в консоли WL? Вы можете проверить это, перейдя в Deployments/jsf, и внизу у вас есть Приложения, которые ссылаются на эту библиотеку. Должно появиться ваше приложение. - person Pau; 17.11.2010
comment
Приложения, которые ссылаются на эту библиотеку DailyPlannerEJB — корпоративное приложение - person edio; 17.11.2010
comment
Можете ли вы вставить полную трассировку стека? - person Pau; 17.11.2010