Наша команда осуществляет миграцию приложения с JBoss 4.2 на Weblogic 10.3.4.
Существует некоторая логика в приложении, которая требует знать имя файла уха. Для этого используется код ниже:
URL url = Thread.currentThread().getContextClassLoader().getResource("");
Этот код выполняется на этапе развертывания во время инициализации Spring.
И на JBoss это работает нормально, но на Weblogic getResource("")
возвращает null
в этом случае.
Итак, мой вопрос, почему это не работает в Weblogic?
Дополнительно я создал небольшие страницы test.jsp с несколькими строками кода, которые возвращают значение Thread.currentThread().getContextClassLoader().getResource("")
, и это работает в Weblogic. Поэтому я сделал небольшой стол, чтобы показать эту ситуацию более наглядно:
+----------+-------------+------------------------------+
| | on JSP page | during spring initialization |
+----------+-------------+------------------------------+
| JBoss | works | works |
| Weblogic | works | returns null |
+----------+-------------+------------------------------+
Структура заявки следующая. getResource("")
код находится внутри my.jar
:
my.ear
|
+-my.war
|
+-WEB-INF
| |
| +-lib
| |
| +-my.jar
| +-org.springframework.aop-3.0.5.RELEASE.jar
| +-org.springframework.beans-3.0.5.RELEASE.jar
| +-org.springframework.context.support-3.0.5.RELEASE.jar
| +-org.springframework.context-3.0.5.RELEASE.jar
| +-org.springframework.core-3.0.5.RELEASE.jar
| +-other jars
|
+-test.jsp
+-jsp pages