Components are basically the building blocks of ATG. Practically, a component is a configuration file (a simple text file with. properties extension), which uses a java class.ATG has specified a specific standard (or syntax), for these configuration files, so that they can use java classes to execute some logic. So basically, to create this building block known as a component, we need a java class and a configuration file.
Servlet pipeline is creating request handling pipeline.
All servlet in pipeline should implements “atg.servlet.pipeline.pipelinableServlet”. Or extends “atg.servlet.pipeline.pipelinableServletImpl” and override service () method.
There are two types of servlet pipeline in ATG for handling requests
DAF (Dynamo Application Framework) Pipeline: It is a chain of servlets which is called when a JSP is requested.
DAS (Dynamo Application Server) Pipeline: It is used to handle JHTML (Java within HTML) requests. JHTML pages are usually ATG’s out of the pages accessible from dyn/admin (for example, pages to update inventory in dyn/admin).
FormHandlers are used when there are forms. They help to perform validation for the forms
There are three types of formhandlers in ATG
EmptyFormHandler: It implements DropletFormHandler interface. Provides empty implementation of methods.
GenericFormHandler: It extends EmptyFormHandler class. Adds basic error handling logic (usage of addFormException() method)
TransactionalFormHandler: Extends GenericFormHandler class. Form processing is done in transactions.
getRequestDispatcher ().forward(): Same functionality as that in sendLocalRedirect(). This is a J2EE method.
sendRedirect ():It is using when user need to redirect to different site with full path. Redirects to the page specified in the argument. Absolute URL must be provided. Usually done when redirecting to other sites.
sendLocalRedirect (): It is using when user need to redirect on the same site with relative or full path. Also when we need to pass session id with the response. ATG Specific method. Appends JSESSIONID to url, if JSESSIONID cookie is not found. Also, relative URLs are converted to absolute URLs using this method.Usually used when redirecting to own site.
A ClientLockManager should be injected into the component of the Repository using the lockManager property
ATG provides a default ClientLockManager component:
/atg/dynamo/service/ClientLockManager
Thus, you can set an SQL Repository’s lockManager property as follows:
lockManager=/atg/dynamo/service/ClientLockManager
We can create two types of ear in ATG:
Development mode ear: the application draws its Nucleus configuration information from the ATG Web Commerce installation.
Standalone mode ear: the application stores its configuration in the EAR file itself.
The main difference development mode ear and standalone mode ear is Loading configuration and Handling output files such as log files and state information and dynamo.env
SQL repository generally maintains two caches:
Item Caches: Item caches hold the values of repository items, indexed by repository IDs. An item cache entry is invalidated when that item is updated. The scope of an entry’s invalidation depends on its caching mode.
Query Caches: Query caches hold the repository IDs of items that match given queries. When a query returns repository items whose item descriptor enables query caching, the result set is cached as follows:
- The query cache stores the repository IDs.
- The item cache stores the corresponding repository items.
/atg/commerce/catalog/CompareSkusFormHandler
/atg/commerce/catalog/comparison/ProductListHandler
/atg/commerce/promotion/GiftWithPurchaseFormHandler
/atg/commerce/promotion/CouponFormHandler
/atg/commerce/inventory/InventoryFormHandler
/atg/commerce/gifts/GiftlistFormHandler
/atg/commerce/order/purchase/UpdateElectronicShippingGroupFormHandler
/atg/commerce/order/purchase/SaveOrderFormHandler
/atg/commerce/order/purchase/CancelOrderFormHandler
/atg/commerce/order/purchase/CreateCreditCardFormHandler
/atg/commerce/order/purchase/ShippingGroupFormHandler
/atg/commerce/order/purchase/PaymentGroupFormHandler
/atg/commerce/order/purchase/ExpressCheckoutFormHandler
/atg/commerce/order/purchase/CreateInvoiceRequestFormHandler
/atg/commerce/order/purchase/CommitOrderFormHandler
/atg/commerce/order/purchase/CostCenterFormHandler
/atg/commerce/order/purchase/GCCartModifierFormHandler
/atg/commerce/order/purchase/UpdateCreditCardFormHandler
/atg/commerce/order/purchase/UpdateHardgoodShippingGroupFormHandler
/atg/commerce/order/purchase/PaymentAddressFormHandler
/atg/commerce/order/purchase/CartModifierFormHandler
/atg/commerce/order/purchase/CreateElectronicShippingGroupFormHandler
/atg/commerce/order/purchase/CreateHardgoodShippingGroupFormHandler
/atg/commerce/order/scheduled/ScheduledOrderFormHandler
/atg/commerce/approval/ApprovalFormHandler
/atg/search/formhandlers/BrowseFormHandler
/atg/search/formhandlers/CategorizeFormHandler
/atg/search/formhandlers/ViewDocumentFormHandler
/atg/search/formhandlers/QueryFormHandler
/atg/search/formhandlers/StructuredQueryFormHandler
/atg/search/formhandlers/TypeAheadFormHandler
/atg/search/formhandlers/SimilarDocsFormHandler
/atg/search/formhandlers/TreeQueryFormHandler
/atg/userprofiling/MultiUserUpdateFormHandler
/atg/userprofiling/MultiProfileUpdateFormHandler
/atg/userprofiling/ForgotPasswordHandler
/atg/userprofiling/ProfileAdminFormHandler
/atg/userprofiling/MultiUserAddFormHandler
/atg/userprofiling/ProfileFormHandler
/atg/userprofiling/MultiProfileAddFormHandler
/atg/integrations/RepositoryChangesToXMLHandler
/atg/integrations/RepositoryToXMLHandler
/atg/sitemap/SitemapGeneratorFormHandler
/atg/endeca/assembler/cartridge/handler/NavigationCartridgeHandler
/atg/endeca/assembler/cartridge/handler/RecordBasedNavigationCartridgeHandler
/atg/multisite/DefaultInactiveSiteHandler
/atg/userdirectory/droplet/CreateOrganizationFormHandler
/atg/reporting/datacollection/search/SearchClickThroughHistoryHandler
/atg/commerce/catalog/custom/CatalogFolderPropertiesChangedHandler
/atg/commerce/catalog/custom/CategoryPropertiesChangedHandler
/atg/commerce/catalog/custom/CatalogPropertiesChangedHandler
/atg/commerce/catalog/RunServiceFormHandler
/atg/commerce/order/DocumentBeanHandler
/atg/webservice/security/NucleusAccessControlFormHandler
/atg/dynamo/adminpipeline/AdminHandler
/atg/dynamo/service/event/QueuedActionHandler
/atg/dynamo/service/EmailFormHandler
/atg/dynamo/templates/SimpleSQLFormHandler
/atg/dynamo/servlet/adminpipeline/AdminHandler
/atg/dynamo/servlet/dafpipeline/DynamoHandler
/atg/dynamo/servlet/sessionhistory/SessionHistoryHandler
/atg/dynamo/servlet/pipeline/DynamoHandler
/atg/dynamo/servlet/ParameterHandler
/atg/dynamo/admin/context/AdminContextFormHandler
/atg/registry/EventHandlers
/atg/registry/EventHandlers/LoggingEventHandler
/atg/registry/EventHandlers/RegisterHandler
/atg/registry/EventHandlers/LoginHandler
/atg/deployment/file/FileDeploymentHandler