ATG Customize and Enhance your CRS Module easily

Firstly we need to create a folder and give the name of your choice,For example i have given Wirelessstore, inside that folder you create a META-INF folder,and create a MANIFEST.MF file,once this is done then modify the Manifest file property to ATG-Install-Unit:MyWirelessStore(MyWirelessStore is the name i have given instead of the name Store in CRS module) and create a folder with the same name MyWirelessStore under Wirelessstore,after this copy all  CRS-Store folders under this folder.

You can Refer the CommerceReferenceStore Manifest file for this.

Now configure your eclipse and import the necessary folders to your workspace.Resolve the classpath by importing required Jars and Classes to your Buildpath and do a clean build of your Project.

Now create a runAssembler command so that it will pick modules from your newly created folder structure.

runAssembler -m ATGProduction.ear -m DafEar.Admin DPS DSS  DSS DCS.PublishingAgent MyWirelessStore.EStore MyWirelessStore.Recommendations MyWirelessStore.Storefront.NoPublishing    MyWirelessStore.Fulfillment

so now you have the ATGProduction.ear ready to deploy in your Application Server.Deploy it and run the Server with correct datasources you can see the CRS running exactly same way similiar to the one installed through CIM or other ways.

Now modify your JSPs,Java,Components and do a clean build and deploy your changes will appear in the CRS Application.

Similiarly create a runAssembler for the Publishing modules and do the necessary configurations in BCC and do a full deployment.


Issues Faced during creation of CRS Module

If you are customising the CRS Module you need to take care of the reference to absolute path of certain components,one such issue i faced is the application is not able to find the exact keystore location.This happens even adding an item to Cart and further flows.

the keystore location is mentioned in the component /atg/store/security/crypto/SecretKeyStoreManager  with the property 'file'.You need to modify the entry so that it will point to your modified structure.


The actual entry in CRS will be like
file = {appModuleResource?moduleID=Store.EStore&resourceURI=keystore/store-crypto.jks} ,you have to modify this so that it point to MyWirelessStore.

For example in my application the absolute path will be C:\ATG\ATG10.2\Wirelessstore\MyWirelessStore\EStore\keystore\store-crypto.jks

Comments

Popular posts from this blog

BCC site status inaccessible Agent Production in error state

Weblogic Issues during EAR Deployment Exception in AppMerge flows progression

Add a shopping cart button to the product page