Limitations on WAR Files

Imports in .requirements File for Necessary APIs

If the Web application code in the WAR file uses APIs from the following packages, perform the steps listed in this section.

  • javax.xml.*
  • org.xml.*
  • org.w3c.*
  • org.apache.commons.logging.*
  • org.apache.log4j.*

Make sure that all the packages and sub-packages from the above list are declared as imports in the .requirements file of the WebApp IT component.

For example, if the web application uses the javax.xml.transform package, add it in the .requirements file as follows:

  1. Search for the required package using the Plugin Registry View in TIBCO Business Studio.
  2. Override the .requirements file of the WebApp IT component and add the necessary import package entry.

When any of the above mentioned APIs are being imported, remove the conflicting implementation JARs from the WAR (using a tool such as 7-zip).

For example, let us say, your application uses the JAXP APIs. You have added the necessary import packages in the .requirements file for the API packages. The WAR file bundles the Apache Xalan JAR file that provides the implementation of these APIs. In this case, you need to remove the Xalan JAR from the WAR's lib folder.

Declaring Dependencies on org.ietf.jgss Packages

Normally, if you import packages and do not add them to the manifest, TIBCO Business Studio displays an error. However, if you import any of the org.ietf.jgss packages and do not declare the import in the manifest, TIBCO Business Studio does not display an error because TIBCO Business Studio resolves those packages from the configured JRE. If you then deploy the application without the declaration in the manifest, the application will not run. Hence, you must ensure that you import the org.ietf.jgss package in the manifest file.