Welcome to TWiki... Users, Groups
Go

-- GregDotMallettAtInetsoftDotCom? - 01 Oct 2009

Classloader Note for Weblogic 10

Weblogic 10 comes with its own org.mozilla.* package in weblogic.jar which conflicts with the one in our etools.jar file. Reports containing script will not work at all as long as the package exists. Removing the package from weblogic.jar or placing our rhino classes FIRST on Weblogic's CLASSPATH will resolve this. Otherwise, implement the suggestions here:

  • Wrap the sree.war file in an EAR with a meta-inf directory containing a weblogic-application.xml file.
  • This file should contain the following:

<?xml version="1.0" encoding='UTF-8'?>
<weblogic-application>
<prefer-application-packages>

  <package-name>org.mozilla.*</package-name>
  <package-name>org.mozilla.javascript.*</package-name>

</prefer-application-packages>
</weblogic-application>

Update for Style Intelligence version 11.1

In Weblogic 10.3, 11.1 deploys but there are issues running it. You may see exceptions like this:

SEVERE  NAMESPACE_ERR: An attempt is made to create or change an object in a way which is incorrect
with regard to namespaces.
org.w3c.dom.DOMException: NAMESPACE_ERR: An attempt is made to create or change an object in a way w
hich is incorrect with regard to namespaces.
        at org.apache.xerces.dom.CoreDocumentImpl.checkNamespaceWF(Unknown Source)
        at org.apache.xerces.dom.AttrNSImpl.setName(Unknown Source)
        at org.apache.xerces.dom.AttrNSImpl.<init>(Unknown Source)
        at org.apache.xerces.dom.CoreDocumentImpl.createAttributeNS(Unknown Source)
        at org.apache.xerces.dom.ElementImpl.setAttributeNS(Unknown Source)
        at inetsoft.util.CoreTool.parseXMLByStAX(CoreTool.java:2066)
        at inetsoft.util.CoreTool.parseXML(CoreTool.java:1951)
        at inetsoft.util.CoreTool.parseXML(CoreTool.java:1941)
        at inetsoft.util.CoreTool.parseXML(CoreTool.java:1927)
        at inetsoft.sree.portal.PortalThemesManager.loadThemes(PortalThemesManager.java:573)
        at inetsoft.sree.portal.PortalThemesManager.getManager(PortalThemesManager.java:79)
        at inetsoft.sree.internal.HTMLUtil.getLogo(HTMLUtil.java:1136)
        at inetsoft.sree.adm.AdmServlet.process(AdmServlet.java:488)
        at inetsoft.sree.adm.AdmServlet$3.run(AdmServlet.java:275)
        at inetsoft.util.Tool.invokeThread(Tool.java:2413)
        at inetsoft.sree.adm.AdmServlet.doGet(AdmServlet.java:272)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:707)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)

This seems to be a conflict with our XML parsing classes and weblogic's stax parser implementation. To resolve this, additional packages besides the rhino packages need to be added to the weblogic-application.xml file:

      <package-name>com.ctc.wstx.*</package-name>
      <package-name>com.ctc.wstx.dom.*</package-name>
      <package-name>com.ctc.wstx.io.*</package-name>
      <package-name>com.ctc.wstx.sr.*</package-name>
      <package-name>com.ctc.wstx.sax.*</package-name>
      <package-name>com.ctc.wstx.stax.*</package-name>
      <package-name>com.ctc.wstx.sw.*</package-name>
      <package-name>com.ctc.wstx.util.*</package-name>

Classloader note for Websphere 7

In version 10.0, we switched to using axis2 for our webservices. Websphere comes bundled with its own axis2 JAR file, which will conflict with ours and webservices functionality will not work. One solution is to just remove the JAR from ${Websphere_home}/plugins/org.apache.axis2.jar

Otherwise, the following steps need to be performed:

  • In the WEB-INF/modules directory of your WAR, copy all files with a .mar extension to your WEB-INF/lib directory. It is important that you just copy these files, not move them. Once they are copied to WEB-INF/lib, change the extension from .mar to .jar. This step was recommended by IBM and more details can be found at link.

  • The attached stax.properties file needs to be added to your JRE's lib directory. For Websphere 7, by default this directory is located at {Websphere root}/java/jre/lib.

  • Configure the Websphere classloader to load classes from the application first. This step has been previously described, but I am again attaching a screenshot of where this needs to be done.

  • In your web.xml file, please make sure that the init parameters for the axis2 servlet are pointing to valid directories where the axis2 configuration files and directories can be found.
r2 - 19 Oct 2011 - 18:54:12 - GregMallett
Copyright © by the contributing authors.
Syndicate this site RSSATOM