Migração do Tomcat 5.5.25 para Tomcat 6.0.20

2 respostas
danielbussade

Olá pessoal, tenho uma aplicação desenvolvida com Mentawai 1.2 + Hibernate 3.2. A aplicação já funciona bem há mais ou menos 2 anos rodando no tomcat 5.5.25 em um servidor linux. Infelizmente preciso atualizar a versão do Tomcat para 6.0.20 devido a uma aplicação JSF, que irá rodar neste mesmo servidor.

Então peguei e aplicação, apaguei a pasta work, fiz o deploy no tomcat, e mandei rodar, para minha surpresa ele lançou este erro:
exception
javax.servlet.ServletException: Exception while invoking action urlAction: org.mentawai.template.TemplateException: org/apache/commons/el/VariableResolverImpl / org.mentawai.core.ConsequenceException / org/apache/commons/el/VariableResolverImpl / java.lang.NoClassDefFoundError
	org.mentawai.core.Controller.service(Controller.java:555)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
exception
java.lang.NoClassDefFoundError: org/apache/commons/el/VariableResolverImpl
	org.apache.jasper.runtime.JspContextWrapper.<init>(JspContextWrapper.java:81)
	org.apache.jsp.tag.meta.template.template.block_tag.setJspContext(block_tag.java:27)
	org.apache.jsp.templateHome_jsp._jspx_meth_template_005fblock_005f0(templateHome_jsp.java:169)
	org.apache.jsp.templateHome_jsp._jspService(templateHome_jsp.java:112)
	org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:97)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
	org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:374)
	org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:342)
	org.apache.jasper.servlet.JspServlet.service(JspServlet.java:267)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
	org.mentawai.util.DebugServletFilter.doFilter(DebugServletFilter.java:70)
	org.mentawai.template.JspTemplateServlet.showPage(JspTemplateServlet.java:43)
	org.mentawai.template.TemplateServlet.processTemplate(TemplateServlet.java:178)
	org.mentawai.template.TemplateServlet.processRequest(TemplateServlet.java:140)
	org.mentawai.template.TemplateServlet.doGet(TemplateServlet.java:240)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:617)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
	org.mentawai.core.Forward.forward(Forward.java:133)
	org.mentawai.core.Forward.execute(Forward.java:116)
	org.mentawai.core.Controller.service(Controller.java:545)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:717)

Me pareceu ser falta de um jar o commons-el, não entendi porque ele precisa do mesmo mas coloquei ele na pasta lib do tomcat, ai ele disparou outro erro:

exception

javax.servlet.ServletException: Exception while invoking action urlAction: org.mentawai.template.TemplateException: javax.servlet.jsp.JspContext.getELContext()Ljavax/el/ELContext; / org.mentawai.core.ConsequenceException / javax.servlet.jsp.JspContext.getELContext()Ljavax/el/ELContext; / java.lang.AbstractMethodError
	org.mentawai.core.Controller.service(Controller.java:555)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:717)

root cause

java.lang.AbstractMethodError: javax.servlet.jsp.JspContext.getELContext()Ljavax/el/ELContext;
	org.apache.jsp.tag.meta.template.template.block_tag.doTag(block_tag.java:65)
	org.apache.jsp.templateHome_jsp._jspx_meth_template_005fblock_005f0(templateHome_jsp.java:172)
	org.apache.jsp.templateHome_jsp._jspService(templateHome_jsp.java:112)
	org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:97)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
	org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:374)
	org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:342)
	org.apache.jasper.servlet.JspServlet.service(JspServlet.java:267)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
	org.mentawai.util.DebugServletFilter.doFilter(DebugServletFilter.java:70)
	org.mentawai.template.JspTemplateServlet.showPage(JspTemplateServlet.java:43)
	org.mentawai.template.TemplateServlet.processTemplate(TemplateServlet.java:178)
	org.mentawai.template.TemplateServlet.processRequest(TemplateServlet.java:140)
	org.mentawai.template.TemplateServlet.doGet(TemplateServlet.java:240)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:617)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
	org.mentawai.core.Forward.forward(Forward.java:133)
	org.mentawai.core.Forward.execute(Forward.java:116)
	org.mentawai.core.Controller.service(Controller.java:545)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:717)

Alguém sabe que erros são estes? E como poderia arrumá-los?

Obrigado

2 Respostas

danielbussade

Caso ajude o servidor e Linux e roda o Debian!

KWill

Se você tiver os fontes desse aplicativo que rodava bem no Tomcat 5.5.25, sugiro que você se reorganize para tentar compilar novamente esse aplicativo, mas compilar esse aplicativo usando as versões do mentawai e do hibernate que sejam compatíveis com o Tomcat 6, além de usar as bibliotecas do Tomcat 6. Entre o Tomcat 5.5 e o Tomcat 6 pode ser que tenha mudado alguma coisa na especificação dos Servlets ou do JSP que tenha quebrado sua aplicação.

Inté.

Criado 6 de agosto de 2009
Ultima resposta 6 de ago. de 2009
Respostas 2
Participantes 2