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

Google Chrome shortcut keys

If you are a Google Chromey guy, please find below the list of shortcut keys for some of the most used features  :-) Find more shortcut keys @  http://www.google.com/support/chrome/bin/static.py?page=guide.cs&guide=25799&topic=28650

Eclipse plug-in to create Class and Sequence diagrams

ModelGoon is an Eclipse plug-in avaiable for UML diagram generation from Java code. It can be used to generate Package Dependencies Diagram, Class Diagram, Interaction Diagram and Sequence Diagram. You coud get it from http://marketplace.eclipse.org/content/modelgoon-uml4java Read more about it and see some vedios about how to create the class and sequence diagram @ http://www.modelgoon.org/?tag=eclipse-plugin Find some snapshots below which gives an idea about the diagram generation.

ATG Search architectural flow : Search and Index

I would like to explain the high level ATG Search implementation architecture ( for an online store) through the above diagram. In this diagram 1.x denotes the search functionality and 2.x denotes the indexing functionality. I have given JBoss as the application server. Physical Boxes and Application Servers in the diagram ( as recommended by ATG )  : Estore ( Commerce ) Box --> The box with the estore/site ear (with the site JSPs and Java codes). Search Engine Box --> The box with the search engine application running. Indexing Engine Box --> The box with the indexing engine application running. CA (Content Administration) Box --> The box with the ATG CA ear ( where we could take CA -BCC - Search Administration and configure the search projects) . Search Indexer Box --> The box with the ATG Search Index ear ( to fetch the index data from repository). Note that the engine performing indexing will need access to the data it is indexing, which for production

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">            

ATG Product Catalog schema ER diagram

Check out the O rder schema ER-Diagram @   http://tips4ufromsony.blogspot.in/2012/02/atg-order-schema-er-diagram.html Check out the User Profile  schema ER-Diagram @ http://tips4ufromsony.blogspot.in/2012/03/atg-user-profile-schema-er-diagram.html If you would like to know the relationship between different Product Catalog tables, please find below screen shots of  Product Catalog schema ER Diagrams.