webForumDet fria alternativet

Problem efter uppgradering

2 svar · 215 visningar · startad av andreascarlsson

andreascarlssonMedlem sedan feb. 2003211 inlägg
#1

Inatt uppgraderade mitt webhotell Tomcat, från version 4.xx till 5.xx. Vilket borde vara bra! :D

Men nu får jag ett skumt felmeddelande när jag försöker ladda jsp-filerna:

org.apache.jasper.JasperException: /index_public.jsp(4,0) The value for the useBean class attribute beans.LanguageManager is invalid.
	org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:39)
	org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:357)
	org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:141)
	org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1217)
	org.apache.jasper.compiler.Node$UseBean.accept(Node.java:1116)
	org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2163)
	org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2213)
	org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2219)
	org.apache.jasper.compiler.Node$Root.accept(Node.java:456)
	org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2163)
	org.apache.jasper.compiler.Generator.generate(Generator.java:3261)
	org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:244)
	org.apache.jasper.compiler.Compiler.compile(Compiler.java:439)
	org.apache.jasper.compiler.Compiler.compile(Compiler.java:422)
	org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:507)
	org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:274)
	org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:292)
	org.apache.jasper.servlet.JspServlet.service(JspServlet.java:236)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:810)
	Controller.doPost(Unknown Source)
	Controller.doGet(Unknown Source)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:697)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:810)
	org.apache.catalina.servlets.InvokerServlet.serveRequest(InvokerServlet.java:419)
	org.apache.catalina.servlets.InvokerServlet.doGet(InvokerServlet.java:133)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:697)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:810)

Jag har förstått att det är i useBean-taggen som problemet ligger. Förmodligen är det någonting som inte längre stöds i Tomcat 5.xx??

Mina useBean-taggar på denna jsp-sida ser ut så här:

<jsp:useBean id="user" scope="session" class="beans.UserSession"  />
<jsp:useBean id="lm" scope="request" class="beans.LanguageManager"  />

Är det någon som vet vad som saknas eller måste ändras i dessa taggar? I version 4.xx fungerade allt helt perfekt.

Sedan undrar jag om någon vet vilka (de största) nyheterna är i 5.xx?? Jag funderar lite på hur jag skall kunna utnyttja det faktum att Tomcat har uppgraderats till en nyare version... :e

Mc FettoMedlem sedan nov. 20021 920 inlägg
#2

http://jakarta.apache.org/tomcat/

Där kan du kortfattat se vad skillnaderna är, tomcat 5 t ex stödjer jsp 2

Felmedelandet vet jag dock inget om :(

andreascarlssonMedlem sedan feb. 2003211 inlägg
#3

Felet berodde på att den nya versionen av Tomcat (den nya jsp/servlet-specifikationen), var lite kinkigare med vilka klasser som godtas i useBean-taggen.

Tidigare har det gått bra att använda klasser som inte följer bean-konventionen. D.v.s. använder parameter-konstruktorer etc. (detta får man ju som bekant inte ha i en bean)

Ordnade till detta och nu fungerar det OK. :h

Genererad på 385 ms · cache AV · v20260730165559-full.f96bc7eb