Skip to main content

ATG - basic concepts of ATG

This blog is for the ATG beginners to get some basic overview about ATG. I just given the ATG concepts as a list of numbered points for the ease of understanding.

1. At the framework level, ATG is a
              java based application platform for hosting web-based applications, as well as RMI accessible business components,
              with an ORM layer,
              a component container,
              an MVC framework,
              and a set of tag libraries for JSP.

2. Art Technology Group(ATG)'s Dynamo Application Server (DAS) is a Java EE compliant application server. DAS is no longer actively developed as ATG recommends using other Java EE applications servers for its products such as BEA WebLogic, JBoss or IBM WebSphere.

3. Prior to ATG 2007, JHTML was used instead of JSP for view purpose. JHTML stands for Java HTML. This is a page authoring system developed at Art Technology Group (ATG).Sun Microsystems licensed parts of this technology and developed the JSP system from the ATG page compilation system.

4. ATG mainly works on the basis of following concepts:
       Nucleus
      Droplets
       DSP Tag Libraries
      Form Handlers
      Repository

5. Nucleus:  Nucleus is server side java beans. To use ATG platform functionality, a web application needs to start Nucleus by invoking atg.nucleus.servlet.NucleusServlet. It’s essentially an object container that manages the lifecycle of POJOs using reflection and dependency injection.

6. Droplet: Droplet is a Servlet and is also a Java bean. Advantage of droplet is that you can have multiple Droplets in a single page. Droplets can be nested and can pass parameters to each other.

7. DSP Tag Libraries: Dynamo Server Pages is a set of tags that ATG provides, that allow us to access the functionality provided by the Dynamo Application Framework such as accessing Nucleus componenets, passing parameters,...

8. Form Handler: ATG Form Handlers are components for validating and processing html forms, calling business components and managing flow between a limited set of pages (e.g. success/error), so a bit like Struts Action classes in that they mediate between the view and model. ATG provides hundreds of readymade form handlers for performing all sorts of tasks, like updating a customer profile, managing your shopping cart, checking out, or interacting with a repository.

9. Repository: A repository is a data access layer, which gives a generic representation for a data store.

10. Logging: ATG also provides a logging framework which is essentially a wrapper over log4j. A nice feature of this is that you can turn on logging for a particular component within a web browser. ATG also provides a performance logging framework which you can plug into components, and is very useful for identifying bottlenecks or problem areas in your code as it lets you browse and drill down into the performance timings and memory usage of components.

Following are the main administaration UIs provided by ATG

11. Dynamo administration: All the ATG components can be browsed and the properties can be modified at run time using dyn/admin. By clicking "View Service Configuration",  you can view the component in different modules in the hierachy.

12. ACC > ATG Control Centre: Browse and edit component configurations, Build scenarios, View and edit repository data. ATG provides a unified view of your application's data through the ATG Control Center which is a graphical user interface that uses the Repository interfaces to allow users to create, query, update, and remove repository items.

13. BCC >  Business Control Center: The ATG Business Control Center is a browser-based interface that you can use to create and edit many of the elements required to set up and maintain an ATG-based web site. This can be used for doing the Search Administration  and Content Administration.

14. CA > Commerce Administration: ATG Commerce Assist is a customizable and deployable customer service application that enables a Customer Service Representative (CSR) to perform the following tasks for an ATG Commerce site: Create and manage organization profiles (ATG Business Commerce only) , Create and manage customer profiles, Create and manage orders,  Issue refunds and exchanges, Process returned items, Research customer activity.


Comments

  1. Nice...and thanks for this article.

    ReplyDelete
  2. Good one for beginner. Any change in ATG10 ?

    ReplyDelete
  3. Thanks Sir,
    It helps me, Can I have Some more Stuff regarding ATG For Complete Beginners

    ReplyDelete

Post a Comment

Popular posts from this blog

Search Facets - how to create a new search facets in ATG Search

A Facet is a search refinement element that corresponds to a property of a commerce item type. ATG supports the search result refinement using the Faceted Search concept. Read more about facted search @  http://en.wikipedia.org/wiki/Faceted_search . Facet can either be ranges or specific values. Each facet is stored in the RefinementRepository as a separate refineElement repository item. Facets are divided into Global and Local facets. Global facets apply to all the categories and local facets only to the category in which they are created. For example Price/Brand can be considered as the facets that are common for all skus and New Release/Coming Soon can be considered as the facets that are specific to Physical Media products like Vidoe/DVD/Blue-ray/Books. We can use the ATG BCC - Merchandising UI to create facets. The Faceting Property depends on the meta-properties defined in the \atg\commerce\search\product-catalog-output-config.xml ( the definitionFile of the \atg\commerce\s

ATG - quick reference to commonly used DSP Tags

In this blog, I would like to give a quick reference to the most commonly used DSP Tags.Note that in this DSP tag details : bean refers to a Nucleus path, component name, and property name param refers to a Page parameter value refers to a Static-value var refers to a EL variable id refers to a scripting variable ============================================================== 1.dsp:importbean     example: <dsp:importbean bean="/atg/dynamo/droplet/Switch"/> ============================================================== 2.dsp:page     usage: It encloses a JSP. The dsp:page invokes the JSP handler, which calls the servlet pipeline and generates HTTPServletRequest.    example:    <dsp:page> ..... </dsp:page> ============================================================== 3.dsp:include     usage: Embeds a page fragment in a JSP.     example:   <dsp:include src="/myPage/ResultPage.jsp" flush="true">            

GC Log Analyzer from IBM

This blog is about the GC( garbage collection) log analyzer from IBM. If you have a GC log and you want to analyze the file,  this IBM tool will help you with some graphical analyzer and some recommendations. You can download it from the following URL : https://www.ibm.com/support/pages/ibm-pattern-modeling-and-analysis-tool-java-garbage-collector-pmat Please find below some screenshots and details that might help you. 1. Screenshot 1: 2. Screenshot 2 : 3. Screenshot 3 : 4. Screenshot 4:

ATG Search and Search engine activity log

We could use the SearchEngineActivity log files to get the request/response to the search engine from a commerce instance. This folder is located in each commerce instance or the instances from which the call to the search engine is done. The SearchEngineActivity log file folder can be configured @ SearchEngineService component ( /dyn/admin/nucleus/atg/search/routing/SearchEngineService). To get the log files for the search engine calls, you need to specify the SearchEngineService.dumpingRequests as true. Then you need to specify the engineActivityPath as the folder in which you need the SearchEngineActivity logs. Below you could find my SearchEngineActivity log folder. Each successful call to the search engine from the commerce instance will create 5 files in the SearchEngineActivity folder : namely  request, response, search engineinfo, stack trace and response row . Each file name start with a specific sequence. You could see that the file name like "2630436491482_

ATG Search - how to create a search project

Here I am going to explain how we can create a new ATG search project. It involves 3 steps --> Specify the general search project settings, Specify the content of search indexing and Build the index. Below I am elaborating the different steps involved with screen shots : 1. Go to Search Project Administration ui @  BCC and Click the button "New Search Project" to create a new search project. 2. Specify the search project name, give description and click the button "Create Search Project". 3. Click the button "Add Content" to add the search project content. 4. Specify the content name, select the content type and specify the IndexingOutputConfig path if the content type is ATG repository. Specify the remote host and port if you are using another server for fetching the content. 5. Click the content in the left side and expand the advanced option to specify the language and other customizations. 6. Click the