Necules Configuration in ATG Web Application :

To configure necules in web application, we need to add necessary into web.xml (application deployment descriptor) :
  • NucleusServlet, which is the servlet responsible for running Nucleus as a servlet.
  • PageFilter that starts the request-handling pipeline.
  • <distributable/> tag, in order to enable session failover when running in a cluster. This tag is added automatically when you assemble your EAR using the –distributable flag.

NucleusServlet :

NucleusServlet creates an instance of Nucleus and sets it as an attribute of the web application. Nucleus instance can be retrieved using the Nucleus.getGlobalNucleus() method.


Note : must have the load-on-startup flag set to 1 so that it runs before any other Oracle Commerce Platform component.

Request-Handling Pipeline

After invoking NucleusServlet, the web container calls PageFilter filter, which starts execution of the request-handling pipeline for JSP requests


atg_bootstrap.war in multi war application : 

When multiple web applications exist in the ATG EAR file, one of them must be designated as the parent application.

ATG makes the <ATG10dir>\DafEar\base\j2ee-components\atg_bootstrap.war file the parent web application (by default). The parent context path is /dyn. Below parameters need to define in web.xml.
  • atg.session.parentContextName
  • atg.dafear.bootstrapContextName

   <description>The name of the DAF bootstrap WAR context.</description>

Note : Being the parent means that application’s session ID is used as the basis for creating the ATG session scope root. Sharing sessions across ATG applications ensures that you can build a J2EE application consisting of multiple WAR files in a single EAR, and each WAR has access to the same session-scoped components. By default, J2EE servers hand out different session objects in each web application visited.

Starting a Nucleus Component

When you start up an application, Nucleus reads the configuration path, that contains the name of the first component to create. : 

initialServiceName=/Initial :


No comments :