У меня есть пример приложения, которое работает на моей локальной машине с помощью Netbeans с GlassFish. Я получил большую помощь от StackOverflow, который начал работу. Следующий шаг - попытаться развернуть его на реальном сервере. Я нашел, что могу попробовать его на EATJ, поэтому я использовал Netbeans для создания WAR-файла, и я загрузил WAR-файл. Она не работает, и я нашел следующее в одном из журналовFacesServlet не найден при развертывании
INFO: ContextListener: contextDestroyed()
Jun 12, 2012 10:45:33 PM org.apache.catalina.core.ApplicationContext log
INFO: Marking servlet Faces Servlet as unavailable
Jun 12, 2012 10:45:33 PM org.apache.catalina.core.StandardContext loadOnStartup
SEVERE: Servlet /ww1 threw load() exception
java.lang.ClassNotFoundException: javax.faces.webapp.FacesServlet
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1701)
я просто перезагрузил сервер Tomcat, так что я бы с чистого листа. Я могу видеть из штампа времени, что я синхронизирован. В INFO он говорит мне, что делает Faces Servlet недоступным. Поэтому неудивительно, что он не может найти класс, если он просто сделал его недоступным. Таким образом, когда я пытаюсь запустить приложение, он терпит неудачу.
Что я не понимаю, так это то, почему оно решило сделать его недоступным в первую очередь и что я могу с этим поделать.
В Netbeans на моей локальной машине я использую GlassFish и на EATJ Tomcat используется. Что-то встроено в файл WAR, который может заставить его не работать на Tomcat? Трудно поверить, но, может быть. Я использую jsf 2.0 с файлами, если это имеет значение.
Я никогда не запускал Tomcat на своей локальной машине, так как GlassFish поставлялся в комплекте с Netbeans, и он работал отлично. Может быть, мне нужно загрузить Tomcat на моем локальном компьютере, чтобы проверить его? Я не знаю, что думать, поэтому мне нужно попросить совета.
P.S. Я помню, что я добавил glassfish-web.xml, чтобы удалить раздражающее предупреждение. Линия, добавленная мной, была
<parameter-encoding default-charset="UTF-8"/>
Возможно, мне нужно удалить glassfish-web.xml? С другой стороны, что это связано с тем, что FacesServlet недоступен? Проблема кажется глубже.
Это то, что я называю очень хорошим ответом. Я хотел проверить его, прежде чем отвечать, и это работает! Мой сайт запущен. Я принял подход добавления jsf к моему файлу войны, и он решает проблему. –