Re: freemarker-gae-pre2 - java.lang.VerifyError on GAE

Attila Szegedi <[email protected]>
Newsgroups gmane.comp.web.freemarker.user
Message-ID <[email protected]>
I opened a defect report with the GAE: <http://code.google.com/p/googleappengine/issues/detail?id=3157>, described it the best I could.

Attila.

On 2010.04.27., at 14:28, Attila Szegedi wrote:

> Hi Sudhir,
> 
> I am sorry to say that I have no idea what does this error message mean. The last point in our code that executes is FreeMarkerJspFactory21.java:13, which evaluates "FreeMarkerJspApplicationContext.class.getName()". Apparently, it will then attempt to load the FreeMarkerJspApplicationContext class, and the class is rejected by Google's verifier with this message "incompatible argument to function".
> 
> Now, <init> is automatically generated by the compiler, as the class has no explicit constructor in the source code. It directly subclasses java.lang.Object, so it's not even the case of having some funky superclass. I can't imagine why would this fail... Try pressing with the App Engine developers.
> 
> Attila.
> 
> On 2010.04.27., at 11:55, [email protected] wrote:
> 
>> I am using freemarker-gae-pre2.jar and I get following error when I deploy to GAE. Its working fine on my local machine
>> I am using spring MVC + freemarker.
>> Error - 
>> 
>> java.lang.VerifyError: (class: freemarker/ext/jsp/FreeMarkerJspApplicationContext, method: <init> signature: ()V) Incompatible argument to function
>> 	at com.google.appengine.runtime.Request.process-814a4fa105eb62da(Request.java)
>> 	at java.lang.Class.forName0(Native Method)
>> 	at java.lang.Class.forName(Class.java:109)
>> 	at freemarker.ext.jsp.FreeMarkerJspFactory21.class$(FreeMarkerJspFactory21.java:13)
>> 	at freemarker.ext.jsp.FreeMarkerJspFactory21.<clinit>(FreeMarkerJspFactory21.java:12)
>> 	at
>> freemarker.ext.jsp.FreeMarkerPageContext21.<clinit>(FreeMarkerPageContext21.java:30)
>> 	at java.lang.Class.forName0(Native Method)
>> 	at java.lang.Class.forName(Class.java:109)
>> 	at freemarker.ext.jsp.PageContextFactory.getPageContextImpl(PageContextFactory.java:21)
>> 	at
>> freemarker.ext.jsp.PageContextFactory.<clinit>(PageContextFactory.java:15)
>> 
>> 	at freemarker.ext.jsp.TagTransformModel.getWriter(TagTransformModel.java:99)
>> 	at freemarker.core.Environment.visit(Environment.java:286)
>> 	at freemarker.core.UnifiedCall.accept(UnifiedCall.java:130)
>> 	at freemarker.core.Environment.visit(Environment.java:210)
>> 	at freemarker.core.Macro$Context.runMacro(Macro.java:172)
>> 	at freemarker.core.Environment.visit(Environment.java:603)
>> 	at freemarker.core.UnifiedCall.accept(UnifiedCall.java:106)
>> 	at freemarker.core.Environment.visit(Environment.java:210)
>> 	at freemarker.core.MixedContent.accept(MixedContent.java:92)
>> 	at
>> freemarker.core.Environment.visit(Environment.java:210)
>> 	at freemarker.core.Environment.process(Environment.java:190)
>> 	at freemarker.template.Template.process(Template.java:256)
>> 	at
>> org.springframework.web.servlet.view.freemarker.FreeMarkerView.processTemplate(FreeMarkerView.java:366)
>> 
>> 	at org.springframework.web.servlet.view.freemarker.FreeMarkerView.doRender(FreeMarkerView.java:283)
>> 	at org.springframework.web.servlet.view.freemarker.FreeMarkerView.renderMergedTemplateModel(FreeMarkerView.java:233)
>> 	at org.springframework.web.servlet.view.AbstractTemplateView.renderMergedOutputModel(AbstractTemplateView.java:167)
>> 	at org.springframework.web.servlet.view.AbstractView.render(AbstractView.java:250)
>> 	at org.springframework.web.servlet.DispatcherServlet.render(DispatcherServlet.java:1060)
>> 	at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:798)
>> 	at
>> org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:716)
>> 	at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:644)
>> 	at
>> org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:549)
>> 
>> 	at javax.servlet.http.HttpServlet.service(HttpServlet.java:693)
>> 	at javax.servlet.http.HttpServlet.service(HttpServlet.java:806)
>> 	at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:511)
>> 	at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1166)
>> 	at com.google.apphosting.utils.servlet.ParseBlobUploadFilter.doFilter(ParseBlobUploadFilter.java:97)
>> 	at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
>> 	at com.google.apphosting.runtime.jetty.SaveSessionFilter.doFilter(SaveSessionFilter.java:35)
>> 	at
>> org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
>> 	at com.google.apphosting.utils.servlet.TransactionCleanupFilter.doFilter(TransactionCleanupFilter.java:43)
>> 	at
>> org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
>> 
>> 	at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:388)
>> 	at org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216)
>> 	at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:182)
>> 	at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:765)
>> 	at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:418)
>> 	at com.google.apphosting.runtime.jetty.AppVersionHandlerMap.handle(AppVersionHandlerMap.java:238)
>> 	at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)
>> 	at org.mortbay.jetty.Server.handle(Server.java:326)
>> 	at
>> org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:542)
>> 	at org.mortbay.jetty.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:923)
>> 	at
>> com.google.apphosting.runtime.jetty.RpcRequestParser.parseAvailable(RpcRequestParser.java:76)
>> 
>> 	at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:404)
>> 	at com.google.apphosting.runtime.jetty.JettyServletEngineAdapter.serviceRequest(JettyServletEngineAdapter.java:135)
>> 	at com.google.apphosting.runtime.JavaRuntime.handleRequest(JavaRuntime.java:243)
>> 	at com.google.apphosting.base.RuntimePb$EvaluationRuntime$6.handleBlockingRequest(RuntimePb.java:5838)
>> 	at com.google.apphosting.base.RuntimePb$EvaluationRuntime$6.handleBlockingRequest(RuntimePb.java:5836)
>> 	at com.google.net.rpc.impl.BlockingApplicationHandler.handleRequest(BlockingApplicationHandler.java:24)
>> 	at com.google.net.rpc.impl.RpcUtil.runRpcInApplication(RpcUtil.java:398)
>> 	at
>> com.google.net.rpc.impl.Server$2.run(Server.java:852)
>> 	at com.google.tracing.LocalTraceSpanRunnable.run(LocalTraceSpanRunnable.java:56)
>> 	at
>> com.google.tracing.LocalTraceSpanBuilder.internalContinueSpan(LocalTraceSpanBuilder.java:576)
>> 
>> 	at com.google.net.rpc.impl.Server.startRpc(Server.java:807)
>> 	at com.google.net.rpc.impl.Server.processRequest(Server.java:369)
>> 	at com.google.net.rpc.impl.ServerConnection.messageReceived(ServerConnection.java:442)
>> 	at com.google.net.rpc.impl.RpcConnection.parseMessages(RpcConnection.java:319)
>> 	at com.google.net.rpc.impl.RpcConnection.dataReceived(RpcConnection.java:290)
>> 	at com.google.net.async.Connection.handleReadEvent(Connection.java:474)
>> 	at com.google.net.async.EventDispatcher.processNetworkEvents(EventDispatcher.java:831)
>> 	at com.google.net.async.EventDispatcher.internalLoop(EventDispatcher.java:207)
>> 	at com.google.net.async.EventDispatcher.loop(EventDispatcher.java:103)
>> 	at
>> com.google.net.rpc.RpcService.runUntilServerShutdown(RpcService.java:251)
>> 	at
>> com.google.apphosting.runtime.JavaRuntime$RpcRunnable.run(JavaRuntime.java:404)
>> 
>> 	at java.lang.Thread.run(Unknown Source)
>> 
>>  Any idea? workaround?
>> 
>> 
>> Sudhir Nimavat
>> Senior software engineer. 
>> Quick start global PVT LTD.
>> Baroda - 390007 Gujarat, India
>> http://www.jsptube.com
>> 
>> 
>> Gujarat, India
>> 
>> Warning: Spelling errors in this message are the product of a poor school system. Pay teachers more than athletes..






------------------------------------------------------------------------------
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.