JSP + Struts 2 + Tomcat 7 + Erro HTTP Status 500

7 respostas
ViniciusNaka

Boa tarde Galera.

Estou com esse erro ao tentar executar uma página jsp …

HTTP Status 500 -


type Exception report

message

description The server encountered an internal error () that prevented it from fulfilling this request.

exception

org.apache.jasper.JasperException: javax.servlet.ServletException: java.lang.NoSuchMethodError: com.opensymphony.xwork2.util.ValueStack.findValue(Ljava/lang/String;Ljava/lang/Class;Z)Ljava/lang/Object;

org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:532)

org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:440)

org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:391)

org.apache.jasper.servlet.JspServlet.service(JspServlet.java:334)

javax.servlet.http.HttpServlet.service(HttpServlet.java:722)

org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter.doFilter(StrutsPrepareAndExecuteFilter.java:88)

root cause

javax.servlet.ServletException: java.lang.NoSuchMethodError: com.opensymphony.xwork2.util.ValueStack.findValue(Ljava/lang/String;Ljava/lang/Class;Z)Ljava/lang/Object;

org.apache.jasper.runtime.PageContextImpl.doHandlePageException(PageContextImpl.java:915)

org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImpl.java:844)

org.apache.jsp.lista_002dfuncionario_jsp._jspService(lista_002dfuncionario_jsp.java:107)

org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)

javax.servlet.http.HttpServlet.service(HttpServlet.java:722)

org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:417)

org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:391)

org.apache.jasper.servlet.JspServlet.service(JspServlet.java:334)

javax.servlet.http.HttpServlet.service(HttpServlet.java:722)

org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter.doFilter(StrutsPrepareAndExecuteFilter.java:88)

root cause

java.lang.NoSuchMethodError: com.opensymphony.xwork2.util.ValueStack.findValue(Ljava/lang/String;Ljava/lang/Class;Z)Ljava/lang/Object;

org.apache.struts2.components.Property.start(Property.java:141)

org.apache.struts2.views.freemarker.tags.CallbackWriter.onStart(CallbackWriter.java:73)

freemarker.core.Environment.visit(Environment.java:296)

freemarker.core.UnifiedCall.accept(UnifiedCall.java:130)

freemarker.core.Environment.visit(Environment.java:210)

freemarker.core.MixedContent.accept(MixedContent.java:92)

freemarker.core.Environment.visit(Environment.java:210)

freemarker.core.ConditionalBlock.accept(ConditionalBlock.java:79)

freemarker.core.Environment.visit(Environment.java:210)

freemarker.core.MixedContent.accept(MixedContent.java:92)

freemarker.core.Environment.visit(Environment.java:210)

freemarker.core.IfBlock.accept(IfBlock.java:82)

freemarker.core.Environment.visit(Environment.java:210)

freemarker.core.MixedContent.accept(MixedContent.java:92)

freemarker.core.Environment.visit(Environment.java:210)

freemarker.core.Environment.include(Environment.java:1483)

freemarker.core.Include.accept(Include.java:169)

freemarker.core.Environment.visit(Environment.java:210)

freemarker.core.MixedContent.accept(MixedContent.java:92)

freemarker.core.Environment.visit(Environment.java:210)

freemarker.core.Environment.process(Environment.java:190)

freemarker.template.Template.process(Template.java:237)

org.apache.struts2.components.template.FreemarkerTemplateEngine.renderTemplate(FreemarkerTemplateEngine.java:182)

org.apache.struts2.components.UIBean.mergeTemplate(UIBean.java:559)

org.apache.struts2.components.ClosingUIBean.start(ClosingUIBean.java:59)

org.apache.struts2.views.jsp.ComponentTagSupport.doStartTag(ComponentTagSupport.java:53)

org.apache.jsp.lista_002dfuncionario_jsp._jspx_meth_s_005fsubmit_005f0(lista_002dfuncionario_jsp.java:330)

org.apache.jsp.lista_002dfuncionario_jsp._jspx_meth_c_005fforEach_005f0(lista_002dfuncionario_jsp.java:194)

org.apache.jsp.lista_002dfuncionario_jsp._jspx_meth_s_005fform_005f0(lista_002dfuncionario_jsp.java:140)

org.apache.jsp.lista_002dfuncionario_jsp._jspService(lista_002dfuncionario_jsp.java:96)

org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)

javax.servlet.http.HttpServlet.service(HttpServlet.java:722)

org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:417)

org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:391)

org.apache.jasper.servlet.JspServlet.service(JspServlet.java:334)

javax.servlet.http.HttpServlet.service(HttpServlet.java:722)

org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter.doFilter(StrutsPrepareAndExecuteFilter.java:88)

note The full stack trace of the root cause is available in the Apache Tomcat/7.0.8 logs.

o que poderia ser isso?

Desde já agradeço a atenção.

Abs

7 Respostas

ViniciusNaka

ah, no console aparece isso aqui…

Feb 18, 2011 12:35:50 PM com.opensymphony.xwork2.util.logging.commons.CommonsLogger warn

WARNING: No configuration found for the specified action: /lista-funcionario.jsp in namespace: ‘’. Form action defaulting to action attributes literal value.

Feb 18, 2011 12:35:51 PM org.apache.catalina.core.StandardWrapperValve invoke

SEVERE: Servlet.service() for servlet [jsp] in context with path [/Reconhecimento] threw exception [javax.servlet.ServletException: java.lang.NoSuchMethodError: com.opensymphony.xwork2.util.ValueStack.findValue(Ljava/lang/String;Ljava/lang/Class;Z)Ljava/lang/Object;] with root cause

java.lang.NoSuchMethodError: com.opensymphony.xwork2.util.ValueStack.findValue(Ljava/lang/String;Ljava/lang/Class;Z)Ljava/lang/Object;

at org.apache.struts2.components.Property.start(Property.java:141)

at org.apache.struts2.views.freemarker.tags.CallbackWriter.onStart(CallbackWriter.java:73)

at freemarker.core.Environment.visit(Environment.java:296)

at freemarker.core.UnifiedCall.accept(UnifiedCall.java:130)

at freemarker.core.Environment.visit(Environment.java:210)

at freemarker.core.MixedContent.accept(MixedContent.java:92)

at freemarker.core.Environment.visit(Environment.java:210)

at freemarker.core.ConditionalBlock.accept(ConditionalBlock.java:79)

at freemarker.core.Environment.visit(Environment.java:210)

at freemarker.core.MixedContent.accept(MixedContent.java:92)

at freemarker.core.Environment.visit(Environment.java:210)

at freemarker.core.IfBlock.accept(IfBlock.java:82)

at freemarker.core.Environment.visit(Environment.java:210)

at freemarker.core.MixedContent.accept(MixedContent.java:92)

at freemarker.core.Environment.visit(Environment.java:210)

at freemarker.core.Environment.include(Environment.java:1483)

at freemarker.core.Include.accept(Include.java:169)

at freemarker.core.Environment.visit(Environment.java:210)

at freemarker.core.MixedContent.accept(MixedContent.java:92)

at freemarker.core.Environment.visit(Environment.java:210)

at freemarker.core.Environment.process(Environment.java:190)

at freemarker.template.Template.process(Template.java:237)

at org.apache.struts2.components.template.FreemarkerTemplateEngine.renderTemplate(FreemarkerTemplateEngine.java:182)

at org.apache.struts2.components.UIBean.mergeTemplate(UIBean.java:559)

at org.apache.struts2.components.ClosingUIBean.start(ClosingUIBean.java:59)

at org.apache.struts2.views.jsp.ComponentTagSupport.doStartTag(ComponentTagSupport.java:53)

at org.apache.jsp.lista_002dfuncionario_jsp._jspx_meth_s_005fsubmit_005f0(lista_002dfuncionario_jsp.java:330)

at org.apache.jsp.lista_002dfuncionario_jsp._jspx_meth_c_005fforEach_005f0(lista_002dfuncionario_jsp.java:194)

at org.apache.jsp.lista_002dfuncionario_jsp._jspx_meth_s_005fform_005f0(lista_002dfuncionario_jsp.java:140)

at org.apache.jsp.lista_002dfuncionario_jsp._jspService(lista_002dfuncionario_jsp.java:96)

at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)

at javax.servlet.http.HttpServlet.service(HttpServlet.java:722)

at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:417)

at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:391)

at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:334)

at javax.servlet.http.HttpServlet.service(HttpServlet.java:722)

at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:306)

at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)

at org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter.doFilter(StrutsPrepareAndExecuteFilter.java:88)

at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:244)

at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)

at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:240)

at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:161)

at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:164)

at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:100)

at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:541)

at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)

at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:383)

at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:243)

at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:188)

at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:166)

at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:288)

at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)

at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)

at java.lang.Thread.run(Unknown Source)
ailujana

coloca o código pra gente dar uma olhada :wink:

lazaropj

Esse erro acontece só nesse JSP? Ou quando sobe a aplicação?

ViniciusNaka

galera, eu consegui arrumar o erro retirando as tags <s:submit> e colocando

código da minha jsp antes de altera-la …

<jsp:useBean id=“funcionarioDAO”
class=“voxage.com.br.dao.FuncionarioDAO” />

<s:form>

</c:forEach>
Id Nome E-mail Gestor
${funcionario.idFuncionario} ${funcionario.nome} ${funcionario.email} Sim Não

surgiu uma outra dúvida… tem como eu usar as tags do struts <s:submit> para cada uma chamar uma action diferente?

abs

ailujana

ViniciusNaka:

surgiu uma outra dúvida… tem como eu usar as tags do struts <s:submit> para cada uma chamar uma action diferente?
abs

não entendi sua pergunta, pra mim é isso que você está fazendo aqui:

<td>
<s:submit action="alterarFuncionario" method="get" value="Alterar" />
</td>
<td>
<s:submit action="excluirFuncionario" method="post" value="Excluir" />
</td>

PS: coloca o seu código nas entre as tags code aqui do fórum, fica mais fácil de ler o código :slight_smile:

ViniciusNaka

hehe blz…

mas se eu deixo dessa forma aparece esse erro…

Feb 18, 2011 2:46:55 PM com.opensymphony.xwork2.util.logging.commons.CommonsLogger warn
WARNING: No configuration found for the specified action: ‘/lista-funcionario.jsp’ in namespace: ‘’. Form action defaulting to ‘action’ attribute’s literal value.
Feb 18, 2011 2:46:56 PM org.apache.catalina.core.StandardWrapperValve invoke
SEVERE: Servlet.service() for servlet [jsp] in context with path [/Reconhecimento] threw exception [An exception occurred processing JSP page /lista-funcionario.jsp at line 43

40: </c:otherwise>
41: </c:choose>
42:


43: <s:submit action=“alterarFuncionario” method=“get” value=“Alterar” />
44:
45:
46: <s:submit action=“excluirFuncionario” method=“post” value=“Excluir” />
Stacktrace:] with root cause

java.lang.NoSuchMethodError: com.opensymphony.xwork2.util.ValueStack.findValue(Ljava/lang/String;Ljava/lang/Class;Z)Ljava/lang/Object;

at org.apache.struts2.components.Property.start(Property.java:141)

at org.apache.struts2.views.freemarker.tags.CallbackWriter.onStart(CallbackWriter.java:73)

at freemarker.core.Environment.visit(Environment.java:296)

at freemarker.core.UnifiedCall.accept(UnifiedCall.java:130)

at freemarker.core.Environment.visit(Environment.java:210)

ai mudando para o input funciona. :?

ailujana

você tem que ver o que tá sendo colocado lá no topo da sua jsp:
isso:

<%@taglib prefix="s" uri="/struts-tags" %>

OU isso:

<%@taglib prefix="c" uri="/struts-tags" %>

eu não tinha me dado conta antes, mas você se refere as tags do struts algumas vezes com “c” e outras com “s”…normalmente se usa “s”…escolha um dos 2 (c ou s) e coloque em todas as tags do struts :slight_smile:

edit: agora que vi que não sao tags do struts as qeu você usou o “c”…desculpa aí :stuck_out_tongue: falta de atenção

Criado 18 de fevereiro de 2011
Ultima resposta 18 de fev. de 2011
Respostas 7
Participantes 3