Categories
News

ATG System Administrator Interview Questions

ATG System Administrator

Q. What exactly is ATG?
Oracle ATG is a cutting-edge technology that provides a highly configurable architecture that goes apart from being merely an e-commerce solution. It includes out-of-the-box administration of omnichannel engagements, quick and rapid creation of new webpages, and scalable business-user control that is well-suited for collaboration with other services.

Q. What is the component of ATG?
ATG is a system configuration file (a regular text file with the .properties extension) that makes use of a Java class.

Q. What are the ATG dynamo components used for?
There are three distinct types of ATG dynamo components available, including the following:

Global Method
Request Method
Session
Global corresponds to the default scope of the ATG dynamo module.

Q. What is an ATG droplet?
Droplets serve as the foundation for all ATG applications’ front-end functionality. Droplets provide the seamless integration of dynamic content inside Java Server Pages (JSPs). Due to the ease with which droplets may be inserted into JSPs, users without a prior understanding of Java can manage the presentation of dynamic content.

Q. What constitutes the essence of ATG?
The ATG’s foundation is the Dynamic Application Framework (DAF), which implements a component-based development approach using JavaBeans and Java Server Pages (JSPs).

Q. What are the different types of pipelines used by ATG?
Dynamo’s request handling pipelines are:

DAS Servlet Pipeline – This is the pipeline that is utilized to process JHTML requests.
DAF Servlet Pipeline – This pipeline is used to process JSP requests.
Q. What is an ATG nucleus?
In ATG, the term “Nucleus” refers to the ATG component box. It offers components with a hierarchical address space. Each module has a unique complete name that may be referenced by pages and other parts.

Q. What is an ATG pipeline?
A pipeline is a type of execution framework that allows the program execution in modules. Pipelines are used by ATG Commerce to do operations such as loading an Order, storing an Order, and closing out an Order.

Q. What are ATG Form Handlers?
ATG Form Handler is an intermediary class that sits between the output of a JSP field and its bean object. They are responsible for validating form input prior to submission, writing to and reading from a library or repository, and redirecting the user to various pages based on the submission’s results.

Q. What Is ATG Tag Library?
ATG is a subset of the JSP core tag library. ATG, on the other hand, has its own collection of tag libraries.

Q. What is ATG DPS? What are its constituents?
The ATG Dynamo Personalization System is another name for the ATG DPS. This is accomplished via the use of customer profile information and several regulatory requirements that ensure the user receives the most relevant information. The primary components of ATG DPS are as follows:

Management System for User Profiles.
System for Targeting Content.
System for sending targeted e-mails.
Q. What is the difference between a Form Handler, a Droplet, and a Servlet?
When forms are available, form handlers are utilized. They assist in validating the applications.
ATG’s droplet is used to insert or render data into the database.
Servlets are used to submit data; they serve as a controller. This field can not be used to store data.

Q. Which class to extend while creating ATG Droplets?

DynamoServlet.java

Q. What are ATG FormHandlers?

ATG Formhandler is the intermediate class that comes in between a jsp form value and its bean class. They are there to evaluate the validity of form data before it is submitted, write data to and read data from a database or repository, and direct the user to different pages, depending on the results of the form submission

Q. What is Base class for all ATG Form Handlers?

.GenericFormHandler.java

Q. What is class Hierarchy for ATG Formhandlers?How to create a FormHandler?

At the top of ATG formhandler class hierarchy there exists the DropletFormHandlerinterface. Then come, three different classes provided by Dynamo which extend this interface. They are as below

atg.droplet.EmptyFormHandler atg.droplet.GenericFormHandler atg.droplet.TransactionalFormHandler
The EmptyFormHandler is the simplest to implement. It implements the DropletFormHandler interface and defines blank body implementations of the methods in this interface.

GenericFormHandler extends EmptyFormHandler. It defines the simple implementations of the DropletFormHandler interface’s methods and the basic error handling logic. If errors occur in processing a form that uses GenericFormHandler, the errors are saved and exposed as properties of the form handler component. TransactionalFormHandler extends GenericFormHandler, It treats the form processing operation as a transaction. Though the methods invoked by this form handler are processed discreetly, their results are saved simultaneously. The beforeGet and afterGet methods do the transaction management. This establishes the transaction before any of your properties are set or handler methods are called.

Q. Why does Oracle ATG Web Commerce only use durable topics? Aren’t some messages sent to only one component that might be listening?

Topics are used because various subsystems might be interested in the message being sent. Examples of this include the ModifyOrderNotification message. It can be sent by any of the components in the system. The OrderFulfiller and the OrderChangeHandler components both listen for this message but each does something different with it. OrderFulfiller might determine that it now has control of the shipping group whose modifications are included in the ModifyOrderNotification message. The OrderChangeHandler might choose to send some other message as an event into another subsystem.

Q. Where do we deal with Payment groups? When do we charge?

The OrderFulfiller module handles payment groups. The default implementation charges the whole order either at the time of the order’s first shipment or at the time of the order’s last shipment. This is configurable by changing the state of the SettleOnFirstShipment property in the OrderFulfiller to true or false as is needed by the business rules.

Q. Why does Commerce use Java Messaging Service (JMS)?

JMS allows you to build a distributed system that enables disparate subsystems to handle fulfillment for various parts of the fulfillment process. JMS and messaging allows you to abstract out all the connections and gives you the flexibility to adapt your existing systems to the Commerce system. For example, the OrderFulfiller system might be located on the same set of machines in the site hosting facility. The HardgoodFulfiller might be based in some other set of headquarters. The actual warehouse that does the shipping might be in another location. If the warehouse receives an e-mail when a shipping group is submitted, then a service can listen on the JMS message indicating that the shipping group is to be shipped. An e-mail can be constructed from the contents of the message.

Q. What are modification objects? What purpose do they serve?

The Modification object is an abstraction that tries to capture the various ways in which changes can occur to the order. There are several types of modifications: add, remove, or update. Modifications can be targeted and therefore can modify shipping groups, payment groups, orders or relationships. Modifications contain a status field indicating whether the modification was successful or a failure.

This abstraction allows the system the flexibility to interface with existing legacy or distributed systems. A disparate system can construct an array of Modifications that will capture the types of changes that it is requesting or the modifications it already performed.

Refer to the sections on ModifyOrder Class and ModifyOrderNotification Class for more information.

Subscribe For Free Demo
[contact-form-7 404 "Not Found"] Q. How do scenarios find out about what is going on in the fulfillment system?

The scenario engine receives messages that are sent during the fulfillment process. Those messages are documented in the Inventory JMS Messages section.

The events contain the profile and the information needed for performing an action on those events. For example, the ShippingGroupShipped event contains the profile, the order and the shipping group that was shipped. This allows the scenario writer to create an action that sends an e-mail to the user (the profile) with the order information (from the order) and the details of the shipping group that was shipped (the shipping group). For more information, refer to the Order Fulfillment Events section.

Q. How do I change the behavior of ModifyOrder messages?

The ModificationHandler class deals with all the ModifyOrder messages. Both the OrderFulfiller and the HardgoodFulfiller have their own versions of those handler classes called OrderFulfillerModificationHandler and the Hardgoods Fulfiller Modification Handler. The class contains two methods handleModifyOrder and handleModifyOrderNotification.

To change the behavior of one of those two handling methods, override the method if you extended the existing OrderFulfillerModificationHandler or Hardgoods Fulfiller Modification Handler classes. Otherwise, a new class implementing the ModificationHandler interface should be written and configured for the OrderFulfiller or Hardwood filler.

Q. How do I change the behavior of ModifyOrderNotification messages?

See the answer for changing the handling of the ModifyOrder message in the previous question.

Q. How do we deal with the Modification IDs? Who is generating them? How do we guarantee the uniqueness?

Modification IDs are generated using the ID generator. The combination of the message source and message ID need to be unique to allow external systems to track the various messages in the system.

Q. When Or In Which Scenario I Will Go For Itemlookupdroplet?

To get complete item by providing id as a input parameter to that droplet.

Q. How Do The Terms Atg Dynamo And Atg Framework Interact?

The ATG framework is used by Dynamo ATG.

Q. Difference Between Express Checkout And Checkout?

Express- Logged in user has information storedGuest- will enter all information (shipping, billing, review steps) and information is not saved
Q. How To Create Custom Repository?

we have to create component/properties file:

$class=atg.adapter.gsa.GSARepository$scope=globalXMLToolsFactory=/atg/dynamo/service/xml/XMLToolsFactorydataSource=/atg/dynamo/service/jdbc/JTDataSourcedefinitionFiles=/com/my/myRepository.xmlidGenerator=/atg/dynamo/service/IdGeneratortractionManager=/atg/dynamo/traction/TractionManager
Explanation : have to tell all the properties in our component

Class is GSARepository OOTB it will do all operations getitem, getitemforupdate

XMLToolsFactory : for parsing xml

definitionFiles : items info will keep here

idGenerator : for generating unique ids

tractionManager : for traction purpose either to commit or roll back i particular traction/task.

Q. What Are Atg Form Handlers?

ATG Formhandler is the intermediate class that comes in between a jsp form value and its bean class. They are there to evaluate the validity of form data before it is submitted, write data to and read data from a database or repository, and direct the user to different pages, depending on the results of the form submission

For more  Click Here