java - Google App Engine - Servlet (Error: Expecting a stackmap frame at branch target 44 in method test.) -
hi have th following servlet in new google app engine (sdk 1.6.6) project on eclipse:
package test; import java.io.ioexception; import java.io.printwriter; import javax.servlet.http.*; @suppresswarnings("serial") public class teststorageservlet extends httpservlet { public void doget(httpservletrequest req, httpservletresponse resp) throws ioexception { resp.setcontenttype("text/plain"); printwriter writer = resp.getwriter(); try { writer.write("hello"); } catch (exception ex) { writer.write("error: " + ex.getmessage()); } { writer.close(); } } } such servlet working fine on tomcat (as normal java web project)m in google app engine project face following 500 error:
http error 500 problem accessing /teststorage. reason: expecting stackmap frame @ branch target 44 in method test.teststorageservlet.doget(ljavax/servlet/http/httpservletrequest;ljavax/servlet/http/httpservletresponse;)v @ offset 25 caused by: java.lang.verifyerror: expecting stackmap frame @ branch target 44 in method test.teststorageservlet.doget(ljavax/servlet/http/httpservletrequest;ljavax/servlet/http/httpservletresponse;)v @ offset 25 @ java.lang.class.getdeclaredconstructors0(native method) @ java.lang.class.privategetdeclaredconstructors(class.java:2404) @ java.lang.class.getconstructor0(class.java:2714) @ java.lang.class.newinstance0(class.java:343) @ java.lang.class.newinstance(class.java:325) @ org.mortbay.jetty.servlet.holder.newinstance(holder.java:153) @ org.mortbay.jetty.servlet.servletholder.initservlet(servletholder.java:428) @ org.mortbay.jetty.servlet.servletholder.getservlet(servletholder.java:339) @ org.mortbay.jetty.servlet.servletholder.handle(servletholder.java:487) @ org.mortbay.jetty.servlet.servlethandler$cachedchain.dofilter(servlethandler.java:1166) @ com.google.appengine.tools.development.headerverificationfilter.dofilter(headerverificationfilter.java:35) @ org.mortbay.jetty.servlet.servlethandler$cachedchain.dofilter(servlethandler.java:1157) @ com.google.appengine.api.blobstore.dev.serveblobfilter.dofilter(serveblobfilter.java:60) @ org.mortbay.jetty.servlet.servlethandler$cachedchain.dofilter(servlethandler.java:1157) @ com.google.apphosting.utils.servlet.transactioncleanupfilter.dofilter(transactioncleanupfilter.java:43) @ org.mortbay.jetty.servlet.servlethandler$cachedchain.dofilter(servlethandler.java:1157) @ com.google.appengine.tools.development.staticfilefilter.dofilter(staticfilefilter.java:122) @ org.mortbay.jetty.servlet.servlethandler$cachedchain.dofilter(servlethandler.java:1157) @ com.google.appengine.tools.development.backendserversfilter.dofilter(backendserversfilter.java:97) @ org.mortbay.jetty.servlet.servlethandler$cachedchain.dofilter(servlethandler.java:1157) @ org.mortbay.jetty.servlet.servlethandler.handle(servlethandler.java:388) @ org.mortbay.jetty.security.securityhandler.handle(securityhandler.java:216) @ org.mortbay.jetty.servlet.sessionhandler.handle(sessionhandler.java:182) @ org.mortbay.jetty.handler.contexthandler.handle(contexthandler.java:765) @ org.mortbay.jetty.webapp.webappcontext.handle(webappcontext.java:418) @ com.google.appengine.tools.development.devappenginewebappcontext.handle(devappenginewebappcontext.java:78) @ org.mortbay.jetty.handler.handlerwrapper.handle(handlerwrapper.java:152) @ com.google.appengine.tools.development.jettycontainerservice$apiproxyhandler.handle(jettycontainerservice.java:369) @ org.mortbay.jetty.handler.handlerwrapper.handle(handlerwrapper.java:152) @ org.mortbay.jetty.server.handle(server.java:326) @ org.mortbay.jetty.httpconnection.handlerequest(httpconnection.java:542) @ org.mortbay.jetty.httpconnection$requesthandler.headercomplete(httpconnection.java:923) @ org.mortbay.jetty.httpparser.parsenext(httpparser.java:547) @ org.mortbay.jetty.httpparser.parseavailable(httpparser.java:212) @ org.mortbay.jetty.httpconnection.handle(httpconnection.java:404) @ org.mortbay.io.nio.selectchannelendpoint.run(selectchannelendpoint.java:409) @ org.mortbay.thread.queuedthreadpool$poolthread.run(queuedthreadpool.java:582) powered jetty://
it seems compiling jdk7. http://java.dzone.com/articles/javalangverifyerror-expecting
try switching jdk6.
update: answer old , not relevant anymore. solution jdk7 seems to add -xx:-usesplitverifier jvm parameters.
see question more info: why getting following error when running google app eclipse?
Comments
Post a Comment