문제

We have a legacy JSF based web application that uses Seam. It is deployed on Websphere 7.0. It does not have MyFaces JARs in its /WEB-INF/lib, it has only Seam JARs.

So, how does the application get the JSF JARs? How does JSF actually work in this application?

도움이 되었습니까?

해결책

JSF is as being part of Java EE specification already bundled in Java EE compliant application servers like Glassfish, JBoss AS, Websphere and Weblogic. You do not need to bundle it in your webapp.

Your confusion is probably coming, because you've also ever worked with barebones JSP/Servlet containers like Tomcat or Jetty and experienced that you need to manually provide JSF libraries. This is true, barebones JSP/Servlet containers only ships with JSP/Servlet (and EL) libraries, not with other Java EE artifacts like JSF, EJB, JPA, etcetera. That's why you need to bundle it along with your own webapp.

So, to concretely answer your question: no, you do not need to bundle JSF with your webapp if it is already bundled with the target server.

Please note that this is completely regardless of the JSF implementation (you explicitly mentioned MyFaces, while the question/answer applies as good to other JSF implementations like Mojarra).

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top