websphere 7 (und Spring Roo) nicht kompatibel mit javax.el.ELException

Ich habe eine Anwendung, wo das frontend basiert auf dem Spring Roo 1.1.2 jspx-Dateien.

Jeder denken funktioniert in Tomcat 6, aber wenn ich das bereitstellen der Anwendung in einem Websphere 7 (class loader: übergeordnete zuletzt), dann bekomme ich eine exception:

java.lang.Classcastexception-Fehler: java.lang.NullPointerException unvereinbar mit javax.el.ELException

[13.04.11 09:53:55:493 UTC] 00000026 servlet       E com.ibm.ws.webcontainer.servlet.ServletWrapper service SRVE0068E: Uncaught exception created in one of the service methods of the servlet /WEB-INF/layouts/default.jspx in application cyber. Exception created : com.ibm.websphere.servlet.error.ServletErrorReport: java.lang.ClassCastException: java.lang.NullPointerException incompatible with javax.el.ELException
    at org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImpl.java:693)
    at com.ibm._jsp._default_5F_jspx._jspService(_default_5F_jspx.java:123)
    at com.ibm.ws.jsp.runtime.HttpJspBase.service(HttpJspBase.java:98)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:831)
    at com.ibm.ws.webcontainer.servlet.ServletWrapper.service(ServletWrapper.java:1655)
    at com.ibm.ws.webcontainer.servlet.ServletWrapper.service(ServletWrapper.java:1595)
    at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:104)
    at com.ibm.ws.webcontainer.filter.WebAppFilterChain._doFilter(WebAppFilterChain.java:77)
    at com.ibm.ws.webcontainer.filter.WebAppFilterManager.doFilter(WebAppFilterManager.java:895)
    at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:932)
    at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:500)
    at com.ibm.ws.webcontainer.servlet.ServletWrapperImpl.handleRequest(ServletWrapperImpl.java:178)
    at com.ibm.wsspi.webcontainer.servlet.GenericServletWrapper.handleRequest(GenericServletWrapper.java:121)
    at com.ibm.ws.jsp.webcontainerext.AbstractJSPExtensionServletWrapper.handleRequest(AbstractJSPExtensionServletWrapper.java:239)
    at com.ibm.ws.webcontainer.webapp.WebAppRequestDispatcher.forward(WebAppRequestDispatcher.java:341)
    at org.apache.tiles.servlet.context.ServletTilesRequestContext.forward(ServletTilesRequestContext.java:241)
    ...
Caused by: java.lang.ClassCastException: java.lang.NullPointerException incompatible with javax.el.ELException
    at org.apache.el.lang.ExpressionBuilder.prepare(ExpressionBuilder.java:139)
    at org.apache.el.lang.ExpressionBuilder.build(ExpressionBuilder.java:151)
    at org.apache.el.lang.ExpressionBuilder.createValueExpression(ExpressionBuilder.java:194)
    at org.apache.el.ExpressionFactoryImpl.createValueExpression(ExpressionFactoryImpl.java:67)
    at org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate(PageContextImpl.java:773)
    at com.ibm.ws.jsp.tagfile.webinf.util._load_2D_scripts.doTag(_load_2D_scripts.java:74)
    at com.ibm._jsp._default_5F_jspx._jspx_meth_util_load$1scripts_0(_default_5F_jspx.java:140)
    at com.ibm._jsp._default_5F_jspx._jspService(_default_5F_jspx.java:94)
    ... 88 more

Die Anwendung eine Flex/BlazeDS-Teil, das funktioniert auch. Aber es gibt auch diese JSP(x) Teil. Der Feder-Controller arbeiten, aber , es ist etwas falsch mit der JSPXs, und ich habe keine Ahnung, wo Sie beginnen, wenn ich verstehe, ist die Spezifikation Recht, als WAS7 bietet JSP 2.1, das ist genau das was ich brauche.

Den relevanten Teil des POM für den KRIEG ist:

<dependency>
   <groupId>javax.servlet</groupId>
   <artifactId>com.springsource.javax.servlet.jsp.jstl</artifactId>         
   <version>1.2.0</version>         
 </dependency>
 <dependency>
    <groupId>javax.servlet</groupId>
    <artifactId>servlet-api</artifactId>
    <version>2.5</version>
    <scope>provided</scope>
 </dependency>
 <dependency>
    <groupId>javax.servlet.jsp</groupId>
    <artifactId>jsp-api</artifactId>
    <version>2.1</version>
    <scope>provided</scope>     
  </dependency>

Kann jemand mir einen Tipp geben?

Dieser maven dependency tree:

[INFO] +- cyber:cyber-core:jar:4.0.0.0-D1-SNAPSHOT:compile
[INFO] |  +- javax.validation:com.springsource.javax.validation:jar:1.0.0.GA:compile
[INFO] |  +- javax.transaction:com.springsource.javax.transaction:jar:1.1.0:compile
[INFO] |  +- org.apache.poi:poi:jar:3.6:compile
[INFO] |  +- net.sf.jxls:jxls-core:jar:0.9.9:compile
[INFO] |  |  +- commons-beanutils:commons-beanutils:jar:1.8.2:compile
[INFO] |  |  \- commons-jexl:commons-jexl:jar:1.1:compile
[INFO] |  |     \- junit:junit:jar:3.8.1:compile
[INFO] |  +- net.sf.jxls:jxls-reader:jar:0.9.9:compile
[INFO] |  +-    org.apache.commons:com.springsource.org.apache.commons.dbcp:jar:1.2.2.osgi:compile
[INFO] |  |  \- org.apache.commons:com.springsource.org.apache.commons.pool:jar:1.3.0:compile
[INFO] |  +- commons-io:commons-io:jar:1.4:compile
[INFO] |  +- org.apache.commons:com.springsource.org.apache.commons.collections:jar:3.2.1:compile
[INFO] |  +- commons-lang:commons-lang:jar:2.4:compile
[INFO] |  +- commons-math:commons-math:jar:1.2:compile
[INFO] |  +- jdom:jdom:jar:1.0:compile
[INFO] +- org.springframework:org.springframework.core:jar:3.0.5.RELEASE:compile
[INFO] +- org.springframework:org.springframework.beans:jar:3.0.5.RELEASE:compile
[INFO] |  \- org.springframework:org.springframework.asm:jar:3.0.5.RELEASE:compile
[INFO] +- org.springframework:org.springframework.context:jar:3.0.5.RELEASE:compile
[INFO] |  \- org.springframework:org.springframework.expression:jar:3.0.5.RELEASE:compile
[INFO] +- org.springframework:org.springframework.web:jar:3.0.5.RELEASE:compile
[INFO] |  \- org.aopalliance:com.springsource.org.aopalliance:jar:1.0.0:compile
[INFO] +- org.springframework:org.springframework.web.servlet:jar:3.0.5.RELEASE:compile
[INFO] +- org.springframework:org.springframework.aop:jar:3.0.5.RELEASE:compile
[INFO] +- org.springframework:org.springframework.aspects:jar:3.0.5.RELEASE:compile
[INFO] +- org.springframework:org.springframework.orm:jar:3.0.5.RELEASE:compile
[INFO] |  +- org.springframework:org.springframework.jdbc:jar:3.0.5.RELEASE:compile
[INFO] |  \- org.springframework:org.springframework.transaction:jar:3.0.5.RELEASE:compile
[INFO] +- org.springframework:org.springframework.context.support:jar:3.0.5.RELEASE:compile
[INFO] +- org.springframework:spring-webmvc:jar:3.0.5.RELEASE:compile
[INFO] |  +- org.springframework:spring-asm:jar:3.0.5.RELEASE:compile
[INFO] |  +- org.springframework:spring-beans:jar:3.0.5.RELEASE:compile
[INFO] |  +- org.springframework:spring-context:jar:3.0.5.RELEASE:compile
[INFO] |  |  \- org.springframework:spring-aop:jar:3.0.5.RELEASE:compile
[INFO] |  +- org.springframework:spring-context-support:jar:3.0.5.RELEASE:compile
[INFO] |  +- org.springframework:spring-core:jar:3.0.5.RELEASE:compile
[INFO] |  +- org.springframework:spring-expression:jar:3.0.5.RELEASE:compile
[INFO] |  \- org.springframework:spring-web:jar:3.0.5.RELEASE:compile
[INFO] |     \- aopalliance:aopalliance:jar:1.0:compile
[INFO] +- org.springframework.webflow:spring-js-resources:jar:2.2.1.RELEASE:compile
[INFO] +- org.springframework.security:org.springframework.security.core:jar:3.0.3.RELEASE:compile
[INFO] |  \- org.apache.commons:com.springsource.org.apache.commons.logging:jar:1.1.1:compile
[INFO] +- org.springframework.security:org.springframework.security.web:jar:3.0.3.RELEASE:compile
[INFO] +- org.springframework.security:org.springframework.security.config:jar:3.0.3.RELEASE:compile
[INFO] +- org.apache.tiles:tiles-core:jar:2.2.1:compile
[INFO] |  +- org.apache.tiles:tiles-api:jar:2.2.1:compile
[INFO] |  +- commons-digester:commons-digester:jar:2.0:compile
[INFO] |  \- org.slf4j:jcl-over-slf4j:jar:1.5.10:compile
[INFO] +- org.apache.tiles:tiles-jsp:jar:2.2.1:compile
[INFO] |  +- org.apache.tiles:tiles-servlet:jar:2.2.1:compile
[INFO] |  \- org.apache.tiles:tiles-template:jar:2.2.1:compile
[INFO] +- org.tuckey:urlrewritefilter:jar:3.1.0:compile
[INFO] +- org.springframework:spring-oxm:jar:3.0.5.RELEASE:compile
[INFO] +- javax.servlet:com.springsource.javax.servlet.jsp.jstl:jar:1.2.0:compile
[INFO] |  \- org.apache.taglibs:com.springsource.org.apache.taglibs.standard:jar:1.1.2:compile
[INFO] +- javax.servlet:servlet-api:jar:2.5:provided
[INFO] +- javax.servlet.jsp:jsp-api:jar:2.1:provided
[INFO] +- org.aspectj:aspectjweaver:jar:1.6.9:compile
[INFO] +- org.aspectj:aspectjrt:jar:1.6.9:compile
  • Vielleicht die Ausgabe von mvn dependency:tree werden die Dinge klarer. Die EL-jars kann das problem sein.
  • Morales: meinst du, ich sollte es veröffentlichen, oder ist es ein Hinweis für mich um die Suche zu starten?
  • Beide, denke ich. Einen vollwertigen application server wie websphere, hat eine Tonne von software gebündelt. Ich denke, dass neuere JSPs abhängen EL, so dass es vielleicht ein <scope>provided</scope> fehlt in der POM.
  • Morales: ich habe geschrieben auf dem Baum, aber ich habe nicht gefunden, etwas seltsam.
InformationsquelleAutor Ralph | 2011-04-13
Schreibe einen Kommentar