Home
Analytics
Debugging report at Weblogic
Alex{MIIT}
Hello!<br />
<br />
I'm developing java servlet that produces .pdf file using Birt Runtime 3.7.1.<br />
I deployed it on Weblogic 10.3.4.<br />
<br />
I got stuck at following error: <em class='bbc'><org.eclipse.birt.report.engine.api.impl.ReportEngine> <BEA-000000> <Error happened while running the report.<br />
java.lang.IllegalAccessError: tried to access class org/mozilla/javascript/DefaultErrorReporter from class org/mozilla/javascript/CompilerEnvirons</em> (full log in attach)<br />
<br />
I can't debug it locally. I tried all changeLogLevels.<br />
I wonder, if it is some common error, or how to debug such undisruptive error further)<br />
<br />
Thanks a lot!<br />
<br />
Regards,<br />
Alex
Find more posts tagged with
Comments
JasonW
A couple of things to look at. 1- First do you have another copy of js.jar anywhere in the classpath?
2 - Even though you are writting it as a servlet you still may want to look at the WebViewer install to make sure you have similar setup:
http://wiki.eclipse.org/BirtPOJO_Viewer_WebLogic_Deployment
3 - Are you using JAAS. Take a look at this bugzilla entry :
https://bugs.eclipse.org/bugs/show_bug.cgi?id=182161
Jason
FNMKarlan
Was this ever resolved? I am running into a similar issue using the same birt/weblogic versions.<br />
<br />
<br />
<blockquote class='ipsBlockquote' data-author="'JasonW'" data-cid="91474" data-time="1323716563" data-date="12 December 2011 - 12:02 PM"><p>
A couple of things to look at. 1- First do you have another copy of js.jar anywhere in the classpath?<br />
2 - Even though you are writting it as a servlet you still may want to look at the WebViewer install to make sure you have similar setup: <a class='bbc_url' href='
http://wiki.eclipse.org/BirtPOJO_Viewer_WebLogic_Deployment'>http://wiki.eclipse.org/BirtPOJO_Viewer_WebLogic_Deployment</a>
; 3 - Are you using JAAS. Take a look at this bugzilla entry : <a class='bbc_url' href='
https://bugs.eclipse.org/bugs/show_bug.cgi?id=182161'>https://bugs.eclipse.org/bugs/show_bug.cgi?id=182161</a><br
/>
<br />
<br />
Jason<br /></p></blockquote>
JasonW
The user never posted back. Can you give some more details on your issue?
Jason
FNMKarlan
Using Birt 3.7.1<br />
Weblogic 10.3.5<br />
JDK 1.5_11<br />
MyEclipse 10<br />
<br />
Get the following error when trying to run a report<br />
<br />
<pre class='_prettyXprint _lang-auto _linenums:0'>
Error 500--Internal Server Error
java.lang.IllegalAccessError: org/mozilla/javascript/DefaultErrorReporter
at org.mozilla.javascript.CompilerEnvirons.(CompilerEnvirons.java:48)
at org.eclipse.birt.core.data.ExpressionParserUtility.parse(ExpressionParserUtility.java:182)
at org.eclipse.birt.core.data.ExpressionParserUtility.compileColumnExpression(ExpressionParserUtility.java:77)
at org.eclipse.birt.core.data.ExpressionUtil.extractColumnExpressions(ExpressionUtil.java:282)
at org.eclipse.birt.core.data.ExpressionUtil.extractColumnExpressions(ExpressionUtil.java:207)
at org.eclipse.birt.report.model.parser.CompatibleMiscExpressionState.setupBoundDataColumns(CompatibleMiscExpressionState.java:174)
at org.eclipse.birt.report.model.parser.CompatibleMiscExpressionState.end(CompatibleMiscExpressionState.java:96)
at org.eclipse.birt.report.model.util.XMLParserHandler.endElement(XMLParserHandler.java:176)
at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.endElement(AbstractSAXParser.java:601)
at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanEndElement(XMLDocumentFragmentScannerImpl.java:1774)
at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:2930)
at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:648)
at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:510)
at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:807)
at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:737)
at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:107)
at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1205)
at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:522)
at weblogic.xml.jaxp.WebLogicXMLReader.parse(WebLogicXMLReader.java:133)
at weblogic.xml.jaxp.RegistryXMLReader.parse(RegistryXMLReader.java:173)
at javax.xml.parsers.SAXParser.parse(SAXParser.java:395)
at org.eclipse.birt.report.model.parser.ModuleReader.readModule(ModuleReader.java:97)
at org.eclipse.birt.report.model.parser.DesignReader.read(DesignReader.java:88)
at org.eclipse.birt.report.model.core.DesignSessionImpl.openDesign(DesignSessionImpl.java:315)
at org.eclipse.birt.report.model.api.SessionHandleImpl.openDesign(SessionHandleImpl.java:294)
at org.eclipse.birt.report.engine.parser.ReportParser.getDesignHandle(ReportParser.java:158)
at org.eclipse.birt.report.engine.api.impl.ReportEngineHelper.getReportDesignHandle(ReportEngineHelper.java:255)
at org.eclipse.birt.report.engine.api.impl.ReportEngineHelper.openReportDesign(ReportEngineHelper.java:274)
at org.eclipse.birt.report.engine.api.impl.ReportEngine.openReportDesign(ReportEngine.java:616)
at org.eclipse.birt.report.service.ReportEngineService.openReportDesign(ReportEngineService.java:387)
at org.eclipse.birt.report.utility.BirtUtility.getRunnableFromDesignFile(BirtUtility.java:607)
at org.eclipse.birt.report.context.ViewerAttributeBean.getDesignHandle(ViewerAttributeBean.java:641)
at org.eclipse.birt.report.context.ViewerAttributeBean.__init(ViewerAttributeBean.java:224)
at org.eclipse.birt.report.context.BaseAttributeBean.init(BaseAttributeBean.java:233)
at org.eclipse.birt.report.context.ViewerAttributeBean.(ViewerAttributeBean.java:118)
at org.eclipse.birt.report.context.BirtContext.__init(BirtContext.java:44)
at org.eclipse.birt.report.context.BaseContext.(BaseContext.java:69)
at org.eclipse.birt.report.context.BirtContext.(BirtContext.java:30)
at org.eclipse.birt.report.servlet.ViewerServlet.__getContext(ViewerServlet.java:150)
at org.eclipse.birt.report.servlet.BirtSoapMessageDispatcherServlet.doGet(BirtSoapMessageDispatcherServlet.java:151)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:707)
at org.apache.axis.transport.http.AxisServletBase.service(AxisServletBase.java:327)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
at org.eclipse.birt.report.servlet.BirtSoapMessageDispatcherServlet.service(BirtSoapMessageDispatcherServlet.java:122)
at weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:227)
at weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:125)
at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:300)
at weblogic.servlet.internal.TailFilter.doFilter(TailFilter.java:26)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
at org.eclipse.birt.report.filter.ViewerFilter.doFilter(ViewerFilter.java:68)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.wrapRun(WebAppServletContext.java:3715)
at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:3681)
at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:120)
at weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2277)
at weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:2183)
at weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1454)
at weblogic.work.ExecuteThread.execute(ExecuteThread.java:209)
at weblogic.work.ExecuteThread.run(ExecuteThread.java:178)
</pre>
JasonW
Are you sure you do not have js.jar anywhere in the classpath other than BIRT?
You also may want to look at trying the osgi runtime to get around this if you have to have it somewhere else in the classpath:
http://birtworld.blogspot.com/2012/01/birt-runtime-addition.html
Jason
FNMKarlan
Jason, thanks for the help and patience. As far as I can tell, I only have the one js.jar being referenced.
I also noted that my build was using 3.7.0 instead of 3.7.1, so I am going to fix that and see if that makes a difference.
I guess as side question would be:
Is Birt 3.7.x known to be compatible with WebLogic 10.3.x?
JasonW
Yes it should be. Look at the project plan:
http://www.eclipse.org/projects/project-plan.php?planurl=http://www.eclipse.org/birt/project/plan/birt_project_plan_3_7_1.xml#target_environments
Jason
FNMKarlan
I've switched between the two 3.7.0 and 3.7.1 with no joy. Same results.
I'm checking for other js.jars once again to be sure but I'm pretty positive I only have the one.
Is there anything else I can debug to find root cause? I've googled the error in general and didn't get much back.
I can use the same code deployed to Tomcat 6 just fine; however, weblogic is our standard servlet host.
JasonW
What jars do you have in weblogic's common lib?
Have you tried the osgi runtime option that will be available in 3.7.2?
http://birtworld.blogspot.com/2012/01/birt-runtime-addition.html
Jason
FNMKarlan
common lib is empty
all libraries are in the deployed apps
I will take look at the osgi as a last resort. I am weary that if I mix versions, things will break.
But then again, right now nothing is working so maybe it will be an improvement.
JasonW
It would be good to test the osgi version just as a test. Their is some conflicting jar somewhere. At least I believe there is.
Jason
FNMKarlan
I downloaded the osgi, but don't see any documentation on how to use it. Advice? I'm sure there is a readme someplace and I'm just missing it.
JasonW
Look in the runtime directory for the birt.war and try and deploy it. Or re-war the WebViewerExample directory and deploy it.
Jason
FNMKarlan
Deploying the webviewer works but what I'm trying to do is integrate the viewer into an app so there is one deployment.
JasonW
As long as you have the settings in from web.xml, and the lib, platform and webcontent directories you should be able to combine it. What error are you getting?
Jason
FNMKarlan
I was able to finally get the reports to generate.<br />
<br />
I updated the Rhino (js.jar) to 1.7R1 and updated the weblogic.xml to <br />
<br />
<pre class='_prettyXprint _lang-auto _linenums:0'><weblogic-web-app xmlns="http://xmlns.oracle.com/weblogic/weblogic-web-app" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd http://xmlns.oracle.com/weblogic/weblogic-web-app http://xmlns.oracle.com/weblogic/weblogic-web-app/1.2/weblogic-web-app.xsd">
<jsp-descriptor>
<keepgenerated>true</keepgenerated>
<debug>true</debug>
</jsp-descriptor>
<container-descriptor>
<prefer-application-packages>
<package-name>org.mozilla.javascript.*</package-name>
<package-name>org.mozilla.classfile.*</package-name>
</prefer-application-packages>
</container-descriptor>
</weblogic-web-app></pre>
<br />
Thank you Jason for the assistance you provided.