java.lang.NoClassDefFoundError:javax/faces/model/SelectItem
Pergunta
Estou recebendo o seguinte rastreamento de exceção quando executo um aplicativo web implantado no servidor web Jety.Parece que estou faltando algum arquivo jar.Alguém pode me dizer o que há de errado?
ERRO HTTP 500
Problema ao acessar /PMCounters/default.jsp.Razão:
javax/faces/model/SelectItem
Causado por:
java.lang.NoClassDefFoundError:javax/faces/modelo/selectItem em com.ericsson.dae.pm.dao.virtualConfigTableDao. (VirtualDaeconfigtableDao.java:41) em org.apache.jsp.default_jsp.jspservice (oug.apache.jspache.JSPACHEF2. .apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:109) at javax.servlet.http.HttpServlet.service(HttpServlet.java:717) at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java : 389) em org.apache.jasper.servlet.jspservlet.servicejspfile (jspservlet.java:486) em org.apache.jasper.servlet.jspsertlet.service (jsserv.java:380) em javax. Service (httpServlet.java:717) em org.eclipse.jetty.servlet.servletholder.handle (servLetholder.java:547) em org.eclipse.jetty.servlet.sertlethandler.doHandle (ServLethandler.Java Aostty.Servlet.ServLetHandler.DoHandle (ServLetHandler.Java Aostty.Servlet.ServLetHandler) .Jetty.Server.Handler.ScopedHandler.Handle (ScopedHandler.java:119) em org.eclipse.Jetty.Security.SecurityHandler.Handle (SecurityHandler.java:520) em org.eclipse.jetty.server.shandle.Handlerdo) . Eclipse.Jetty.Server.Session.SessionHandler.Doscope (sessionHandler.java:186) em org.eclipse.Jetty.server.handler.contexthandler.doscópio (contexthandler.java:874) em org.eclipse.jetty.jetty.Ser.Ser.Ser.Java:874) em org.eclipse.Jetty.Jetty.Ser.Ser.Ser.Java:874) em org.eclipse.Jetty.Jetty.Jetty.Ser.Ser. ScopedHandler.handle(ScopedHandler.java:117) at org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.java:149) at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java: 110) at org.eclipse.jetty.server.Server.handle(Server.java:349) at org.eclipse.jetty.server.HttpConnection.handleRequest(HttpConnection.java:441) at org.eclipse.jetty.server.HttpConnection $ Requesthandler.headercomplete (httpconnection.java:904) em org.eclipse.jetty.http.httpparser.parsenext (httpparsser.java:565) em org.eclipse.jetty.htTtTtTa (HTPPRA:565) em org.eclipse.jetty.httTttTa (HTPPRA: org.eclipse.jetty.server.asynchttpconnection.handle (asynchttpconnection.java:46) em org.eclipse.jetty.io.nio.selectChannendPoint.Handle (selectChanNeLENDPoint.java:545) em org.ec. SelectChannelEndPoint$1.run(SelectChannelEndPoint.java:43) at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:598) at org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool. java: 533) em java.lang.thread.run (thread.java:662)
AQUI ESTÁ meu WEB.XML:
<?xml version="1.0" encoding="UTF-8"?>
<web-app version="3.0" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd">
<context-param>
<param-name>javax.faces.PROJECT_STAGE</param-name>
<param-value>Development</param-value>
</context-param>
<context-param>
<param-name>javax.faces.CONFIG_FILES</param-name>
<param-value>/WEB-INF/faces-config.xml</param-value>
</context-param>
<servlet>
<servlet-name>Faces Servlet</servlet-name>
<servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>Faces Servlet</servlet-name>
<url-pattern>/faces/*</url-pattern>
</servlet-mapping>
<session-config>
<session-timeout>
30
</session-timeout>
</session-config>
<welcome-file-list>
<welcome-file>default.jsp</welcome-file>
</welcome-file-list>
Solução
Normalmente, esse erro ocorre quando há várias versões dessa classe disponíveis, verifique se você não possui várias versões de jars com essa classe em seu aplicativo ou se o servidor de aplicativos não está fornecendo uma versão e seu aplicativo da web está empacotando outra versão.