Oracle ATG Interview Questions and Answers

ATG Interview Questions

How to create Component?

we can create it in 2 ways,

I) using ACC

II)by creating java+properties file in our module/Eclipse

How to create custom Repository?

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

transactionManager=/atg/dynamo/transaction/TransactionM

anager

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

transactionManager : for transaction purpose either to commit or roll back i particular transaction/task

How the module dependency happened in ATG ?

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/testJ2ee

ATG-EAR-Module: j2ee-apps/testJ2ee

ATG-Class-Path: bin

Differences between the item-type and Component-item-type in definition(xml)file?

i)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.

ii)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

Ex :

i)<item name=”student” >

<property name=”std name” item-type=”name” />

</item>

<item name=”name”>

<property name=”student name”/>

</item>

ii)<item name=”student” >

<property name=”std classes” data-type=”set”component-item-type=”classes”/>

</item>

<item name=”classes”>

<property name=”class name”/>

<property name=”section name”/>

<property name=”teachers name”/>

</item>

How connection will give from ATG module to DB?

/atg/dynamo/service/jdbc/JTDataSource.properties

Using JTDataSource component will maintain the Schema/DB connection

What are all the OOTB formhandlers you used in your application tell me 6?

Mainly i used in my application level

i)CartModifierFormHandler

ii)PaymentGroupFormHandler

iii)ShippingGroupFormHandler

iv)CommitOrderFormHandler

v)GenericFormHandler

vi)ProfileFormHandler

How can i resolve/initialize a particular component with out injecting in any component ?

ATG provides one method resolveName(component name we have to provide)

in GenericService class using it we can initialise the component.

What are all the input parameters for ForEach Droplet?

array,elementName,indexName.

How we can achive Inheritance in ATG Repository level?

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.

when or in which scenario i will go for ItemLookupDroplet?

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