[ 
https://issues.apache.org/jira/browse/SLING-6502?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15871649#comment-15871649
 ] 

Carsten Ziegeler commented on SLING-6502:
-----------------------------------------

Thanks [~olli]

The pax web bundles export javax.el in version 3 and javax.jsp in 2.3.1 - which 
results in the jsp packages being imported and used by the scripting.jsp bundle 
but not the javax.el one. And i guess that's what in turn creates the above 
problem.
So I assume simply updating the embedded versions in scripting.jsp should solve 
the problem.
Also not using pax web solves the problem. Unfortunately, even pax jetty is 
importing javax.el , so removing even that single bundle does not work.
Of course importing everything from the outside should solve the problem as 
well, however this might bring us into other version mismatch problems

> JSP: java.lang.VerifyError (Bad type on operand stack)
> ------------------------------------------------------
>
>                 Key: SLING-6502
>                 URL: https://issues.apache.org/jira/browse/SLING-6502
>             Project: Sling
>          Issue Type: Bug
>          Components: Scripting
>    Affects Versions: Scripting JSP 2.2.6
>         Environment: Apache Karaf 4.1.0-SNAPSHOT (Pax Web 6.0.2)
>            Reporter: Oliver Lietz
>            Assignee: Oliver Lietz
>             Fix For: Scripting JSP 2.2.8
>
>         Attachments: apis.patch
>
>
> {{org.apache.sling.scripting.jsp}} embeds {{jsp-api}} and {{el-api}} from 
> Apache Tomcat ({{6.0.14}}) which causes this error.
> {noformat}
> [...]
> [httpclient.wire.header] : << "HTTP/1.1 500 Server Error[\r][\n]"
> [httpclient.wire.header] : << "Content-Type: text/html;charset=utf-8[\r][\n]"
> [httpclient.wire.header] : << "Transfer-Encoding: chunked[\r][\n]"
> [httpclient.wire.header] : << "Server: Jetty(9.3.15.v20161220)[\r][\n]"
> [httpclient.wire.header] : << "[\r][\n]"
> [httpclient.wire.content] : << "B"
> [httpclient.wire.content] : << "5"
> [httpclient.wire.content] : << "1"
> [httpclient.wire.content] : << "[\r]"
> [httpclient.wire.content] : << "[\n]"
> [httpclient.wire.content] : << "<html><head><title>[\n]"
> [httpclient.wire.content] : << "java.lang.VerifyError: Bad type on operand 
> stack[\n]"
> [httpclient.wire.content] : << "Exception Details:[\n]"
> [httpclient.wire.content] : << "  Location:[\n]"
> [httpclient.wire.content] : << "    
> org/apache/sling/scripting/jsp/jasper/runtime/JspApplicationContextImpl.createELResolver()Ljavax/el/ELResolver;
>  @28: invokevirtual[\n]"
> [httpclient.wire.content] : << "  Reason:[\n]"
> [httpclient.wire.content] : << "    Type 
> &apos;javax/servlet/jsp/el/ImplicitObjectELResolver&apos; (current frame, 
> stack[1]) is not assignable to &apos;javax/el/ELResolver&apos;[\n]"
> [httpclient.wire.content] : << "  Current Frame:[\n]"
> [httpclient.wire.content] : << "    bci: @28[\n]"
> [httpclient.wire.content] : << "    flags: { }[\n]"
> [httpclient.wire.content] : << "    locals: { 
> &apos;org/apache/sling/scripting/jsp/jasper/runtime/JspApplicationContextImpl&apos;,
>  &apos;javax/el/CompositeELResolver&apos; }[\n]"
> [httpclient.wire.content] : << "    stack: { 
> &apos;javax/el/CompositeELResolver&apos;, 
> &apos;javax/servlet/jsp/el/ImplicitObjectELResolver&apos; }[\n]"
> [httpclient.wire.content] : << "  Bytecode:[\n]"
> [httpclient.wire.content] : << "    0x0000000: 2a04 b500 062a b400 1dc7 0080 
> bb00 1e59[\n]"
> [httpclient.wire.content] : << "    0x0000010: b700 1f4c 2bbb 0020 59b7 0021 
> b600 222a[\n]"
> [httpclient.wire.content] : << "    0x0000020: b400 05b9 0023 0100 4d2c b900 
> 2401 0099[\n]"
> [httpclient.wire.content] : << "    0x0000030: 0013 2b2c b900 2501 00c0 0026 
> b600 22a7[\n]"
> [httpclient.wire.content] : << "    0x0000040: ffea 2bbb 0027 59b7 0028 b600 
> 222b bb00[\n]"
> [httpclient.wire.content] : << "    0x0000050: 2959 b700 2ab6 0022 2bbb 002b 
> 59b7 002c[\n]"
> [httpclient.wire.content] : << "    0x0000060: b600 222b bb00 2d59 b700 2eb6 
> 0022 2bbb[\n]"
> [httpclient.wire.content] : << "    0x0000070: 002f 59b7 0030 b600 222b bb00 
> 3159 b700[\n]"
> [httpclient.wire.content] : << "    0x0000080: 32b6 0022 2a2b b500 1d2a b400 
> 1db0     [\n]"
> [httpclient.wire.content] : << "  Stackmap Table:[\n]"
> [httpclient.wire.content] : << "    
> append_frame(@41,Object[#112],Object[#113])[\n]"
> [httpclient.wire.content] : << "    chop_frame(@66,1)[\n]"
> [httpclient.wire.content] : << "    chop_frame(@137,1)[\n]"
> [httpclient.wire.content] : << "[\n]"
> [httpclient.wire.content] : << "</title></head><body><h1>[\n]"
> [...]
> {noformat}
> {noformat}
> java.lang.VerifyError: Bad type on operand stack
> Exception Details:
>   Location:
>     
> org/apache/sling/scripting/jsp/jasper/runtime/JspApplicationContextImpl.createELResolver()Ljavax/el/ELResolver;
>  @28: invokevirtual
>   Reason:
>     Type &apos;javax/servlet/jsp/el/ImplicitObjectELResolver&apos; (current 
> frame, stack[1]) is not assignable to &apos;javax/el/ELResolver&apos;
>   Current Frame:
>     bci: @28
>     flags: { }
>     locals: { 
> &apos;org/apache/sling/scripting/jsp/jasper/runtime/JspApplicationContextImpl&apos;,
>  &apos;javax/el/CompositeELResolver&apos; }
>     stack: { &apos;javax/el/CompositeELResolver&apos;, 
> &apos;javax/servlet/jsp/el/ImplicitObjectELResolver&apos; }
>   Bytecode:
>     0x0000000: 2a04 b500 062a b400 1dc7 0080 bb00 1e59
>     0x0000010: b700 1f4c 2bbb 0020 59b7 0021 b600 222a
>     0x0000020: b400 05b9 0023 0100 4d2c b900 2401 0099
>     0x0000030: 0013 2b2c b900 2501 00c0 0026 b600 22a7
>     0x0000040: ffea 2bbb 0027 59b7 0028 b600 222b bb00
>     0x0000050: 2959 b700 2ab6 0022 2bbb 002b 59b7 002c
>     0x0000060: b600 222b bb00 2d59 b700 2eb6 0022 2bbb
>     0x0000070: 002f 59b7 0030 b600 222b bb00 3159 b700
>     0x0000080: 32b6 0022 2a2b b500 1d2a b400 1db0     
>   Stackmap Table:
>     append_frame(@41,Object[#112],Object[#113])
>     chop_frame(@66,1)
>     chop_frame(@137,1)
>       at 
> org.apache.sling.scripting.jsp.jasper.runtime.JspFactoryImpl.getJspApplicationContext(JspFactoryImpl.java:150)
>       at 
> org.apache.sling.scripting.jsp.jasper.compiler.JspRuntimeContext$JspFactoryHandler.getJspApplicationContext(JspRuntimeContext.java:123)
>       at 
> org.apache.jsp.apps.nt.unstructured.html_jsp._jspInit(html_jsp.java:22)
>       at 
> org.apache.sling.scripting.jsp.jasper.runtime.HttpJspBase.init(HttpJspBase.java:52)
>       at 
> org.apache.sling.scripting.jsp.jasper.servlet.JspServletWrapper.loadServlet(JspServletWrapper.java:191)
>       at 
> org.apache.sling.scripting.jsp.jasper.servlet.JspServletWrapper.prepareServlet(JspServletWrapper.java:434)
>       at 
> org.apache.sling.scripting.jsp.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:486)
>       at 
> org.apache.sling.scripting.jsp.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:449)
>       at 
> org.apache.sling.scripting.jsp.JspScriptEngineFactory.callJsp(JspScriptEngineFactory.java:346)
>       at 
> org.apache.sling.scripting.jsp.JspScriptEngineFactory.access$100(JspScriptEngineFactory.java:101)
>       at 
> org.apache.sling.scripting.jsp.JspScriptEngineFactory$JspScriptEngine.eval(JspScriptEngineFactory.java:607)
>       at 
> org.apache.sling.scripting.core.impl.DefaultSlingScript.call(DefaultSlingScript.java:388)
>       at 
> org.apache.sling.scripting.core.impl.DefaultSlingScript.eval(DefaultSlingScript.java:184)
>       at 
> org.apache.sling.scripting.core.impl.DefaultSlingScript.service(DefaultSlingScript.java:491)
>       at 
> org.apache.sling.engine.impl.request.RequestData.service(RequestData.java:552)
>       at 
> org.apache.sling.engine.impl.filter.SlingComponentFilterChain.render(SlingComponentFilterChain.java:44)
>       at 
> org.apache.sling.engine.impl.filter.AbstractSlingFilterChain.doFilter(AbstractSlingFilterChain.java:77)
>       at 
> org.apache.sling.engine.impl.SlingRequestProcessorImpl.processComponent(SlingRequestProcessorImpl.java:282)
>       at 
> org.apache.sling.engine.impl.filter.RequestSlingFilterChain.render(RequestSlingFilterChain.java:49)
>       at 
> org.apache.sling.engine.impl.filter.AbstractSlingFilterChain.doFilter(AbstractSlingFilterChain.java:71)
>       at 
> org.apache.sling.launchpad.testservices.filters.TestFilter.doFilter(TestFilter.java:47)
>       at 
> org.apache.sling.launchpad.testservices.filters.NoPropertyFilter.doFilter(NoPropertyFilter.java:25)
>       at 
> org.apache.sling.engine.impl.filter.AbstractSlingFilterChain.doFilter(AbstractSlingFilterChain.java:68)
>       at 
> org.apache.sling.launchpad.testservices.filters.TestFilter.doFilter(TestFilter.java:47)
>       at 
> org.apache.sling.launchpad.testservices.filters.SlingFilter.doFilter(SlingFilter.java:25)
>       at 
> org.apache.sling.engine.impl.filter.AbstractSlingFilterChain.doFilter(AbstractSlingFilterChain.java:68)
>       at 
> org.apache.sling.engine.impl.debug.RequestProgressTrackerLogFilter.doFilter(RequestProgressTrackerLogFilter.java:107)
>       at 
> org.apache.sling.engine.impl.filter.AbstractSlingFilterChain.doFilter(AbstractSlingFilterChain.java:68)
>       at 
> org.apache.sling.engine.impl.SlingRequestProcessorImpl.doProcessRequest(SlingRequestProcessorImpl.java:151)
>       at 
> org.apache.sling.engine.impl.SlingMainServlet.service(SlingMainServlet.java:219)
>       at 
> org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:837)
>       at 
> org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1772)
>       at 
> org.eclipse.jetty.websocket.server.WebSocketUpgradeFilter.doFilter(WebSocketUpgradeFilter.java:193)
>       at 
> org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1759)
>       at 
> org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:582)
>       at 
> org.ops4j.pax.web.service.jetty.internal.HttpServiceServletHandler.doHandle(HttpServiceServletHandler.java:70)
>       at 
> org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:143)
>       at 
> org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:548)
>       at 
> org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:226)
>       at 
> org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1180)
>       at 
> org.ops4j.pax.web.service.jetty.internal.HttpServiceContext.doHandle(HttpServiceContext.java:284)
>       at 
> org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:512)
>       at 
> org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:185)
>       at 
> org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1112)
>       at 
> org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141)
>       at 
> org.ops4j.pax.web.service.jetty.internal.JettyServerHandlerCollection.handle(JettyServerHandlerCollection.java:80)
>       at 
> org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:134)
>       at org.eclipse.jetty.server.Server.handle(Server.java:534)
>       at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:320)
>       at 
> org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:251)
>       at 
> org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:283)
>       at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:110)
>       at 
> org.eclipse.jetty.io.SelectChannelEndPoint$2.run(SelectChannelEndPoint.java:93)
>       at 
> org.eclipse.jetty.util.thread.strategy.ExecuteProduceConsume.executeProduceConsume(ExecuteProduceConsume.java:303)
>       at 
> org.eclipse.jetty.util.thread.strategy.ExecuteProduceConsume.produceConsume(ExecuteProduceConsume.java:148)
>       at 
> org.eclipse.jetty.util.thread.strategy.ExecuteProduceConsume.run(ExecuteProduceConsume.java:136)
>       at 
> org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:671)
>       at 
> org.eclipse.jetty.util.thread.QueuedThreadPool$2.run(QueuedThreadPool.java:589)
>       at java.lang.Thread.run(Thread.java:745)
> {noformat}



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)

Reply via email to