Основной вопрос сложного решения - Tomcat для JBoss - PullRequest
0 голосов
/ 27 сентября 2011

Почему jar-файлы JSTL с tld-файлами, присутствующими в моем каталоге web-inf / lib, не могут быть хорошо прочитаны tomcat, но не когда я перехожу на jBoss 5?

Это проблема загрузчика классов?

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

Любая помощь будет оценена.

Заранее спасибо Асиф

1 Ответ

2 голосов
/ 27 сентября 2011

Tomcat - это простой контейнер JSP / Servlet, который поставляется только с API-интерфейсами JSP и Servlet.JBoss - это более полноценный сервер приложений Java EE, который поставляется практически со всем API Java EE, включая JSTL.

Когда вы отправляете JSTL вместе со своим собственным веб-приложением, велика вероятность, что его версия API / impl будетконфликт с тем, который JBoss уже использует.JBoss загрузит свой собственный JSTL API (jstl.jar), но веб-приложение загрузит JSTL impl (standard.jar).Вы действительно должны удалить JSTL JAR из вашего веб-приложения и использовать JBoss.Чтобы заставить JSTL работать для того же веб-приложения на Tomcat, вы также можете добавить JAR-файлы в собственную папку /lib Tomcat.Таким образом, каждое веб-приложение, развернутое в Tomcat, сможет использовать JSTL без необходимости включать JAR в /WEB-INF/lib.

...