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

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

I'm not quiet sure what we're trying to fix here. I know that the scripting jsp 
bundle did work in app servers; we did all the testing. With the changes 
already applied the whole setup becomes way more complicated. This error seems 
only to happen when running in Karaf, so maybe we can find a solution that does 
not require changes all over the place and requires additional bundles to be 
added?

> 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
>
>
> {{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