Browse 25+ [LATEST] ATG Interview Questions & Answers - 2020
ATG Interview Questions and Answers

Browse 25+ [LATEST] ATG Interview Questions & Answers

Last updated on 04th Jul 2020, Blog, Interview Questions

About author

Santhosh (Chief ATG Architect )

(5.0) | 16547 Ratings 1644

These ATG Interview Questions have been designed specially to get you acquainted with the nature of questions you may encounter during your interview for the subject of ATG. As per my experience good interviewers hardly plan to ask any particular question during your interview, normally questions start with some basic concept of the subject and later they continue based on further discussion and what you answer.we are going to cover top 100 ATG Interview questions along with their detailed answers. We will be covering ATG scenario based interview questions, ATG interview questions for freshers as well as ATG interview questions and answers for experienced. 

1.What is ATG Dynamo? What is ATG Framework?

Ans:

ATG Dynamo or Dynamo Application Server(DAS) is a J2EE application server from Art Technology Group. Atg framework is a Web Application framework for building web applications. ATG dynamo implements the ATG framework. The application framework can also be run on all major J2EE application servers (JBoss, WebLogic, WebSphere etc…).

2.What is the scope of Dynamo Components?

Ans:

There are three different types of scopes for ATG components namely

  • request
  • session
  • Global

Global is the default scope

3.What is Nucleus? 

Ans:

  • Nucleus is ATG`s open Object Application Framework. ATG 7 is said to be a component-centric development platform. The ATG 7 Web applications are nothing but individual JavaBean components assembled together. These JavaBean components are configured and linked together by .properties files within Nucleus.
  • In Nucleus, each service is packaged as a JavaBean or set of JavaBeans. These JavaBeans are configured individually and mounted into a namespace. The beans then interconnect with the beans representing other services. Nucleus is responsible for interpreting the component configurations and the management of the component namespace.
  • Dynamo uses the Nucleus framework to organize components into a hierarchical structure (similar to a directory structure). Each Nucleus service has a unique Nucleus name. For example, the default javax.sql.DataSource component is located at /atg/dynamo/service/jdbc/JTDataSource

Nucleus is the core of the entire ATG system. It creates and configures Nucleus components (also called beans and JavaBeans) and organizes them into a hierarchical namespace, essentially giving them a place to live so they can be referenced by other components. By reading the .properties files associated with each component, Its Nucleus which figures out which components are to be used in an application ,initializes them to their default values and decides about how they connect to each other. This model makes it easier for the developers to build ATG applications by configuring and using the pre-built components instead of writing a lot of Java code from scratch.

4.What is ATG Repository? 

Ans:

ATG Repository refers to the ATG`s way of accessing the Database through programs. It is somewhat similar to what Hibernate offers, Separating the Application Logic from that of Database. So Atg repository provides a fine grained abstraction between the application logic and Database. Thus it supports the ATG`s Data Anywhere paradigm, the application logic created by developers to interact with data need not change for any change in the source of that data. ATG repository architecture ensures that the source of the data is hidden behind the Dynamo Repository abstraction. It would be easy to change from a relational data source to another or to an LDAP directory since none of the application logic would need to change. Once data is retrieved from a data source it is transformed into an object-oriented representation. Manipulation of the data can then be done using simple getPropertyValue and setPropertyValue methods. The Repository API ties in closely with ATG’s targeting APIs, so you can retrieve items from the repository based on a variety of targeting rules, as well as retrieving specific identified items.

5.What is Atg Pipeline?

Ans:

Atg Pipeline is a variant of Servlet Pipeline, In an ATG pipeline the sequence of Programs are executed in a queue.

Below is the ATG servlet pipeline

/atg/dynamo/servlet/pipeline/DynamoHandler

/atg/dynamo/servlet/pipeline/TransactionServlet

/atg/dynamo/servlet/pipeline/PathAuthenticationServlet

/atg/dynamo/servlet/pipeline/URLArgumentServlet

/atg/dynamo/servlet/pipeline/CookieServlet

/atg/dynamo/servlet/pipeline/ContextPathServlet

/atg/dynamo/servlet/pipeline/ServletPathServlet

/atg/dynamo/servlet/pipeline/SessionServlet

/atg/dynamo/servlet/pipeline/DynamoServlet

/atg/dynamo/servlet/pipeline/SessionSaverServlet

/atg/dynamo/servlet/pipeline/FormLoginServlet

/atg/dynamo/servlet/pipeline/WebApplicationDispatcherServlet

/atg/dynamo/servlet/pipeline/CgiServlet

/atg/dynamo/servlet/pipeline/ServletPathDispatcher

/atg/dynamo/servlet/pipeline/FileFinderServlet

/atg/dynamo/servlet/pipeline/MimeTyperServlet

/atg/dynamo/servlet/pipeline/MimeTypeDispatcher

/atg/dynamo/servlet/pipeline/FileServlet

 It starts with the DynamoHandler which adds the Dynamo specific request and response objects to the request’s context. Actually the list of servlets you will see depends on which modules you have running. This is the DAS configuration DPS and other modules can and do add more servlets to the pipeline.

6. What is the ATG tag library? 

Ans:

Atg tag library is a variant of jsp standard tag library. However atg provides its own set of tag libraries e.g. dsp,dspel, core

7.What is ATG DPS? What are its elements? 

Ans:

ATG DPS refers to the ATG Dynamo personalization system. It is driven by User Profile Data and business rules designed to deliver the right content to the right user.

There are three key elements of the ATG DPS personalization System.

  • User Profile Management
  • Content Targeting
  • Targeted Email

User Profile Management

  • When a person visits a website driven by ATG Dynamo Personalization Server(ATG DPS) website for the first time, The person is allowed to create its own User Profile.
  • Once created, DPS stores that User`s Profile in its database repository. This profile contains a list of properties that describe the person’s characteristics, such as the name they entered in a registration form or the date of their last login. ATG DPS uses this profile information stored in its database repository to provide targeted content to each other. 

Content Targeting:

Targeting is the process of displaying

  • Content items
  • To a particular user
  • At a particular time
  • In a particular context and
  • On a particular rule set.

In the DPS rule based system, business managers create rule sets called content targeters that control how content is displayed on the web site.

Targeting Email: DPS includes a Targeted Email service for composing and delivering personalized email using the same profile groups and targeting rules you use to deliver content on your web site. Also if you have Dynamo Scenario Server installed, you can use scenarios to deliver targeted email. You can use targeted email to perform below activities.

  • Send a confirmation message to a new user who registers at your site.
  • Notify frequent customers of special sales.
  • Notify all users that have not logged into your site in several months that their accounts will be closed soon.
  • Send out a mass mailing with each message tailored to its recipient.

8.Which class to extend while creating ATG Droplets?

Ans:


DynamoServlet.java

9.What are ATG FormHandlers?

Ans:

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

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

Ans:

.GenericFormHandler.java

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

Ans:

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.

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

Ans:

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.

14)Where do we deal with Payment groups? When do we charge?

Ans:

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.

15)Why does Commerce use Java Messaging Service (JMS)?

Ans:

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.

16) What are modification objects? What purpose do they serve?

Ans: 

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.

17) How do scenarios find out about what is going on in the fulfillment system?

Ans:

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.

18)How do I change the behavior of ModifyOrder messages?

Ans:

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 HardgoodFulfillerModificationHandler. 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 HardgoodFulfillerModificationHandler classes. Otherwise, a new class implementing the ModificationHandler interface should be written and configured for the OrderFulfiller or HardgoodFulfiller.

19)How do I change the behavior of ModifyOrderNotification messages?

Ans: 

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

20)How do we deal with the Modification IDs? Who is generating them? How do we guarantee the uniqueness?

Ans: 

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.

    Subscribe For Free Demo

    21)When Or In Which Scenario I Will Go For Itemlookupdroplet?

    Ans: 

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

    22)How Do The Terms Atg Dynamo And Atg Framework Interact?

    Ans: 

    The ATG framework is used by Dynamo ATG.

    23)Difference Between Express Checkout And Checkout?

    Ans: 

    • Express- Logged in user has information stored
    • Guest- will enter all information (shipping, billing, review steps) and information is not saved

    24)How To Create Custom Repository?

    Ans: 

    we have to create component/properties file:

    • $class=atg.adapter.gsa.GSARepository
    • $scope=global
    • XMLToolsFactory=/atg/dynamo/service/xml/XMLToolsFactory
    • dataSource=/atg/dynamo/service/jdbc/JTDataSource
    • definitionFiles=/com/my/myRepository.xml
    • idGenerator=/atg/dynamo/service/IdGenerator
    • tractionManager=/atg/dynamo/traction/TractionManager

    Explanantion : have to tell all the properties in our component

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

    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.

    25) What Are Atg Form Handlers?

    Ans:

    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

    26) What is a Dynamo component in ATG?

    Ans: 

    The Dynamo Component Browser, an element of the Dynamo Administration UI, is a window into ATG’s Nucleus framework. From the Component Browser, you can view and modify components in a running Nucleus-based application.

    27) Explain an Atg Dynamo?

    Ans: 

    ATG Dynamo or Dynamo Application Server(DAS) is a J2EE application server from Art Technology Group. 

    28) What Is Atg Tag Library?

    Ans: 

    Atg tag library is a variant of jsp standard tag library. However atg provides its own set of tag libraries e.g. dsp,dspel, core

    29)How To Register A Repository With The Dynamo??

    Ans: 

    Create “/config/atg/registry/ContentRepositories.properties” file and append our repository file (XML )name to the “initialRepositories” property

    Eg: initialRepositories+= /myModule/mySampleRepository

    30)How The Module Dependency Happened In Atg?

    Ans: 

    DAS DPS DSS DCS : from left to right

    We maintained it in MANIFEST.MF file

    Manifest-Version: 1.0

    ATG-Config-Path: config/

    ATG-Required: DAS DPS DSS DCS DAS

    ATG-J2EE: j2ee-apps/text J2ee

    ATG-EAR-Module: j2ee-apps/text J2ee

    ATG-Class-Path: bin

    Course Curriculum

    Become Expertise in Oracle Commerce Platform From ATG Certification Course

    Weekday / Weekend BatchesSee Batch Details

    31) What Is Manifest File?

    Ans: 

    Applications often depend on other modules, these dependencies are declared in this file.The file name is MANIFEST.MF and resides in the META_INF directory. It specifies ATG-Class-Path,ATG-Required, ATG-Config-Path etc

    32)What Is Bcc?

    Ans: 

    Business Control Center- UI for Business Users (to upload content to Catalogs, create promotions etc)

    33)What Are Different Modes Caching?

    Ans: 

    Caching modes are set at the item descriptor level, through the <item-descriptor> tag’s cache-mode attribute. The default caching mode is simple caching. To set a different caching mode on an item descriptor, set cache-mode to one of the following values: 

    • simple
    • locked
    • distributed (distributed TCP caching)
    • distributedJMS (distributed JMS caching)
    • distributedHybrid (distributed hybrid caching)

    34)Define Atg Framework?

    Ans: 

    The ATG framework is used for building Web applications which can run on JBOSS, WebLogic, WebSphere and other J2EE application servers.

    35)Explain The Atg Performance Issues ?

    Ans: 

    Performance problems come in many shapes and sizes, but they all mean that the processing of some task is not happening at the expected, and previously observed speed. Performance issues include CPU utilization problems, slow response times, high levels of db activitivities, SQL queries that run long time, Slow CA deployments, just to name a few.

    36) What Is Config Layering?

    Ans: 

    Properties set in later entries in the CONFIGPATH override earlier entries. By adding a entry to the config path you can customize any components in the system without losing the original configuration information.You can have a global configuration common to all machines then have machine specific information in the last layer.

    37)What Is A Context Root?

    Ans: 

    Is a URL mounting point of the web application. It decides what URL site site visitors will enter to get to the site. 

    “context-root” is specified in the “application.xml” file in the “j2ee-apps” folder.

    38)Name 7 Common Elements A User May See During Checkout Through Atg Dynamo?

    Ans: 

    Add to shopping cart, Login, Billing address, Payment, eMail confirmation, Confirm button, Shipped eMail address

    39)Differentiate Global,request & Session Scopes?

    Ans: 

    • Global: components are accessible from all other components.Not available across ATG servers, each server has its own copy of global scoped component.
    • Session: me every user of the application gets a separate copy of the component, and component exists for duration of the user’s session.
    • Request : A component is called in for returning the values of a search, so each time a search is triggered an object instantiation happens and its gone when the result page is closed.Which me the scope of the search component is request.

    Eg:-formhandlers normally have a request scope.

    40)What Is Atg Nucleus?

    Ans: 

    Nucleus is a ATG container for components. It creates and initializes component instances on request. It manages the components scope. It locates the properties file for the component and through that it reaches the class file of the component. Nucleus components are Java Objects each with an associated .properties file which store configuration values.

    41) What Is Base Class For All Atg Formhandlers?

    Ans: 

    GenericFormHandler.java

    42)How We Can Achive Inheritance In Atg Repository Level?

    Ans: 

    sub-type-property=”type”

    super-type=”super item”

    • Ex : <item-descriptor name=”shippingGroup” sub-type-property=”type” />

    • <item-descriptor name=”hardgoodShippingGroup” super-type=”shippingGroup” />

    Here hardgoodShippingGroup is the subitem(like class) shippingGroup is the super Item(class)

    Hence all the features/properties of shippingGroup we can get it in hardgoodShippingGroup item also.

    43) Differences Between The Item-type And Component-item-type In Definition(xml)file?

    Ans: 

    • When your property in the item-descriptor needs to hold only one value which is of type of any other repository item, use ‘item-type=”item name”’ attribute.
    • when your property needs to hold a collection (set/array/map/list) of items of type of any other repository item,use data-type = “set/array/map/list” and component-item-type=”another Item name” to specify what type each one of the element in the collection

    44)Explain Logging Features Of Atg?

    Ans: 

    Any component whose base class implements “ApplicationLogging” Interface can use atg logging infrastructure. Logging can be done per-component, per-module/per-application basis. Error, Warning,Info & Debug messages are the various logging mechanisms.First three are logged by default, whereas the Debug messages are just for debugging purpose and should be removed when the code goes into production.Logging is managed using the “GLOBAL.properties” file, which specfies the log levels of various modules.

    45) How To Create Component?

    Ans: 

    we can create it in 2 ways:

    • using ACC
    • by creating java+properties file in our module/Eclipse

    46) What Are Custom Dsp Tags?

    Ans: 

    In general, the Custom tags will be written by the developer.

    • Dsp is all ready to use. you can use to render content dynamically by linking Nucleus components directly to your JSPs. Especially, the (dsp) tag library, allow you connect your JSP content to the Java code at work behind the scenes so you can separate your application logic from your presentation layer.
    • ATG 7 provides you with three tag libraries: JSTL, DSP/DSPEL, and Core. You can find these tag libraries in /DAS/taglib.

    47) What Are All The Ootb Form Handlers You Used In Your Application Tell Me 6?

    Ans: 

    Mainly i used in my application level:

    • CartModifierFormHandler
    • PaymentGroupFormHandler
    • ShippingGroupFormHandler
    • CommitOrderFormHandler
    • GenericFormHandler
    • ProfileFormHandler

    48) Which Are The Handlex Methods In ?

    Ans: 

    HandleX methods contain the actual function to be performed. its a method. Like in ProfileFormHandler- handleLogin

    49)How Can I Resolve/initialize A Particular Component With Out Injecting In Any Component ?

    Ans: 

    ATG provides one method resolveName(component name we have to provide) in GenericService class using it we can initialise the component.

    50) Describe The Meaning Of Atg Repository?

    Ans: 

    Using ATG Dynamo, this is the process for entering into a Database using programs while keeping the actual application logic apart from the Database.

    Course Curriculum

    Best In-Depth Practical Oriented ATG Training By Experienced instructors

    • Instructor-led Sessions
    • Real-life Case Studies
    • Assignments
    Explore Curriculum

    51) What Are Derived Properties?

    Ans: 

    Enables one repository item to derive property values from another repository item or from another property in the same repository item.

    52)What Are All The Input Parameters For Foreach Droplet?

    Ans: 

    array,elementName,indexName.

    53) How Connection Will Give From Atg Module To Db?

    Ans: 

    /atg/dynamo/service/jdbc/JTDataSource.properties Using JTDataSource component will maintain the Schema/DB connection.

    54)How A Component Is Instantiated ?

    Ans: 

    One can start or stop components manually using an ACC.We can instruct nucleus to start a component during server startup, this is done by modifying the “Initial.properties” file.Add the component name to the “initialServices” property inside the Initial.properties file.

    55) Explain what is ATG?

    Ans:

    ATG is a framework for creating web applications. It is based on J2EE standards.

    56) Mention what is the core of ATG?

    Ans:

    The core of the ATG platform is

    • DAF or Dynamo Application Framework ,which implements a component development model based on JavaServer Pages (JSPs) and JavaBeans.

    57)Explain what is a droplet in ATG?

    Ans:

    • Basically, a droplet is an ATG’s custom servlet which has some atg-specific customization. It can be correlated with the HttpServlet in J2EE, but here we use DynamoServlet class which implements javax.servlet.Servlet interface in ATG.
    • Droplets are mainly used to abstract out the business logic in server side code.

    58) Explain what is a component in ATG?

    Ans:

    In ATG a component is simply is a configuration file (a simple text file with .properties extension), which uses a java class.

    59)Explain what is a Nucleus in ATG?

    Ans:

    In ATG, Nucleus is referred to the ATG container for components.  It provides an hierarchical name space to component. Each component has a unique full name so that pages and other components can reference it.

    60)Explain what is ATG component scope?

    Ans:

    Scope is nothing but a nucleus variable, which tells the nucleus till when a component will exist.

    61) By using what sign in the configuration files does nucleus properties are processed?

    Ans:

    The nucleus properties are processed by using the $ sign in the configuration files.

    62)Explain how you can create a JSPs in ATG or JSP page is processed in ATG?

    Ans:

    You can create a JSPs in ATG or JSP page is processed in ATG  by following steps,

    • User access the browser, type a URL and send a request for a JSP to ATG application
    • ATG application receives the request for the JSP file you requested
    • Once the JSP is found it is compiled into JAVA code
    • When all the content is fetched by the Java code, the end result is converted into plain HTML
    • This HTML page is sent back to the browser

    This is how the JSP page is processed in ATG application.

    63) Mention what are the types of Pipeline in ATG?

    Ans:

    The types of request handling pipelines used by Dynamo

    • DAS Servlet pipeline – It is used to handle JHTML request
    • DAF Servlet Pipeline – It is used to handle the JSP request

    64) Mention what is the default Scope of a Component?

    Ans:

    The default scope of a component is Global.

    65)Mention the two methods in a component?

    Ans:

    The two methods in a component are

    • getters & setters

    66) Mention what is the difference between FormHandler, droplet and servlet?

    Ans:

    The difference between FormHandler, droplet and servlet,

    • FormHandlers are used when there are forms. They help to perform validation for the forms
    • Droplet is from ATG, and it is used to put or render data in the database
    • Servlet is used to submit data, it acts as a controller. It is not used to put data

    67)Mention the Advantages of DAF?

    Ans:

    • It is used to deal huge data
    • It can write any object of type 1 call in to the db.
    • Dynamo messaging using patch bay and jms
    • Dependency injection

    68) Explain the performance issues with ATG?

    Ans:

    The performance issues with ATG include

    • High levels of database activity
    • CPU utilization problems
    • long running SQL queries
    • Slow response times

    69) Mention what are the two types of cache that ATG repository maintains?

    Ans:

    The two types of cache that ATG repository maintains

    • Item Cache
    • Query Cache

    70) What are the elements of ATG DPS?

    Ans:

    ATG DPS is referred to ATG Dynamo personalization system. The key elements of ATG are

    • User Profile Management
    • Content Targetting
    • Targeted E-mail
    ATG Sample Resumes! Download & Edit, Get Noticed by Top Employers! Download

    71) Mention what are the scope of Dynamo Components?

    Ans:

    The scope of Dynamo Components are

    • session
    • request
    • Global

    The default scope is Global

    72)Mention what is the main difference between JSP and DSP tag libraries?

    Ans:

    The main difference between JSP and DSP tag libraries are

    • Dsp is a ATG specific tag libraries that involves in executing only DAF framework resources. Also, Dsp imports all objects of type class.
    • JSP involves in all the functionalities for web application development. Also, Jsp imports only the primitive data types.

    73) Explain what if the ATG applications are deployed on a cluster of servers?

    Ans:

    If the ATG applications are deployed on a cluster of servers then it is better to go for either Distributed caching or Locked caching.

    74) Mention what is the difference between dsp and dspel tags?

    Ans:

    • DSP tags : DSP tag library tags support runtime expressions. These tags use an id attribute to name the scripting variables they create.
    • DSPEL tag : DSPEL tag library tags support JSTL Expression Language (EL) elements that are also evaluated at runtime.

    75)Mention what is the standard atg.repository.QueryBuilder interface defines?

    Ans:

    The standard atg.repository.QueryBuilder interface defines available query operations that repositories should support.

    76) Mention what is the advantage of Nucleus in ATG?

    Ans:

    The advantage of Nucleus in ATG are,

    • It renders a simple way to write new components
    • In nucleus, applications don’t need to contain code to create instances of components. It is created and administered through configuration files
    • By organizing configuration files into layers Nucleus provides a convenient way to modify and extend component properties
    • Nucleus provides a large number of out-of-the-box generalized service components
    • Nucleus makes it easy for application developers to set the scope of their components

    77)Explain how can you embed the output of a Java servlet (an ATG servlet bean) in a JSP?

    Ans:

    In order to embed the output of a Java servlet (an ATG servlet bean) in a JSP you need to add dsp:droplet tag with a bean attribute.

    78) Mention in order to use custom ATG servlet beans with the ATG Control Center what is required?

    Ans:

    In order to use custom ATG servlet beans with the ATG Control Center you need to apply following requirements:

    • You must make a BeanInfo file that defines the servlet bean’s parameters
    • The class must extend atg.servlet.DynamoServlet

    79)What are the two methods in a component

    Ans:

    • getters
    • setters

    80)Have you worked with repositories

    Ans:

    if you answer yes be ready to answer questions on cache, implementing a repository from scratch, and others. (please see my post on repositories)

    81)Name 2 types of tables

    Ans:

    primary and auxillary

    82) Have you worked on shopping carts

    Ans:

    CartModifierFormHandler , ShoppingCartFormHandler

    83)Name 2 types of checkout

    Ans:

    Express Checkout, Guest Checkout

    84)Difference between droplet, FormHandler and servlet:

    Ans:

    • Servlet is a java class. Droplet is from ATG
    • Droplet is used to render or put data in the db
    • Servlet is used to submit data, it acts as a controller. It is not used to put data.
    • Servlet also renders the portion of JSP page.
    • FormHandlers are used when there are forms. They help to perform validation for the forms.

    85) Differentiate between dsp and dspel tags

    Ans:

    The DSP tag library tags support runtime expressions, such as references to scripting variables. These tags use a id attribute to name the scripting variables they create.

    • The DSPEL tag library tags support JSTL Expression Language (EL) elements that are also evaluated at runtime. These tags often produce a result object named by the var attribute.
    • For custom tags we need to write the properties file and a class file to define the functions. We need to include a tag file with extension .tld. (tag library definition) and in the droplet include the path of the tag uri
    • For example we can write a custom tag to calculate the shipping rate with promotion and save it and then extend wherever required.

    86) Difference between dsp: include and jsp:include

    Ans:

    • Dsp imports all objects of type class also, where as jsp imports only primitive types.
    • Jsp includes are dynamic where as dsp include are for data which is smaller than 64 kb.

    ATG created the DSP tag library as a mechanism for accessing all data types, including those that exist in ATG’s Nucleus framework. Other functions provided by these tags manage transactions and determine how data is rendered in a JSP. It’s best to use tags from the DSP tag library only for tasks that involve Dynamo Application Framework (DAF) resources. Dsp tag support for the passing of object parameters between pages. In particular, use dsp:include rather than jsp:include, and use dsp:param rather than jsp:param.

    87) How to implement shopping cart

    Ans:

    ShoppingCartFormHandler

    88)What is the main formhandler you use for Shopping cart

    Ans:

    ShoppingCartFormHandler & CartModifierFormHandler

    89) what are the ATG component scopes(global session and request)

    Ans:

    (see post on scopes)

    90) what are the Advantages of DAF

    Ans:

    • It is used to maintain huge data
    • It has repositories which help is data anywhere architecture.
    • Dependency injection
    • It can write any object of type 1 call in to the db.
    • Dynamo messaging using patch bay and jms
    • “Inversion of Control” design pattern, whereby software components are discrete
    • entities coupled together by the Nucleus container, rather than through direct

    91) What is Component

    Ans:

    Is a Java bean

    92) What are scenarios

    Ans:

    Scenario anticipates and tracks the actions of the people who visit your Web site and responds appropriately by, for example, tailoring the content of the site, offering price promotions, or sending targeted e-mail messages

    93) what is a pipeline

    Ans:

    Atg Pipeline is a variant of Servlet Pipeline, In an ATG pipeline the sequence of Programs are executed in a queue.

    94) Is DAS for high volume or low volume traffic

    Ans:

    High volume

    95)What are the performance issues with ATG

    Ans:

    Performance problems come in many shapes and sizes, but they all mean that the processing of some task is not happening at the expected, and previously observed speed. Performance issues include CPU utilization problems, slow response times, high levels of database activity, long running SQL queries, slow CA deployments, just to name a few.

    96) Why is Eclipse used with ATG

    Ans:

    Eclipse IDE

    Are you looking training with Right Jobs?

    Contact Us
    Get Training Quote for Free