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

JBoss - know more about the JBoss directory structure

Fundamentally, the JBoss architecture consists of the JMX MBean server, the microkernel, and a set of pluggable component services - the MBeans. The JBoss Application Server ships with three different server configurations. Within the <JBoss_Home>/server directory, you will find three subdirectories: minimal, default and all. The default configuration is the one used if you don’t specify another one when starting up the server. If you want to know which services are configured in each of these instances, look at the jboss-service.xml file in the <JBoss_Home>/server/<instance-name>/conf/ directory and also the configuration files in the <JBoss_Home>/server/<instance-name>/deploy directory. JBoss 4.0 features an embedded Apache Tomcat 5.5 servlet container. conf --> The conf directory contains the jboss-service.xml bootstrap descriptor file for a given server configuration. This has the jboss-log4j.xml file which configures the Apach...

How can we use SOAP UI to test ATG search

The call from the ATG commerce instance ( Estore instance ) to the search engine is done using the SOAP protocol. Read more about this architecture @  http://tips4ufromsony.blogspot.com/2011/11/atg-search-architectural-flow-search.html . If you have a SOAP UI tool (get it from @  http://www.soapui.org/ ), you could test the request/response from the search engine. You could find the wsdl for this SOAP in the folder in which your ATG search engine is installed. Below screen shot has the deatils of the wsdl : To call the search engine you need to know the port in which the search engine is running. You could get it from the SearchEngineService component of the commerce instance @ /dyn/admin/nucleus/atg/search/routing/SearchEngineService/.  Once you have these details, you could call the search engine with a sample request and a query string to get the response.

Mozilla FireFox - how to add security certificate exception urls

If you visit a web site with a secure connection(https) and if the website's security certificate has some problem like the security certificate presented by the website was not issued by a trusted certificate authority  or  the security certificate has expired or is not yet valid, you will get an error page ( like below in IE ) with an option to continue to this website. When this non secure page is loading, in Internet Explorer, you will get an option to specify whether you need to download the page content files like JS, CSS, Images,... But you will not get such an option in FireFox/Chrome and could see only the text data in this new non secure page. If you are doing some local development with FireFox/Chrome and have such a situation, you might want to override this security restriction. FireFox provides some exception url list in secure certificates menu. Go to Options - Advanced - Encryption - View Certificates and click the exception list and...

ATG Search and how to generate XHTMLs from STG file

The ATG search  indexing will give you the idx and stg files. When I analyse the stg files with some text editors like Textpad or Ultraedit , found some <html> and </html> tags and the contents inside these tags seems to be the same content of the temporary XHTML files , which will be generated during the search indexing for each indexed item. So I deicded to take the contents in between the <html> and </html> tags and save as XHTML file and it works for almost all indexed items. As you might know, these XHTML file’s <head> tag contains all the meta properties ( refine properties ) and the <body> tag have the text properties ( searchable properties ) for each indexed item. Please note that the above steps are not an ATG recommended method to generate the XHTML files. I come across to this simple method to form the XHTML files and I am not 100% sure that this will give all the XHTML files of a search index . But I found this to be very useful f...

Quick Reference to JAVA Servlets

I am writing these quick reference blogs for those who wants to brushup the ideas of each topic. This one will lead you through the basic concepts of JAVA Servlets. How this quick reference guideline is different from the numerous other docs available ?  ,  please read on to get an idea : Servlet Lifecycle : The container will identify the servlet based on the URL Servlet class loading Servlet instantaition Call init method Create a servlet thread for the current request. Before calling service(), will create the request and response objects Call service method Service method will identify whether to call doGet or doPost and call it Call destroy method Different servlet objects : A sinlge servlet instance per JVM ( except for SingleTheadModel) A sinlge HttpSession per web application ( session activation and passivation) A sinlge ServletContext per JVM A sinlge ServletConfig per servlet A sinlge ServletRequest per servlet request Important Servlet rq...