Portlet packaging structure

The WebSphere Commerce Portlet is provided as a WAR file for the WebSphere Portal administrator to install to the WebSphere Portal Server.

These are the major items in this package:

  • WebSphere Commerce MVCPortlet class
  • Communication service library
  • WebSphere Commerce service client libraries
  • WebSphere Commerce foundation tag library
  • Web application deployment descriptor, portlet deployment descriptor, tag library configuration files, and MVC configuration files
  • Portlet JSP files and resource bundles

This portlet application requires two deployment descriptors:

  • The portlet deployment descriptor provides the WebSphere Portal server with information about the portlet resources in the application, including configuration, support characteristics, and localized titles. The WebSphere Portal server uses this information to provide services for the portlet. This file is always named portlet.xml.
  • The Web application descriptor provides the application server with information about the Web resources in the application. This file is always named web.xml.

The WAR file of the Portlet application has the following directory structure.

Directory Description
/ Root directory of the portlet file structure.
/component-services Location for all schema definitions and service WSDL files.
/wsdl Location for cooperative portlet configuration files.
/jsp Location for JSP files.
/WEB-INF Location for all protected resources. The /WEB-INF directory stores the portlet descriptor document and all of the runtime executable JAR files and classes that the packaged portlet requires. The portlet information directory is not part of the public document tree of the application. Files that reside in /WEB-INF are not served directly to a client.
/WEB-INF/config Location of all the core and bootstrap configuration files that cannot be customized.
/WEB-INF/config/ext Location of all customizable configuration files.
/WEB-INF/lib Location for storing portlet JAR files, such as component client libraries.
/WEB-INF/classes Location for portlet class files. Individual class files should be stored in a directory structure within /WEB-INF/classes that reflects the class package.
/WEB-INF/wsdl Location for WebSphere Commerce service deployment configuration files.
/WEB-INF/classes/nl Location for portlet resource bundles.
/META-INF Location for the manifest file, manifest.mf. Files that reside in /META-INF are not served to clients.
For customization, developers have a choice of reusing the MVCPortlet project or creating additional Java utility projects to store their customized code:
  • Custom Java code can go into a separate utility project or directly into MVCPortlet WAR.
  • Custom JSP files need to go into the /jsp directory in the MVCPortlet WAR.