Maximo and jxl.jar

Options
wwilliams
edited February 11, 2022 in Analytics #1
<p>I am having zero success trying to incorporate the jar (at least that is what it appears like). I run the report in Maximo and I don't see an error, but get a blank white output. My guess is even though I have added the jar</p><p>D:ibmSMPmaximoapplicationsmaximomaximouiwebwebmoduleWEB-INFbirtplatformplugins</p><p>and rebuilt the ears and deployed the report isn't using the jar.</p><p> </p><p>I am not sure how to test this, any ideas?</p><p> </p><p>Works great in the development environment.</p><p> </p><p>Thanks.</p><p> </p><p>(2.3.2, 7.5..01)</p>

Comments

  • <p>Is the JAR a resource of the report? or a plug-in to eclipse?</p>
  • <p>It is a resource</p>
  • <p>So platform plugins is the wrong place. Think of it as similar to library or a properties file. Do the same thing you would do for those type of files (I do not have doc in front of me so I am not sure the right mechanism) </p>
  • <p>Well I at least see the problem now</p><p> org.eclipse.birt.report.engine.api.EngineException: Jar jxl.jar not found.
    Show Exception Stack Trac
    Hide Exception Stack Trace  
    Stack Trace:
     
    org.eclipse.birt.report.engine.api.EngineException: Jar jxl.jar not found.
    at org.eclipse.birt.report.engine.executor.ApplicationClassLoader.createDesignClassLoader(ApplicationClassLoader.java:122)</p><p> </p><p>I have tried adding jxl.jar to the path, to the resourcelib folder to the D:ibmSMPmaximoapplicationsmaximomaximouiwebwebmoduleWEB-INFbirtplatformplugins, D:ibmSMPmaximoreportsbirtlibraries and added to the build.xml</p><p>re-built and redeployed the maximo ears numerous times. I also added the jar as a resource when importing the report.</p><p>I added entries to the maximolibrary <property name="theme">maximoTheme</property>
    <list-property name="scriptLibs">
      <structure>
      <property name="name">jxl.jar</property>
      </structure>
      </list-property>
      <data-sources>
      <script-data-source name="maximoDataSource" id="63"/>
      </data-sources>
      <themes></p><p>and libraries.xml</p><p><reference>tivoli.gif</reference>
           <filename>tivoli.gif</filename>
         </resource>
         <resource>
           <reference>jxl.jar</reference>
           <filename>jxl.jar</filename>
         </resource></p><p> </p><p>It shouldn't be that difficult, but I am doing my best to make it difficult.</p><p> </p><p>Any ideas?</p>
  • <p>How do you in Maximo publish a properties file or a report library?</p>
  • <p>We publish via the front-end if we are in the application.</p><p>The "xml" is then saved in a table.</p><p>So as I import the report, I have the option of including a resource file.</p><p>There is also  a means to import a library file.</p><p> </p><p>There is also a means for bulk importexport.</p>
  • <p>Have you the bulk import.export method with the jar file?</p>
  • wwilliams
    edited November 25, 2013 #9
    Options
    <p>That did the trick, I imported the libraries and it works!</p><p>Thanks,</p><p>I guess doing via the front-end app isn't the same thing.</p><p>Well I am close, now I have to back track all I did in dev, It didn't work by itself in a new environment.</p>
  • <p>Good news</p>
  • <p>Out of the blue this stopped working, I checked the classpath on the maximo server</p>
    <p>@echo %classpath%<br>
    D:\ibm\SMP\maximo\applications\maximo\lib\jxl.jar</p>
    <p> </p>
    <p> </p>
    <p>I have re-imported the report and the jar. I guess I can try deleting and re-importing.</p>
    <p>Funny thing is it still runs fine in development.</p>
    <p> </p>
    <p>This is the error when I run the report.</p>
    <p>org.eclipse.birt.report.engine.api.EngineException: Jar jxl.jar not found.<br>
       at org.eclipse.birt.report.engine.executor.ApplicationClassLoader.createDesignClassLoader(ApplicationClassLoader.java:122)<br>
       at org.eclipse.birt.report.engine.executor.ApplicationClassLoader.loadClass(ApplicationClassLoader.java:76)<br>
       at org.eclipse.birt.core.script.ScriptContext.setApplicationClassLoader(ScriptContext.java:409)<br>
       at org.eclipse.birt.report.engine.executor.ExecutionContext.getApplicationClassLoader(ExecutionContext.java:1687)<br>
       at org.eclipse.birt.report.engine.executor.ExecutionContext.initializeScriptContext(ExecutionContext.java:413)<br>
       at org.eclipse.birt.report.engine.executor.ExecutionContext.getScriptContext(ExecutionContext.java:1005)<br>
       at org.eclipse.birt.report.engine.executor.ExecutionContext.evaluate(ExecutionContext.java:665)<br>
       at org.eclipse.birt.report.engine.script.internal.ScriptExecutor.handleJSInternal(ScriptExecutor.java:60)<br>
       at org.eclipse.birt.report.engine.script.internal.ScriptExecutor.handleJS(ScriptExecutor.java:47)<br>
       at org.eclipse.birt.report.engine.script.internal.ReportScriptExecutor.handleInitialize(ReportScriptExecutor.java:41)<br>
       at org.eclipse.birt.report.engine.api.impl.EngineTask.loadDesign(EngineTask.java:1328)<br>
       at org.eclipse.birt.report.engine.api.impl.RunTask.doRun(RunTask.java:195)<br>
       at org.eclipse.birt.report.engine.api.impl.RunTask.run(RunTask.java:90)<br>
       at org.eclipse.birt.report.service.ReportEngineService.runReport(ReportEngineService.java:1246)<br>
       at org.eclipse.birt.report.service.BirtViewerReportService.runReport(BirtViewerReportService.java:155)<br>
       at org.eclipse.birt.report.service.actionhandler.BirtRunReportActionHandler.__execute(BirtRunReportActionHandler.java:81)<br>
       at org.eclipse.birt.report.service.actionhandler.BirtGetPageActionHandler.__checkDocumentExists(BirtGetPageActionHandler.java:58)<br>
       at org.eclipse.birt.report.service.actionhandler.AbstractGetPageActionHandler.prepareParameters(AbstractGetPageActionHandler.java:119)<br>
       at org.eclipse.birt.report.service.actionhandler.AbstractGetPageActionHandler.__execute(AbstractGetPageActionHandler.java:104)<br>
       at org.eclipse.birt.report.service.actionhandler.AbstractBaseActionHandler.execute(AbstractBaseActionHandler.java:90)<br>
       at org.eclipse.birt.report.soapengine.processor.AbstractBaseDocumentProcessor.__executeAction(AbstractBaseDocumentProcessor.java:47)<br>
       at org.eclipse.birt.report.soapengine.processor.AbstractBaseComponentProcessor.executeAction(AbstractBaseComponentProcessor.java:143)<br>
       at org.eclipse.birt.report.soapengine.processor.BirtDocumentProcessor.handleGetPage(BirtDocumentProcessor.java:87)<br>
       at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)<br>
       at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:60)<br>
       at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:37)<br>
       at java.lang.reflect.Method.invoke(Method.java:611)<br>
       at org.eclipse.birt.report.soapengine.processor.AbstractBaseComponentProcessor.process(AbstractBaseComponentProcessor.java:112)<br>
       at org.eclipse.birt.report.soapengine.endpoint.BirtSoapBindingImpl.getUpdatedObjects(BirtSoapBindingImpl.java:66)<br>
       at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)<br>
       at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:60)<br>
       at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:37)<br>
       at java.lang.reflect.Method.invoke(Method.java:611)<br>
       at org.apache.axis.providers.java.RPCProvider.invokeMethod(RPCProvider.java:397)<br>
       at org.apache.axis.providers.java.RPCProvider.processMessage(RPCProvider.java:186)<br>
       at org.apache.axis.providers.java.JavaProvider.invoke(JavaProvider.java:323)<br>
       at org.apache.axis.strategies.InvocationStrategy.visit(InvocationStrategy.java:32)<br>
       at org.apache.axis.SimpleChain.doVisiting(SimpleChain.java:118)<br>
       at org.apache.axis.SimpleChain.invoke(SimpleChain.java:83)<br>
       at org.apache.axis.handlers.soap.SOAPService.invoke(SOAPService.java:453)<br>
       at org.apache.axis.server.AxisServer.invoke(AxisServer.java:281)<br>
       at org.apache.axis.transport.http.AxisServlet.doPost(AxisServlet.java:699)<br>
       at org.eclipse.birt.report.servlet.BirtSoapMessageDispatcherServlet.doPost(BirtSoapMessageDispatcherServlet.java:265)<br>
       at javax.servlet.http.HttpServlet.service(HttpServlet.java:738)<br>
       at org.apache.axis.transport.http.AxisServletBase.service(AxisServletBase.java:327)<br>
       at javax.servlet.http.HttpServlet.service(HttpServlet.java:831)<br>
       at org.eclipse.birt.report.servlet.BirtSoapMessageDispatcherServlet.service(BirtSoapMessageDispatcherServlet.java:122)<br>
       at org.eclipse.equinox.http.servlet.internal.ServletRegistration.handleRequest(ServletRegistration.java:91)<br>
       at org.eclipse.equinox.http.servlet.internal.ProxyServlet.processAlias(ProxyServlet.java:110)<br>
       at org.eclipse.equinox.http.servlet.internal.ProxyServlet.service(ProxyServlet.java:60)<br>
       at javax.servlet.http.HttpServlet.service(HttpServlet.java:831)<br>
       at com.ibm.tivoli.maximo.report.birt.bridge.launcher.BridgeServlet.service(BridgeServlet.java:106)<br>
       at javax.servlet.http.HttpServlet.service(HttpServlet.java:831)<br>
       at com.ibm.ws.webcontainer.servlet.ServletWrapper.service(ServletWrapper.java:1661)<br>
       at com.ibm.ws.webcontainer.servlet.ServletWrapper.service(ServletWrapper.java:1602)<br>
       at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:113)<br>
       at com.ibm.ws.webcontainer.filter.WebAppFilterChain._doFilter(WebAppFilterChain.java:80)<br>
       at com.ibm.ws.webcontainer.filter.WebAppFilterManager.doFilter(WebAppFilterManager.java:908)<br>
       at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:939)<br>
       at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:507)<br>
       at com.ibm.ws.webcontainer.servlet.ServletWrapperImpl.handleRequest(ServletWrapperImpl.java:181)<br>
       at com.ibm.ws.webcontainer.webapp.WebAppRequestDispatcher.forward(WebAppRequestDispatcher.java:374)<br>
       at com.ibm.tivoli.maximo.report.birt.servlet.ReportRequestProcessServlet.processReportRequest(ReportRequestProcessServlet.java:671)<br>
       at com.ibm.tivoli.maximo.report.birt.servlet.ReportRequestProcessServlet.doPost(ReportRequestProcessServlet.java:122)<br>
       at javax.servlet.http.HttpServlet.service(HttpServlet.java:738)<br>
       at javax.servlet.http.HttpServlet.service(HttpServlet.java:831)<br>
       at com.ibm.ws.webcontainer.servlet.ServletWrapper.service(ServletWrapper.java:1661)<br>
       at com.ibm.ws.webcontainer.servlet.ServletWrapper.service(ServletWrapper.java:1602)<br>
       at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:149)<br>
       at psdi.webclient.system.filter.HttpCrossSiteScriptingSecurity.doFilter(HttpCrossSiteScriptingSecurity.java:66)<br>
       at com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:190)<br>
       at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:125)<br>
       at com.ibm.ws.webcontainer.filter.WebAppFilterChain._doFilter(WebAppFilterChain.java:80)<br>
       at com.ibm.ws.webcontainer.filter.WebAppFilterManager.doFilter(WebAppFilterManager.java:908)<br>
       at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:939)<br>
       at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:507)<br>
       at com.ibm.ws.webcontainer.servlet.ServletWrapperImpl.handleRequest(ServletWrapperImpl.java:181)<br>
       at com.ibm.ws.webcontainer.servlet.CacheServletWrapper.handleRequest(CacheServletWrapper.java:91)<br>
       at com.ibm.ws.webcontainer.WebContainer.handleRequest(WebContainer.java:878)<br>
       at com.ibm.ws.webcontainer.WSWebContainer.handleRequest(WSWebContainer.java:1592)<br>
       at com.ibm.ws.webcontainer.channel.WCChannelLink.ready(WCChannelLink.java:191)<br>
       at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleDiscrimination(HttpInboundLink.java:453)<br>
       at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleNewRequest(HttpInboundLink.java:515)<br>
       at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.processRequest(HttpInboundLink.java:306)<br>
       at com.ibm.ws.http.channel.inbound.impl.HttpICLReadCallback.complete(HttpICLReadCallback.java:84)<br>
       at com.ibm.ws.tcp.channel.impl.AioReadCompletionListener.futureCompleted(AioReadCompletionListener.java:175)<br>
       at com.ibm.io.async.AbstractAsyncFuture.invokeCallback(AbstractAsyncFuture.java:217)<br>
       at com.ibm.io.async.AsyncChannelFuture.fireCompletionActions(AsyncChannelFuture.java:161)<br>
       at com.ibm.io.async.AsyncFuture.completed(AsyncFuture.java:138)<br>
       at com.ibm.io.async.ResultHandler.complete(ResultHandler.java:204)<br>
       at com.ibm.io.async.ResultHandler.runEventProcessingLoop(ResultHandler.java:775)<br>
       at com.ibm.io.async.ResultHandler$2.run(ResultHandler.java:905)<br>
       at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:1660)<br>
     <br>
     </p>