Discussions
Categories
Groups
Community Home
Categories
INTERNAL ENABLEMENT
POPULAR
PUBLIC CLOUD
PRIVATE CLOUD
Quick Links
MY LINKS
HELPFUL TIPS
Back to website
Home
Intelligence (Analytics)
Using the birt.controls.lib_2.5.2.1.jar on AIX
lenburt
<p>Hello out there - over the past few months, i have posted various questions about using the rotating Text object available in this Plugin. It has worked like a charm in our deployed development environment Windows/JBoss but were have just now tried it on our testing environment which is WebSphere/AIX.</p>
<p> </p>
<p>Under JBoss, the plugin jar is deployed to the same directory as the BIRT runtime and the functionality works fine.</p>
<p> </p>
<p>On WebSphere, we see it is deployed along with the BIRT runtime as well. The problem is that when the BIRT engine (4.2.2) attempts to resolve the rotating text object, it fails with a somewhat cryptic stack trace shown below.</p>
<p> </p>
<p>This is exactly what happens under JBoss if that jar is missing from the deployment. I guess my question is how does the BIRT engine attempt to resolve external plugins objects under unix?...is this a classpath issue?</p>
<p> </p>
<p>regards, len</p>
<p> </p>
<p> </p>
<p> </p>
<p> </p>
<div>Caused by: java.lang.NullPointerException</div>
<div>at org.eclipse.birt.report.engine.presentation.LocalizedContentVisitor.processExtendedContent(LocalizedContentVisitor.java:973)</div>
<div>at org.eclipse.birt.report.engine.presentation.LocalizedContentVisitor.localizeForeign(LocalizedContentVisitor.java:588)</div>
<div>at org.eclipse.birt.report.engine.presentation.LocalizedContentVisitor.localize(LocalizedContentVisitor.java:173)</div>
<div>at org.eclipse.birt.report.engine.internal.executor.l18n.LocalizedReportItemExecutor.execute(LocalizedReportItemExecutor.java:37)</div>
<div>at org.eclipse.birt.report.engine.layout.html.HTMLBlockStackingLM.layoutNodes(HTMLBlockStackingLM.java:65)</div>
<div>at org.eclipse.birt.report.engine.layout.html.HTMLStackingLM.layoutChildren(HTMLStackingLM.java:26)</div>
<div>at org.eclipse.birt.report.engine.layout.html.HTMLAbstractLM.layout(HTMLAbstractLM.java:140)</div>
<div>at org.eclipse.birt.report.engine.layout.html.HTMLInlineStackingLM.resumeLayout(HTMLInlineStackingLM.java:111)</div>
<div>at org.eclipse.birt.report.engine.layout.html.HTMLInlineStackingLM.layoutNodes(HTMLInlineStackingLM.java:160)</div>
<div>at org.eclipse.birt.report.engine.layout.html.HTMLStackingLM.layoutChildren(HTMLStackingLM.java:26)</div>
<div>at org.eclipse.birt.report.engine.layout.html.HTMLAbstractLM.layout(HTMLAbstractLM.java:140)</div>
<div>at org.eclipse.birt.report.engine.layout.html.HTMLBlockStackingLM.layoutNodes(HTMLBlockStackingLM.java:70)</div>
<div>at org.eclipse.birt.report.engine.layout.html.HTMLStackingLM.layoutChildren(HTMLStackingLM.java:26)</div>
<div>at org.eclipse.birt.report.engine.layout.html.HTMLTableBandLM.layoutChildren(HTMLTableBandLM.java:67)</div>
<div>at org.eclipse.birt.report.engine.layout.html.HTMLAbstractLM.layout(HTMLAbstractLM.java:140)</div>
<div>at org.eclipse.birt.report.engine.layout.html.HTMLBlockStackingLM.layoutNodes(HTMLBlockStackingLM.java:70)</div>
<div>at org.eclipse.birt.report.engine.layout.html.HTMLStackingLM.layoutChildren(HTMLStackingLM.java:26)</div>
<div>at org.eclipse.birt.report.engine.layout.html.HTMLTableLM.layoutChildren(HTMLTableLM.java:132)</div>
<div>at org.eclipse.birt.report.engine.layout.html.HTMLAbstractLM.layout(HTMLAbstractLM.java:140)</div>
<div>at org.eclipse.birt.report.engine.layout.html.HTMLBlockStackingLM.layoutNodes(HTMLBlockStackingLM.java:48)</div>
<div>at org.eclipse.birt.report.engine.layout.html.HTMLPageLM.layout(HTMLPageLM.java:92)</div>
<div>at org.eclipse.birt.report.engine.layout.html.HTMLReportLayoutEngine.layout(HTMLReportLayoutEngine.java:100)</div>
<div>at org.eclipse.birt.report.engine.api.impl.RunAndRenderTask.doRun(RunAndRenderTask.java:181)</div>
<div> </div>
Find more posts tagged with
Comments
JFreeman
<p>Is that the entire stack trace?</p>
<p> </p>
<p>If that is the same error you were getting with the library missing from JBOSS then I would guess it could be a class path related issue with the library not being able to be loaded in the web sphere deployment.</p>
<p> </p>
<p>Is there another library directory in the web sphere class path that the jar may need to be copied into?</p>
lenburt
<p>Jesse -</p>
<p> </p>
<p>This is the directory where i have the plugin jar -- there are a ton of other birt and appache jars in here as well so i am thinking this is the right place.</p>
<p> </p>
<p>When the BIRT engine initializes it points me here....</p>
<p> </p>
<p><span style="font-size:medium;"><span style="font-family:calibri;">/opt/apps/asa/wasprofile85/profile/dwas85pf05/installedApps/dvawascell01/cacs-dcgicacscluster01.ear/APP-INF/lib</span></span></p>
<p> </p>
<p><span style="font-size:medium;"><span style="font-family:calibri;">I am trying to figure out how the Engine tryies to resolve plugin controls.</span></span></p>
<p> </p>
<p><span style="font-size:medium;"><span style="font-family:calibri;">Here is the complete stack trace.....but i felt that the first part is really just our code which is inviking the Engine...when i remove the rotating object from the letter it works like a charm.</span></span></p>
<p><span style="font-size:medium;"><span style="font-family:calibri;">Any help you can provide would be great. thx.</span></span></p>
<p> </p>
<p><span style="font-size:medium;"><span style="font-family:calibri;"><span style="font-size:9pt;"><span style="font-family:'courier new';">03 Sep 2015 12:45:45.933 [SIBJMSRAThreadPool : 1] ERROR com.cgi.eci.common.document.BirtGenerateDocumentUtils - Internal BIRT failure in pymt_made_still_past_due_en.rptdesign for the document C166PYMT184306</span></span></span></span></p>
<p><span style="font-size:medium;"><span style="font-family:calibri;"><span style="font-size:9pt;"><span style="font-family:'courier new';">org.eclipse.birt.report.engine.api.EngineException: Error happened while running the report.</span></span></span></span></p>
<p><span style="font-size:medium;"><span style="font-family:calibri;"><span style="font-size:9pt;"><span style="font-family:'courier new';"> at org.eclipse.birt.report.engine.api.impl.EngineTask.handleFatalExceptions(EngineTask.java:2329)</span></span></span></span></p>
<p><span style="font-size:medium;"><span style="font-family:calibri;"><span style="font-size:9pt;"><span style="font-family:'courier new';"> at org.eclipse.birt.report.engine.api.impl.RunAndRenderTask.doRun(RunAndRenderTask.java:191)</span></span></span></span></p>
<p><span style="font-size:medium;"><span style="font-family:calibri;"><span style="font-size:9pt;"><span style="font-family:'courier new';"> at org.eclipse.birt.report.engine.api.impl.RunAndRenderTask.run(RunAndRenderTask.java:77)</span></span></span></span></p>
<p><span style="font-size:medium;"><span style="font-family:calibri;"><span style="font-size:9pt;"><span style="font-family:'courier new';"> at com.cgi.eci.common.document.BirtGenerateDocumentUtils.generateDocument(BirtGenerateDocumentUtils.java:310)</span></span></span></span></p>
<p><span style="font-size:medium;"><span style="font-family:calibri;"><span style="font-size:9pt;"><span style="font-family:'courier new';"> at com.cgi.ec.business.util.DocPrepOnlineUtils.generateStoreAndReturnDocument(DocPrepOnlineUtils.java:3890)</span></span></span></span></p>
<p><span style="font-size:medium;"><span style="font-family:calibri;"><span style="font-size:9pt;"><span style="font-family:'courier new';"> at com.cgi.ec.server.impl.CaseProcessingAsynchServer_Impl.asynchAddDocumentRequestHandlerImpl(CaseProcessingAsynchServer_Impl.java:291)</span></span></span></span></p>
<p><span style="font-size:medium;"><span style="font-family:calibri;"><span style="font-size:9pt;"><span style="font-family:'courier new';"> at com.cgi.ec.server.CaseProcessingAsynchServer_Base.asynchAddDocumentRequestHandler(CaseProcessingAsynchServer_Base.java:122)</span></span></span></span></p>
<p><span style="font-size:medium;"><span style="font-family:calibri;"><span style="font-size:9pt;"><span style="font-family:'courier new';"> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)</span></span></span></span></p>
<p><span style="font-size:medium;"><span style="font-family:calibri;"><span style="font-size:9pt;"><span style="font-family:'courier new';"> at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:95)</span></span></span></span></p>
<p><span style="font-size:medium;"><span style="font-family:calibri;"><span style="font-size:9pt;"><span style="font-family:'courier new';"> at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:56)</span></span></span></span></p>
<p><span style="font-size:medium;"><span style="font-family:calibri;"><span style="font-size:9pt;"><span style="font-family:'courier new';"> at java.lang.reflect.Method.invoke(Method.java:620)</span></span></span></span></p>
<p><span style="font-size:medium;"><span style="font-family:calibri;"><span style="font-size:9pt;"><span style="font-family:'courier new';"> at com.ams.core.server.ServerProxyHandler.invoke(ServerProxyHandler.java:420)</span></span></span></span></p>
<p><span style="font-size:medium;"><span style="font-family:calibri;"><span style="font-size:9pt;"><span style="font-family:'courier new';"> at com.sun.proxy.$Proxy86.asynchAddDocumentRequestHandler(Unknown Source)</span></span></span></span></p>
<p><span style="font-size:medium;"><span style="font-family:calibri;"><span style="font-size:9pt;"><span style="font-family:'courier new';"> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)</span></span></span></span></p>
<p><span style="font-size:medium;"><span style="font-family:calibri;"><span style="font-size:9pt;"><span style="font-family:'courier new';"> at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:95)</span></span></span></span></p>
<p><span style="font-size:medium;"><span style="font-family:calibri;"><span style="font-size:9pt;"><span style="font-family:'courier new';"> at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:56)</span></span></span></span></p>
<p><span style="font-size:medium;"><span style="font-family:calibri;"><span style="font-size:9pt;"><span style="font-family:'courier new';"> at java.lang.reflect.Method.invoke(Method.java:620)</span></span></span></span></p>
<p><span style="font-size:medium;"><span style="font-family:calibri;"><span style="font-size:9pt;"><span style="font-family:'courier new';"> at com.ams.core.service.LocalServiceProxyHandler.invoke(LocalServiceProxyHandler.java:166)</span></span></span></span></p>
<p><span style="font-size:medium;"><span style="font-family:calibri;"><span style="font-size:9pt;"><span style="font-family:'courier new';"> at com.ams.core.service.ServiceProxyHandler.invoke(ServiceProxyHandler.java:195)</span></span></span></span></p>
<p><span style="font-size:medium;"><span style="font-family:calibri;"><span style="font-size:9pt;"><span style="font-family:'courier new';"> at com.sun.proxy.$Proxy90.genericInvoke(Unknown Source)</span></span></span></span></p>
<p><span style="font-size:medium;"><span style="font-family:calibri;"><span style="font-size:9pt;"><span style="font-family:'courier new';"> at com.ams.core.server.impl.AsyncProcessServer_Impl.callAsyncMethod(AsyncProcessServer_Impl.java:283)</span></span></span></span></p>
<p><span style="font-size:medium;"><span style="font-family:calibri;"><span style="font-size:9pt;"><span style="font-family:'courier new';"> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)</span></span></span></span></p>
<p><span style="font-size:medium;"><span style="font-family:calibri;"><span style="font-size:9pt;"><span style="font-family:'courier new';"> at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:95)</span></span></span></span></p>
<p><span style="font-size:medium;"><span style="font-family:calibri;"><span style="font-size:9pt;"><span style="font-family:'courier new';"> at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:56)</span></span></span></span></p>
<p><span style="font-size:medium;"><span style="font-family:calibri;"><span style="font-size:9pt;"><span style="font-family:'courier new';"> at java.lang.reflect.Method.invoke(Method.java:620)</span></span></span></span></p>
<p><span style="font-size:medium;"><span style="font-family:calibri;"><span style="font-size:9pt;"><span style="font-family:'courier new';"> at com.ams.core.server.ServerProxyHandler.invoke(ServerProxyHandler.java:420)</span></span></span></span></p>
<p><span style="font-size:medium;"><span style="font-family:calibri;"><span style="font-size:9pt;"><span style="font-family:'courier new';"> at com.sun.proxy.$Proxy93.callAsyncMethod(Unknown Source)</span></span></span></span></p>
<p><span style="font-size:medium;"><span style="font-family:calibri;"><span style="font-size:9pt;"><span style="font-family:'courier new';"> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)</span></span></span></span></p>
<p><span style="font-size:medium;"><span style="font-family:calibri;"><span style="font-size:9pt;"><span style="font-family:'courier new';"> at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:95)</span></span></span></span></p>
<p><span style="font-size:medium;"><span style="font-family:calibri;"><span style="font-size:9pt;"><span style="font-family:'courier new';"> at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:56)</span></span></span></span></p>
<p><span style="font-size:medium;"><span style="font-family:calibri;"><span style="font-size:9pt;"><span style="font-family:'courier new';"> at java.lang.reflect.Method.invoke(Method.java:620)</span></span></span></span></p>
<p><span style="font-size:medium;"><span style="font-family:calibri;"><span style="font-size:9pt;"><span style="font-family:'courier new';"> at com.ams.core.service.LocalServiceProxyHandler.invoke(LocalServiceProxyHandler.java:166)</span></span></span></span></p>
<p><span style="font-size:medium;"><span style="font-family:calibri;"><span style="font-size:9pt;"><span style="font-family:'courier new';"> at com.ams.core.service.ServiceProxyHandler.invoke(ServiceProxyHandler.java:195)</span></span></span></span></p>
<p><span style="font-size:medium;"><span style="font-family:calibri;"><span style="font-size:9pt;"><span style="font-family:'courier new';"> at com.sun.proxy.$Proxy90.callAsyncMethod(Unknown Source)</span></span></span></span></p>
<p><span style="font-size:medium;"><span style="font-family:calibri;"><span style="font-size:9pt;"><span style="font-family:'courier new';"> at com.ams.core.server.impl.AsyncProcessServer_Impl.processAsyncMessage(AsyncProcessServer_Impl.java:526)</span></span></span></span></p>
<p><span style="font-size:medium;"><span style="font-family:calibri;"><span style="font-size:9pt;"><span style="font-family:'courier new';"> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)</span></span></span></span></p>
<p><span style="font-size:medium;"><span style="font-family:calibri;"><span style="font-size:9pt;"><span style="font-family:'courier new';"> at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:95)</span></span></span></span></p>
<p><span style="font-size:medium;"><span style="font-family:calibri;"><span style="font-size:9pt;"><span style="font-family:'courier new';"> at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:56)</span></span></span></span></p>
<p><span style="font-size:medium;"><span style="font-family:calibri;"><span style="font-size:9pt;"><span style="font-family:'courier new';"> at java.lang.reflect.Method.invoke(Method.java:620)</span></span></span></span></p>
<p><span style="font-size:medium;"><span style="font-family:calibri;"><span style="font-size:9pt;"><span style="font-family:'courier new';"> at com.ams.core.server.ServerProxyHandler.invoke(ServerProxyHandler.java:420)</span></span></span></span></p>
<p><span style="font-size:medium;"><span style="font-family:calibri;"><span style="font-size:9pt;"><span style="font-family:'courier new';"> at com.sun.proxy.$Proxy93.processAsyncMessage(Unknown Source)</span></span></span></span></p>
<p><span style="font-size:medium;"><span style="font-family:calibri;"><span style="font-size:9pt;"><span style="font-family:'courier new';"> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)</span></span></span></span></p>
<p><span style="font-size:medium;"><span style="font-family:calibri;"><span style="font-size:9pt;"><span style="font-family:'courier new';"> at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:95)</span></span></span></span></p>
<p><span style="font-size:medium;"><span style="font-family:calibri;"><span style="font-size:9pt;"><span style="font-family:'courier new';"> at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:56)</span></span></span></span></p>
<p><span style="font-size:medium;"><span style="font-family:calibri;"><span style="font-size:9pt;"><span style="font-family:'courier new';"> at java.lang.reflect.Method.invoke(Method.java:620)</span></span></span></span></p>
<p><span style="font-size:medium;"><span style="font-family:calibri;"><span style="font-size:9pt;"><span style="font-family:'courier new';"> at com.ams.core.service.LocalServiceProxyHandler.invoke(LocalServiceProxyHandler.java:166)</span></span></span></span></p>
<p><span style="font-size:medium;"><span style="font-family:calibri;"><span style="font-size:9pt;"><span style="font-family:'courier new';"> at com.ams.core.service.ServiceProxyHandler.invoke(ServiceProxyHandler.java:195)</span></span></span></span></p>
<p><span style="font-size:medium;"><span style="font-family:calibri;"><span style="font-size:9pt;"><span style="font-family:'courier new';"> at com.sun.proxy.$Proxy90.processAsyncMessage(Unknown Source)</span></span></span></span></p>
<p><span style="font-size:medium;"><span style="font-family:calibri;"><span style="font-size:9pt;"><span style="font-family:'courier new';"> at com.ams.core.ejb.mdb.AsyncMessageMDB.processMessage(AsyncMessageMDB.java:94)</span></span></span></span></p>
<p><span style="font-size:medium;"><span style="font-family:calibri;"><span style="font-size:9pt;"><span style="font-family:'courier new';"> at com.ams.core.ejb.mdb.AsyncMessageMDB.access$000(AsyncMessageMDB.java:19)</span></span></span></span></p>
<p><span style="font-size:medium;"><span style="font-family:calibri;"><span style="font-size:9pt;"><span style="font-family:'courier new';"> at com.ams.core.ejb.mdb.AsyncMessageMDB$1.run(AsyncMessageMDB.java:46)</span></span></span></span></p>
<p><span style="font-size:medium;"><span style="font-family:calibri;"><span style="font-size:9pt;"><span style="font-family:'courier new';"> at java.security.AccessController.doPrivileged(AccessController.java:303)</span></span></span></span></p>
<p><span style="font-size:medium;"><span style="font-family:calibri;"><span style="font-size:9pt;"><span style="font-family:'courier new';"> at javax.security.auth.Subject.doAs(Subject.java:494)</span></span></span></span></p>
<p><span style="font-size:medium;"><span style="font-family:calibri;"><span style="font-size:9pt;"><span style="font-family:'courier new';"> at com.ibm.websphere.security.auth.WSSubject.doAs(WSSubject.java:132)</span></span></span></span></p>
<p><span style="font-size:medium;"><span style="font-family:calibri;"><span style="font-size:9pt;"><span style="font-family:'courier new';"> at com.ibm.websphere.security.auth.WSSubject.doAs(WSSubject.java:90)</span></span></span></span></p>
<p><span style="font-size:medium;"><span style="font-family:calibri;"><span style="font-size:9pt;"><span style="font-family:'courier new';"> at com.ams.core.appserver.WebSphereCommonUtil.doAsSubject(WebSphereCommonUtil.java:303)</span></span></span></span></p>
<p><span style="font-size:medium;"><span style="font-family:calibri;"><span style="font-size:9pt;"><span style="font-family:'courier new';"> at com.ams.core.appserver.enterprise.WebSphereAppServerUtil.doAsSubject(WebSphereAppServerUtil.java:102)</span></span></span></span></p>
<p><span style="font-size:medium;"><span style="font-family:calibri;"><span style="font-size:9pt;"><span style="font-family:'courier new';"> at com.ams.core.ejb.mdb.AsyncMessageMDB.handleMessage(AsyncMessageMDB.java:44)</span></span></span></span></p>
<p><span style="font-size:medium;"><span style="font-family:calibri;"><span style="font-size:9pt;"><span style="font-family:'courier new';"> at com.ams.core.ejb.mdb.AbstractMDB.onMessage(AbstractMDB.java:48)</span></span></span></span></p>
<p><span style="font-size:medium;"><span style="font-family:calibri;"><span style="font-size:9pt;"><span style="font-family:'courier new';"> at com.ibm.ejs.container.WASMessageEndpointHandler.invokeJMSMethod(WASMessageEndpointHandler.java:138)</span></span></span></span></p>
<p><span style="font-size:medium;"><span style="font-family:calibri;"><span style="font-size:9pt;"><span style="font-family:'courier new';"> at com.ibm.ws.ejbcontainer.mdb.MessageEndpointHandler.invokeMdbMethod(MessageEndpointHandler.java:1146)</span></span></span></span></p>
<p><span style="font-size:medium;"><span style="font-family:calibri;"><span style="font-size:9pt;"><span style="font-family:'courier new';"> at com.ibm.ws.ejbcontainer.mdb.MessageEndpointHandler.invoke(MessageEndpointHandler.java:844)</span></span></span></span></p>
<p><span style="font-size:medium;"><span style="font-family:calibri;"><span style="font-size:9pt;"><span style="font-family:'courier new';"> at com.sun.proxy.$Proxy56.onMessage(Unknown Source)</span></span></span></span></p>
<p><span style="font-size:medium;"><span style="font-family:calibri;"><span style="font-size:9pt;"><span style="font-family:'courier new';"> at com.ibm.ws.sib.api.jmsra.impl.JmsJcaEndpointInvokerImpl.invokeEndpoint(JmsJcaEndpointInvokerImpl.java:233)</span></span></span></span></p>
<p><span style="font-size:medium;"><span style="font-family:calibri;"><span style="font-size:9pt;"><span style="font-family:'courier new';"> at com.ibm.ws.sib.ra.inbound.impl.SibRaDispatcher.dispatch(SibRaDispatcher.java:919)</span></span></span></span></p>
<p><span style="font-size:medium;"><span style="font-family:calibri;"><span style="font-size:9pt;"><span style="font-family:'courier new';"> at com.ibm.ws.sib.ra.inbound.impl.SibRaSingleProcessListener$SibRaWork.run(SibRaSingleProcessListener.java:592)</span></span></span></span></p>
<p><span style="font-size:medium;"><span style="font-family:calibri;"><span style="font-size:9pt;"><span style="font-family:'courier new';"> at com.ibm.ejs.j2c.work.WorkProxy$RunWork.run(WorkProxy.java:281)</span></span></span></span></p>
<p><span style="font-size:medium;"><span style="font-family:calibri;"><span style="font-size:9pt;"><span style="font-family:'courier new';"> at java.security.AccessController.doPrivileged(AccessController.java:303)</span></span></span></span></p>
<p><span style="font-size:medium;"><span style="font-family:calibri;"><span style="font-size:9pt;"><span style="font-family:'courier new';"> at javax.security.auth.Subject.doAs(Subject.java:494)</span></span></span></span></p>
<p><span style="font-size:medium;"><span style="font-family:calibri;"><span style="font-size:9pt;"><span style="font-family:'courier new';"> at com.ibm.websphere.security.auth.WSSubject.doAs(WSSubject.java:132)</span></span></span></span></p>
<p><span style="font-size:medium;"><span style="font-family:calibri;"><span style="font-size:9pt;"><span style="font-family:'courier new';"> at com.ibm.ejs.j2c.work.WorkProxy$RunWork.run(WorkProxy.java:284)</span></span></span></span></p>
<p><span style="font-size:medium;"><span style="font-family:calibri;"><span style="font-size:9pt;"><span style="font-family:'courier new';"> at com.ibm.ws.security.util.AccessController.doPrivileged(AccessController.java:63)</span></span></span></span></p>
<p><span style="font-size:medium;"><span style="font-family:calibri;"><span style="font-size:9pt;"><span style="font-family:'courier new';"> at com.ibm.ejs.j2c.work.WorkProxy.run(WorkProxy.java:666)</span></span></span></span></p>
<p><span style="font-size:medium;"><span style="font-family:calibri;"><span style="font-size:9pt;"><span style="font-family:'courier new';"> at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:1865)</span></span></span></span></p>
<p><span style="font-size:medium;"><span style="font-family:calibri;"><span style="font-size:9pt;"><span style="font-family:'courier new';">Caused by: java.lang.NullPointerException</span></span></span></span></p>
<p><span style="font-size:medium;"><span style="font-family:calibri;"><span style="font-size:9pt;"><span style="font-family:'courier new';"> at org.eclipse.birt.report.engine.presentation.LocalizedContentVisitor.processExtendedContent(LocalizedContentVisitor.java:973)</span></span></span></span></p>
<p><span style="font-size:medium;"><span style="font-family:calibri;"><span style="font-size:9pt;"><span style="font-family:'courier new';"> at org.eclipse.birt.report.engine.presentation.LocalizedContentVisitor.localizeForeign(LocalizedContentVisitor.java:588)</span></span></span></span></p>
<p><span style="font-size:medium;"><span style="font-family:calibri;"><span style="font-size:9pt;"><span style="font-family:'courier new';"> at org.eclipse.birt.report.engine.presentation.LocalizedContentVisitor.localize(LocalizedContentVisitor.java:173)</span></span></span></span></p>
<p><span style="font-size:medium;"><span style="font-family:calibri;"><span style="font-size:9pt;"><span style="font-family:'courier new';"> at org.eclipse.birt.report.engine.internal.executor.l18n.LocalizedReportItemExecutor.execute(LocalizedReportItemExecutor.java:37)</span></span></span></span></p>
<p><span style="font-size:medium;"><span style="font-family:calibri;"><span style="font-size:9pt;"><span style="font-family:'courier new';"> at org.eclipse.birt.report.engine.layout.html.HTMLBlockStackingLM.layoutNodes(HTMLBlockStackingLM.java:65)</span></span></span></span></p>
<p><span style="font-size:medium;"><span style="font-family:calibri;"><span style="font-size:9pt;"><span style="font-family:'courier new';"> at org.eclipse.birt.report.engine.layout.html.HTMLStackingLM.layoutChildren(HTMLStackingLM.java:26)</span></span></span></span></p>
<p><span style="font-size:medium;"><span style="font-family:calibri;"><span style="font-size:9pt;"><span style="font-family:'courier new';"> at org.eclipse.birt.report.engine.layout.html.HTMLAbstractLM.layout(HTMLAbstractLM.java:140)</span></span></span></span></p>
<p><span style="font-size:medium;"><span style="font-family:calibri;"><span style="font-size:9pt;"><span style="font-family:'courier new';"> at org.eclipse.birt.report.engine.layout.html.HTMLInlineStackingLM.resumeLayout(HTMLInlineStackingLM.java:111)</span></span></span></span></p>
<p><span style="font-size:medium;"><span style="font-family:calibri;"><span style="font-size:9pt;"><span style="font-family:'courier new';"> at org.eclipse.birt.report.engine.layout.html.HTMLInlineStackingLM.layoutNodes(HTMLInlineStackingLM.java:160)</span></span></span></span></p>
<p><span style="font-size:medium;"><span style="font-family:calibri;"><span style="font-size:9pt;"><span style="font-family:'courier new';"> at org.eclipse.birt.report.engine.layout.html.HTMLStackingLM.layoutChildren(HTMLStackingLM.java:26)</span></span></span></span></p>
<p><span style="font-size:medium;"><span style="font-family:calibri;"><span style="font-size:9pt;"><span style="font-family:'courier new';"> at org.eclipse.birt.report.engine.layout.html.HTMLAbstractLM.layout(HTMLAbstractLM.java:140)</span></span></span></span></p>
<p><span style="font-size:medium;"><span style="font-family:calibri;"><span style="font-size:9pt;"><span style="font-family:'courier new';"> at org.eclipse.birt.report.engine.layout.html.HTMLBlockStackingLM.layoutNodes(HTMLBlockStackingLM.java:70)</span></span></span></span></p>
<p><span style="font-size:medium;"><span style="font-family:calibri;"><span style="font-size:9pt;"><span style="font-family:'courier new';"> at org.eclipse.birt.report.engine.layout.html.HTMLStackingLM.layoutChildren(HTMLStackingLM.java:26)</span></span></span></span></p>
<p><span style="font-size:medium;"><span style="font-family:calibri;"><span style="font-size:9pt;"><span style="font-family:'courier new';"> at org.eclipse.birt.report.engine.layout.html.HTMLTableBandLM.layoutChildren(HTMLTableBandLM.java:67)</span></span></span></span></p>
<p><span style="font-size:medium;"><span style="font-family:calibri;"><span style="font-size:9pt;"><span style="font-family:'courier new';"> at org.eclipse.birt.report.engine.layout.html.HTMLAbstractLM.layout(HTMLAbstractLM.java:140)</span></span></span></span></p>
<p><span style="font-size:medium;"><span style="font-family:calibri;"><span style="font-size:9pt;"><span style="font-family:'courier new';"> at org.eclipse.birt.report.engine.layout.html.HTMLBlockStackingLM.layoutNodes(HTMLBlockStackingLM.java:70)</span></span></span></span></p>
<p><span style="font-size:medium;"><span style="font-family:calibri;"><span style="font-size:9pt;"><span style="font-family:'courier new';"> at org.eclipse.birt.report.engine.layout.html.HTMLStackingLM.layoutChildren(HTMLStackingLM.java:26)</span></span></span></span></p>
<p><span style="font-size:medium;"><span style="font-family:calibri;"><span style="font-size:9pt;"><span style="font-family:'courier new';"> at org.eclipse.birt.report.engine.layout.html.HTMLTableLM.layoutChildren(HTMLTableLM.java:132)</span></span></span></span></p>
<p><span style="font-size:medium;"><span style="font-family:calibri;"><span style="font-size:9pt;"><span style="font-family:'courier new';"> at org.eclipse.birt.report.engine.layout.html.HTMLAbstractLM.layout(HTMLAbstractLM.java:140)</span></span></span></span></p>
<p><span style="font-size:medium;"><span style="font-family:calibri;"><span style="font-size:9pt;"><span style="font-family:'courier new';"> at org.eclipse.birt.report.engine.layout.html.HTMLBlockStackingLM.layoutNodes(HTMLBlockStackingLM.java:48)</span></span></span></span></p>
<p><span style="font-size:medium;"><span style="font-family:calibri;"><span style="font-size:9pt;"><span style="font-family:'courier new';"> at org.eclipse.birt.report.engine.layout.html.HTMLPageLM.layout(HTMLPageLM.java:92)</span></span></span></span></p>
<p><span style="font-size:medium;"><span style="font-family:calibri;"><span style="font-size:9pt;"><span style="font-family:'courier new';"> at org.eclipse.birt.report.engine.layout.html.HTMLReportLayoutEngine.layout(HTMLReportLayoutEngine.java:100)</span></span></span></span></p>
<p><span style="font-size:medium;"><span style="font-family:calibri;"><span style="font-size:9pt;"><span style="font-family:'courier new';"> at org.eclipse.birt.report.engine.api.impl.RunAndRenderTask.doRun(RunAndRenderTask.java:181)</span></span></span></span></p>
<p> </p>
lenburt
<p>One additional thing that i just tried was directly associating the plugin jar with the template using the 'resources' functionality in the Developer. This did not help.</p>
lenburt
<p>Someone has suggested that th problem may be the class loading options under WebSphere...we are going to experiment with that.....tricky stuff.</p>
lenburt
<p>Me again...still looking for a solution here...BIRT 4.2.2</p>
<p> </p>
<p>Does anyone know what processExtendedContent is doing when it tries to find an object in a Plugin JAR? Under JBoss just putting the JAR in with the BIRT engine works fine. No dice under WebSphere / AIX...I even defined the Plugin jar to the template and tried to force load it with an ImportPackage command...still did not seem to find it. I am surprised this does not return an like 'no class found'.</p>
<p> </p>
<p> </p>
<div>Caused by: java.lang.NullPointerException</div>
<div>at org.eclipse.birt.report.engine.presentation.LocalizedContentVisitor.processExtendedContent(LocalizedContentVisitor.java:973)</div>
donino
<p>Hi,</p>
<p> </p>
<p>By looking at the source code of this method <em>processExtendedContent </em>we can see it gets a classloader like this:</p>
<p> </p>
<div>
<pre class="_prettyXprint">
info.setApplicationClassLoader( context.getApplicationClassLoader( ) );</pre>
</div>
<div>This <em>getApplicationClassloader </em>method is invoked in many other objects, so if the jar is put in the same folder as other birt libraries then it is probably not a classpath issue.</div>
<div> </div>
<div>However the stacktrace shows there is a security manager enabled on the Java Machine used by Websphere:</div>
<div> </div>
<div><span style="color:rgb(40,40,40);font-family:'courier new';font-size:12px;">at java.security.AccessController.doPrivileged(AccessController.java:303)</span></div>
<div> </div>
<div>I would take a big bet on it, there is probably no security manager with your JBoss instance am i correct? </div>
<div> </div>
<div>Before investigating deeper you should try to disable the security manager of WebSphere and see if it works like this. This should consist in removing a JVM argument, please check your WebSphere server documentation.</div>
lenburt
<p>Excellent....thanks for the insight into the code....i will run that by our WebSphere guys! -- len</p>
lenburt
<p>I do have one followup question. I am wondering why only the BIRT Plugin jar / object would cause this failure since all of the other BIRT-related jars seem to be working fine under WebSphere?....is there something special about a Plugin vs other objects?</p>
lenburt
<p>I had another thought which may be crazy.....could i just unpack the Plugin and BIRT Runtime JARs and then repackage them together in the runtime JAR?</p>
donino
<p>Yep you can still try this, unfortunately it won't probably change anything because Websphere makes use of the same ClassLoader for all JARs of a .war. </p>
<p> </p>
<p>As you described the issue i I would not focus on classpath. Unless you missed a further logging message in a server log, it doesn't look like a "ClassNotFound" error. I believe it is more likely a library conflict (did you try with PARENT_LAST WebSphere classloading option?), or as mentionned above an error due to the java security manager. Since the plugin is a non-UI application using awt, you can also check if this java property is changing something: <span style="font-family:'Helvetica Neue', Helvetica, Arial, sans-serif;font-size:12px;">java.awt.Headless</span></p>
lenburt
<p>Ok -- just to wrap this up...we found a solution...i am not a WebSphere person so i do not really understand this completely. Apparently JBoss automatically makes (and searches) for jars in the deployed directory where the BIRT runtime is deployed. Apparently, WebSphere require a manifest that lists out all of the jars that need to be searched/loaded. I did not realize that our application has a 'birt bootstrap' jar which contains that manifest...we just had to update that, and the plugin was found.</p>
<p> </p>
<p>Thanks to everyone for their suggestions. -- len</p>
JFreeman
<p>Sorry for the delayed response.</p>
<p> </p>
<p>Thank you for posting the solution you found.</p>
<p>I'm glad to hear you got it resolved.</p>
<p> </p>
<p>Let us know if you have additional questions.</p>