Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.

Bug 339516

Summary: GWT RPC fails when BIRT tries to run the report: Could not initialize class org.eclipse.birt.chart.reportitem.i18n.Messages
Product: z_Archived Reporter: Olly <a.zuniga>
Component: BIRTAssignee: Birt-Chart-inbox <Birt-Chart-inbox>
Status: NEW --- QA Contact: Xiaoying Gu <bluesoldier>
Severity: normal    
Priority: P3 CC: bluesoldier
Version: unspecified   
Target Milestone: ---   
Hardware: PC   
OS: Linux   
Whiteboard:

Description Olly CLA 2011-03-10 08:39:43 EST
Build Identifier: 20100617-1415

I am trying to run a report on the server side of my GWT app when a certain RPC takes place. So the client clicks a button and then on the server side the report is run. I get to the point where I call task.run() and this is when I get the error. I know that the BIRT code is sound because if I separate it and add a main method and run it on its own it runs fine. This error may be related in a way to bug 203703 but that deals with Websphere where I'm just running a GWT webapp. 
Here is my stack trace:

 [WARN] Exception while dispatching incoming RPC call
com.google.gwt.user.server.rpc.UnexpectedException: Service method 'public abstract java.lang.String com.gwt.ReportGeneration.client.ReportGenerationService.getReport(java.lang.String)' threw an unexpected exception: java.lang.NoClassDefFoundError: Could not initialize class org.eclipse.birt.chart.reportitem.i18n.Messages
	at com.google.gwt.user.server.rpc.RPC.encodeResponseForFailure(RPC.java:378)
	at com.google.gwt.user.server.rpc.RPC.invokeAndEncodeResponse(RPC.java:581)
	at com.google.gwt.user.server.rpc.RemoteServiceServlet.processCall(RemoteServiceServlet.java:207)
	at com.google.gwt.user.server.rpc.RemoteServiceServlet.processPost(RemoteServiceServlet.java:243)
	at com.google.gwt.user.server.rpc.AbstractRemoteServiceServlet.doPost(AbstractRemoteServiceServlet.java:62)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:637)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
	at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:487)
	at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:362)
	at org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216)
	at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:181)
	at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:729)
	at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:405)
	at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)
	at org.mortbay.jetty.handler.RequestLogHandler.handle(RequestLogHandler.java:49)
	at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)
	at org.mortbay.jetty.Server.handle(Server.java:324)
	at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:505)
	at org.mortbay.jetty.HttpConnection$RequestHandler.content(HttpConnection.java:843)
	at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:647)
	at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:211)
	at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:380)
	at org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:395)
	at org.mortbay.thread.QueuedThreadPool$PoolThread.run(QueuedThreadPool.java:488)
Caused by: java.lang.NoClassDefFoundError: Could not initialize class org.eclipse.birt.chart.reportitem.i18n.Messages
	at org.eclipse.birt.chart.reportitem.ChartReportItemImpl.validate(ChartReportItemImpl.java:776)
	at org.eclipse.birt.report.model.api.validators.ExtensionValidator.doValidate(ExtensionValidator.java:142)
	at org.eclipse.birt.report.model.api.validators.ExtensionValidator.validate(ExtensionValidator.java:81)
	at org.eclipse.birt.report.model.validators.ValidationNode.perform(ValidationNode.java:133)
	at org.eclipse.birt.report.model.validators.ValidationExecutor.perform(ValidationExecutor.java:79)
	at org.eclipse.birt.report.model.core.DesignElement.validateWithContents(DesignElement.java:2121)
	at org.eclipse.birt.report.model.core.DesignElement.validateWithContents(DesignElement.java:2130)
	at org.eclipse.birt.report.model.core.Module.semanticCheck(Module.java:1168)
	at org.eclipse.birt.report.model.core.LayoutModuleImpl.semanticCheck(LayoutModuleImpl.java:301)
	at org.eclipse.birt.report.model.core.LayoutModuleImpl.doClone(LayoutModuleImpl.java:1071)
	at org.eclipse.birt.report.model.elements.ReportDesignImpl.doClone(ReportDesignImpl.java:309)
	at org.eclipse.birt.report.model.api.ModuleHandle.copy(ModuleHandle.java:3050)
	at org.eclipse.birt.report.engine.api.impl.ReportRunnable.cloneRunnable(ReportRunnable.java:132)
	at org.eclipse.birt.report.engine.api.impl.EngineTask.prepareDesign(EngineTask.java:1743)
	at org.eclipse.birt.report.engine.api.impl.RunAndRenderTask.doRun(RunAndRenderTask.java:99)
	at org.eclipse.birt.report.engine.api.impl.RunAndRenderTask.run(RunAndRenderTask.java:77)
	at com.gwt.ReportGeneration.server.ExecuteReport.runReport(ExecuteReport.java:165)
	at com.gwt.ReportGeneration.server.ReportGenerationServiceImpl.getReport(ReportGenerationServiceImpl.java:31)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
	at java.lang.reflect.Method.invoke(Method.java:597)
	at com.google.gwt.user.server.rpc.RPC.invokeAndEncodeResponse(RPC.java:562)
	... 22 more
[ERROR] 500 - POST /com.gwt.ReportGeneration.ReportGeneration/report (127.0.0.1) 57 bytes
   Request headers
      Host: 127.0.0.1:8888
      User-Agent: Mozilla/5.0 (X11; U; Linux i686 (x86_64); en-US; rv:1.9.2.13) Gecko/20101203 Firefox/3.6.13
      Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
      Accept-Language: en-us,en;q=0.5
      Accept-Encoding: gzip,deflate
      Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7
      Keep-Alive: 115
      Connection: keep-alive
      X-GWT-Permutation: HostedMode
      X-GWT-Module-Base: http://127.0.0.1:8888/com.gwt.ReportGeneration.ReportGeneration/
      Content-Type: text/x-gwt-rpc; charset=utf-8
      Referer: http://127.0.0.1:8888/ReportGeneration.html?gwt.codesvr=127.0.0.1:9997
      Content-Length: 212
      Pragma: no-cache
      Cache-Control: no-cache
   Response headers
      Content-Type: text/plain
com.google.gwt.user.client.rpc.StatusCodeException: 500 The call failed on the server; see server log for details
	at com.google.gwt.user.client.rpc.impl.RequestCallbackAdapter.onResponseReceived(RequestCallbackAdapter.java:192)
	at com.google.gwt.http.client.Request.fireOnResponseReceived(Request.java:287)
	at com.google.gwt.http.client.RequestBuilder$1.onReadyStateChange(RequestBuilder.java:395)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
	at java.lang.reflect.Method.invoke(Method.java:597)
	at com.google.gwt.dev.shell.MethodAdaptor.invoke(MethodAdaptor.java:103)
	at com.google.gwt.dev.shell.MethodDispatch.invoke(MethodDispatch.java:71)
	at com.google.gwt.dev.shell.OophmSessionHandler.invoke(OophmSessionHandler.java:157)
	at com.google.gwt.dev.shell.BrowserChannelServer.reactToMessagesWhileWaitingForReturn(BrowserChannelServer.java:326)
	at com.google.gwt.dev.shell.BrowserChannelServer.invokeJavascript(BrowserChannelServer.java:207)
	at com.google.gwt.dev.shell.ModuleSpaceOOPHM.doInvoke(ModuleSpaceOOPHM.java:126)
	at com.google.gwt.dev.shell.ModuleSpace.invokeNative(ModuleSpace.java:561)
	at com.google.gwt.dev.shell.ModuleSpace.invokeNativeObject(ModuleSpace.java:269)
	at com.google.gwt.dev.shell.JavaScriptHost.invokeNativeObject(JavaScriptHost.java:91)
	at com.google.gwt.core.client.impl.Impl.apply(Impl.java)
	at com.google.gwt.core.client.impl.Impl.entry0(Impl.java:214)
	at sun.reflect.GeneratedMethodAccessor16.invoke(Unknown Source)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
	at java.lang.reflect.Method.invoke(Method.java:597)
	at com.google.gwt.dev.shell.MethodAdaptor.invoke(MethodAdaptor.java:103)
	at com.google.gwt.dev.shell.MethodDispatch.invoke(MethodDispatch.java:71)
	at com.google.gwt.dev.shell.OophmSessionHandler.invoke(OophmSessionHandler.java:157)
	at com.google.gwt.dev.shell.BrowserChannelServer.reactToMessages(BrowserChannelServer.java:281)
	at com.google.gwt.dev.shell.BrowserChannelServer.processConnection(BrowserChannelServer.java:531)
	at com.google.gwt.dev.shell.BrowserChannelServer.run(BrowserChannelServer.java:352)
	at java.lang.Thread.run(Thread.java:619)


Reproducible: Always

Steps to Reproduce:
1.Create a GWT Webapp
2.Create a asynchronous RPC on the client side
3.Create the RPC on the server side
4. Try and programmatically  run a report then you will get the error.