Saturday, July 13, 2024

Configuring logging for the HCL Commerce - V9

 

Steps to enable Logging in Non-prod envs or Lower Environments of HCL Servers for debugging Issues.


1. Access the WebSphere Application Server Administrative Console.

http://hostname:9060/ibm/console

or

https://hostname:9043/ibm/console
2. Expand Troubleshooting > Logs and Trace. The Logging and Tracing page displays in the workspace on the right.

3. Click the server for which you want to enable the tracing (such as 'server1'). The window refreshes to display the logging and tracing options for the server.

4. Click Diagnostic Trace. The Diagnostic Trace Service window displays in the workspace.

5. Click the Configuration or Runtime tab.
Changes made to Configuration are stored on the file system and applied when the server starts. You must restart the server to pick up any changes. This is required for finding issues that originate or occur when the server is initiated. Modifications to Runtime are applied immediately and are lost after the server is restarted.

6.
Optional: Select Change Log Detail Levels to modify tracing configurations for components or packages.
  • For component-based traces, use the component names. For a list of component-based traces, see Trace strings.
  • For package-based loggers, find the package or class name and determine the appropriate logger name to use. Consider the following SolrSearchConfigurationRegistry class as an example,

com.ibm.commerce.foundation.internal.server.services.search.config.solr.SolrSearchConfigurationRegistry

Set the following trace specification:

For class-level tracing, use the exact match to the package and class name. For example,
com.ibm.commerce.foundation.internal.server.services.search.config.solr.SolrSearchConfigurationRegistry=all


If you are tracing multiple log detail levels, separate the traces with a colon. For example:


com.ibm.websphere.commerce.WC_SERVER=all:com.ibm.websphere.commerce.WC_ORDER=all

Tracking all helps in diagnosing problems so that multiple traces can be avoided. As an alternative to all, classes can also use warning and info traces, where info contains the least trace impact.

7. Click Apply > OK to apply the changes to your server. If you selected to change the log details levels on the Configuration tab, restart your server.

8. you should now be able to see traces in the console or log files..


Below are some of the components and their trace strings please refer.

ComponentTrace string
Promotion
com.ibm.websphere.commerce.WC_ORDER=all:
com.ibm.websphere.commerce.WC_CALCULATION=all:
com.ibm.commerce.marketing.promotion.*=all:
com.ibm.commerce.promotion.*=all
com.ibm.commerce.foundation.logging.*=all
Marketing
com.ibm.websphere.commerce.WC_MARKETING=all:
com.ibm.commerce.marketing.*=all:
com.ibm.commerce.foundation.*=all:
com.ibm.commerce.content.*=all:
com.ibm.commerce.membergroup.*=all:
com.ibm.websphere.commerce.WC_USER=all
com.ibm.commerce.marketing.cache.*=all
com.ibm.commerce.store.marketing.*=all
com.ibm.commerce.foundation.logging.*=all
Orders
com.ibm.websphere.commerce.WC_ORDER=all:
com.ibm.websphere.commerce.WC_CALCULATION=all:
com.ibm.websphere.commerce.WC_EDP=all:
com.ibm.websphere.commerce.WC_PPC=all:
com.ibm.websphere.commerce.WC_INVENTORY=all
com.ibm.commerce.foundation.logging.*=all
Catalog
com.ibm.websphere.commerce.WC_CATALOG=all: 
com.ibm.commerce.foundation.*=all: 
com.ibm.websphere.commerce.WC_SERVER=all:
com.ibm.commerce.foundation.client.lobtools.*=all:
com.ibm.commerce.catalog.*=all
Attribute Dictionary
com.ibm.commerce.tools.*=all: 
com.ibm.commerce.catalog.*=all:
com.ibm.commerce.foundation.*=all:
com.ibm.websphere.commerce.WC_SERVER=all
Price rules
com.ibm.commerce.foundation.*=all:
com.ibm.commerce.price.*=all:
com.ibm.websphere.commerce.WC_CONTRACT=all: 
com.ibm.websphere.commerce.WC_ORDER=all:
com.ibm.commerce.catalog.*=all
Catalog filters
com.ibm.commerce.catalog.*=all: 
com.ibm.commerce.catalogentry.*=all:
com.ibm.commerce.contract.*=all:
com.ibm.commerce.foundation.*=all: 
com.ibm.websphere.commerce.WC_CATALOG=all:
com.ibm.websphere.commerce.WC_CONTRACT=all
Management Center
com.ibm.commerce.foundation.client.lobtools.*=all
com.ibm.commerce.foundation.logging.*=all
User registration and login
com.ibm.websphere.commerce.WC_SERVER=all:
com.ibm.websphere.commerce.WC_USER=all:
com.ibm.websphere.commerce.WC_ACCESSCONTROL=all
com.ibm.commerce.foundation.logging.*=all
Calculation framework (orders)
com.ibm.websphere.commerce.WC_ORDER=all:
com.ibm.websphere.commerce.WC_CALCULATION=all:
com.ibm.websphere.commerce.WC_MARKETING=all
com.ibm.commerce.foundation.logging.*=all
Dynamic Cache

The following strings are useful for diagnosing cache-related problems on the Transaction server. The trace strings are listed from the highest-level and most important tracing to the most detailed.

Each trace string creates some extra logging and can impact performance. If you need to reduce the performance impact, remove the trace strings beginning from the end of the list, unless a particular string is required for diagnosing the initial issue.
com.ibm.commerce.dynacache.commands.*=all
com.ibm.commerce.foundation.logging.*=all
com.ibm.commerce.datatype.*=all
com.ibm.websphere.commerce.WC_CACHE=all
com.ibm.ws.cache.*=all
Session Management
com.ibm.websphere.commerce.WC_SERVER=all:
com.ibm.websphere.commerce.WC_BUSINESSCONTEXT=all:
com.ibm.websphere.commerce.WC_USER=all: 
com.ibm.websphere.commerce.WC_SESSIONMANAGEMENT=all:
com.ibm.commerce.foundation.*=all:
Search scheduled job for update index
com.ibm.commerce.foundation.dataimport.*=all
com.ibm.commerce.foundation.logging.*=all
Search build index
*=info:com.ibm.commerce.foundation.*=all:
com.ibm.commerce.rest.*=all:
com.ibm.commerce.catalog.facade.server.*=finest
Search health check
*=info:com.ibm.commerce.rest.*=finest
Search rules
:*=info:com.ibm.commerce.rest.*=all:
com.ibm.commerce.marketing.*=all:
com.ibm.commerce.foundation.*=all:
com.ibm.commerce.catalog.*=finest
Search Rules Based Sales Categories
*=info:com.ibm.commerce.rest.*=all:
com.ibm.commerce.marketing.*=all:
com.ibm.commerce.foundation.*=all
Access control
com.ibm.websphere.commerce.WC_SERVER=all:
com.ibm.websphere.commerce.WC_USER=all:
com.ibm.websphere.commerce.WC_ACCESSCONTROL=all
com.ibm.commerce.foundation.logging.*=all
 
Cross site protection
com.ibm.websphere.commerce.WC_SERVER=all
com.ibm.commerce.foundation.logging.*=all
SEO
*=info:
com.ibm.commerce.seo.*=all
com.ibm.commerce.foundation.logging.*=all
Commerce Composer
*=info: 
com.ibm.commerce.foundation.logging.*=all
com.ibm.commerce.pagelayout.*=all
Data load
  • Data load framework trace
    com.ibm.commerce.foundation.dataload.*=all.
  • Catalog data load:
    com.ibm.commerce.catalog.dataload.*=all
  • Promotion data load
    com.ibm.commerce.promotion.dataload.*=all
  • Marketing data load
    com.ibm.commerce.marketing.dataload.*=all
  • Price data load
    com.ibm.commerce.price.dataload.*=all


Reference Links:

https://help.hcltechsw.com/commerce/9.0.0/admin/tasks/tlslogging_txn_dev.html


Thanks for reading my blog!!

Sharing Is Caring!!!!!!

Friday, September 25, 2020

Creating a new Registry to cache data from particular Table in WCS

Creating a new Registry to cache data from particular Table in WCS

Let's consider a Scenario:
We have a Table from which the data (data is not being changed frequently) is being fetched an enormous amount of time which leads to too many DB hits.

For this scenario/requirement, we can create a WCS registry which has the complete table data cached to the registry we are about to create.

In our case, 
Let's consider a table X_SHIPPINGPRICEEXCEPTION which has the shipping price of some items/products, The shipping price of these products is fixed (products shipping is not variable based on weight) and it is persisted in this X_SHIPPINGPRICEEXCEPTION table.

This table has only two fields ie PARTNUMBER and PRICE.

The requirement was to store the complete details of this table to the newly created REGISTRY and The data can be retrieved from this registry to avoid the DB Hits.

The registry name I have chosen will be XXXXShippingExceptionRegistry and the registry classname be XShippingExceptionRegistry.

Let's start creating a Registry class.

Create a Registry class (XShippingExceptionRegistry) that implements interface com.ibm.commerce.registry.Registry

The Registry class has below listed methods which we override and write our logic based on the requirements:
initialize() -- gets called when the server starts.
refresh() -- Gets called when user or admin tries to clear/refres/update the registry from admin console
Which imports to import?

import com.ibm.commerce.registry.Registry;
import com.ibm.commerce.registry.RegistryManager;

In my case the methods look like below: 

private Map mappingData ;
public Map getMappingData() {
    return mappingData;
}

@Override public void initialize() throws Exception { 
RegistryManager.singleton().addRegistry("XShippingExceptionRegistry", this); 
//This is the Custom method that is used to get the table contents using 
JDBC Helper loadContents(); 

private void loadContents() {
if(mappingData == null){ 
mappingData = new HashMap<>(); 
ServerJDBCHelperAccessBean jdbcHelper = new ServerJDBCHelperAccessBean();
List shippingExceptionPriceInfoList =null;
String getShippingExceptionPriceSql = "SELECT PARTNUMBER, PRICE FROM X_SHIPPINGPRICEEXCEPTION";
try {
shippingExceptionPriceInfoList = jdbcHelper.executeQuery(getShippingExceptionPriceSql); 
} catch (RemoteException | NamingException | SQLException | CreateException e) { 
//Add loggers here
}
processSqlResult(shippingExceptionPriceDBList); 
}

private void processSqlResult(List shippingExceptionPriceDBList) {
if (shippingExceptionPriceDBList != null && !shippingExceptionPriceDBList.isEmpty()) {
java.util.Iterator shipPriceIterator = shippingExceptionPriceDBList.iterator(); 
String skunumber = null; 
String shipExceptionPrice = null; 
while (shipPriceIterator.hasNext()) {
List vObj = (List) shipPriceIterator.next(); 
if (vObj.get(0) != null) { 
skunumber = vObj.get(0).toString();

if (vObj.get(1) != null) { 
shipExceptionPrice = vObj.get(1).toString(); 
if (skunumber != null && shipExceptionPrice != null) { 
mappingData.put(skunumber, shipExceptionPrice); 

//Add Logger to print the size of the list if required: "Populating registry is completed for total count : "+ mappingData.size()" 
}

The refresh method would look like below which clears and populates the data to the registry. @Override 
public void refresh() throws Exception { 
mappingData.clear(); 
loadContents();

We need to add entry in WC-server.xml for the Registry.

<Registries>
<registry name="XXXXShippingExceptionRegistry" regClassName="com.academy.commerce.shipping.registry.XShippingExceptionRegistry"/>
</Registries>

How to clear the registry or the cached data?

If we have to clear or refresh the Registry data, we can do it from the admin console with "registry refresh" option -> select the registry -> update the registry.

How to use this registry to retrive the data from shipping registry and use it?

XShippingExceptionRegistry XShippingExceptionRegistry = (XShippingExceptionRegistry) RegistryManager.singleton().getRegistry("XXXXShippingExceptionRegistry"); 
Map shippingExceptionMapping = academyXShippingExceptionRegistry.getMappingData(); 
xShippingExceptionPrice = new BigDecimal(shippingExceptionMapping.get(partnumber));


Thanks a lot for reading my Blog. 

Sharing Is Caring!!!!!!

Tuesday, September 10, 2019

Enable/disable the optimization of large shopping cart order commands


Enabling/disabling the optimization of large shopping cart order commands


How to Enable and disable the optimized large shopping cart order commands


This will help you to improving the large shopping carts, you can optimize for the following commands commands
  • OrderItemAdd
  • OrderItemUpdate
  • OrderItemDisplay
  • OrderCalculate commands.


Steps

To enable the optimized code path


1. Edit the WebSphere Commerce configuration file (wc-server.xml).

2. Add the following element in the <InstanceProperties> element:

<OrderCommandOptimization com.ibm.commerce.orderitems.commands.OrderItemBaseCmdImpl="true"/>

3. Propagate the changes to the Web Sphere Commerce configuration file (wc-server.xml).

4. Restart the WebSphere Commerce instance.


To disable the optimized code path


1. Edit the WebSphere Commerce configuration file.

2. Add the following element in the <InstanceProperties> element

<OrderCommandOptimization com.ibm.commerce.orderitems.commands.OrderItemBaseCmdImpl="false"/>

3. Propagate the changes to the Web Sphere Commerce configuration file (wc-server.xml).

4. Restart the WebSphere Commerce instance.

Reference:

https://www.ibm.com/support/knowledgecenter/en/SSZLC2_8.0.0/com.ibm.commerce.admin.doc/tasks/tosedshpcartordcmd_dup.htm

Updated HCL infocenter Link:
https://help.hcltechsw.com/commerce/8.0.0/developer/tasks/tosedshpcartordcmd.html

Sharing Is Caring!!!!!!

Saturday, July 14, 2018

IBM WCS ACPLOAD Command Execution Steps

Acpload command
To run the access control policies you need to use acpload.bat in  \bin directory with in you WebSphere Commerce Developer installation directory (M:\IBM\WCDE80\bin).

To run acpload if you are using default WCD (Derby DB)

  • Open command prompt and go to bin directory 
  • Run acpload ACPolicyfilename.xml

To run acpload if you are using DB2 or Oracle

  • Open command prompt and go to bin directory 
  • Run acpload <your database name> <your Db user name>  <your Db user password>   <ACPolicyfilename.xml >  <DB schema name (normally it will be same as  your database user name)>

acpload.bat WCSDB db2admin db2admin D:\IBM\WCDE80\xml\policies\xml\ACPPolicy.XML WCSADMIN

  • check the acpload.logs and make sure there is no errors. 


Sharing Is Caring!!!!!!

Thursday, October 27, 2016

SOlr configuration steps

SOlr configuration steps


The Following Steps should be followed to configure (Commands are case-sensitive)

1 Stop the server 

2 Go To Db2Console/CMD Prompt then click on the database and search for the store table and check the STORE_ID (DEFAULT IS 10001)

3 Then go to DB2CMD or CMD

4 Go to path "C:\IBM\WCDE_ENT70\components\foundation\subcomponents\search\bin"

5 And Run the following command(Without Quotes)
 "setupSearchIndex.bat -masterCatalogId 10001"

6 10001 is the STORE_ID

7 Start the Server now

8 Now again go to the path "C:\IBM\WCDE_ENT70\bin"

9 Execute the command (Without Quotes)
"di-preprocess.bat c:\IBM\WCDE_ENT70\search\pre-
processConfig\MC_10001\DB2"

10 Execute the command (Without Quotes)
"di-buildindex.bat -masterCatalogId 10001"

Note:
The exit code should be '0' for both the Commands or Batch processes... 

If the Exit code is '3' then Re-Run the command with the parameter "-force true" which means run this forcebily even if there is any other scheduled Preprocess/buildindex is running. Refer the below links for more information.

Reference Links:
Preprocessing:
http://www.ibm.com/support/knowledgecenter/SSZLC2_8.0.0/com.ibm.commerce.search.doc/tasks/tsdsearchbuildpre.htm


BuildIndex:
http://www.ibm.com/support/knowledgecenter/en/SSZLC2_8.0.0/com.ibm.commerce.search.doc/tasks/tsdsearchbuildindex.htm


Cheers!!!! You have completed the Preprocessing and Reindexing.


Sharing is Caring!!!!


WCS IBM Issue Fix: PricePending Issue even after the Di-preprocess and Di-build Index

If facing any Price Pending issue in the store front its normally because of the Di-preprocess and Di-buildIndex, But if its same even after performing the Di-preprocess and Di-buildIndex then it seems to be the issue because your currency is not being mentioned in the XML's and its taking the default/OOB currencies and your currency is not mentioned in the XML's.

Steps to fix this:
1. First select a currency that you feel you are not going to use it in the future for this project and search for it in the below mentioned three files and replace it with the currency you want to use.
2. Navigate to the below location>Open below files in any Text editor like Notepad++
  • For Solr:
          C:\IBM\WCDE80\search\solr\home\MC_10001\en_US\CatalogEntry\conf\wc-data-config.xml
  • For pre-processConfig:
          C:\IBM\WCDE80\search\pre-processConfig\MC_10001\DB2\wc-dataimport-preprocess-listprice.xml
          C:\IBM\WCDE80\search\pre-processConfig\MC_10001\DB2\wc-dataimport-preprocess-offerprice.xml

Eg:
    ILS is Israel Currency and i'm not going to use it in the future and i Need AUD currency which is Australian Dollar. 

3. Search for the Text "ILS" and Replace all of its OCCURANCES with "AUD"
Repeat the step for all the Three above mentioned Files and make sure you save Them.

4. Then Perform Di-Preprocess and Di-Build Index or Click here to Refer the Blog

 Cheers!!!! You have Done and It should work if the Issue is related to Currency...



Sharing is Caring!!!!



Thursday, October 13, 2016

Script to Reset the wcsadmin password in WCS IBM

To Reset the wcsadmin password in WCS IBM follow the below steps:

Step-1
Open the Db2 console center or any other db2 client to run sql's and go to query editor.

Step-2
Copy and paste the below queries one by one or together and execute them.

update userreg set logonpassword = x'74434f61354f51593862415655304d5268424e54723865685653356151374a2b353163506c4261363730633d202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020' where logonid='wcsadmin';

update userreg set salt = 'hsdbacehyoyn' where logonid='wcsadmin';

update userreg set status = 1 where logonid='wcsadmin';


update userreg set passwordexpired = 0 where logonid='wcsadmin';


Step-3 
The above scripts reset's the password of the wcsadmin user to "wcsadmin"

Navigate to the store in the browser and login to the site using the user name "wcsadmin" and password "wcsadmin".

After successful login change the password as required.



Sharing is Caring!!!!

Thursday, September 29, 2016

Database Backup Steps and commands for IBM WCS

Steps:
  • Go to Start and type "run" and open.
  • In the Run console type "db2cmd" and the window will open.
Execute the below commands in the given order.
  • CONNECT TO DBNAME user USERNAME using PASSWORD
  • QUIESCE DATABASE IMMEDIATE FORCE CONNECTIONS
  • CONNECT RESET
  • DEACTIVATE DATABASE DBNAME
  • BACKUP DATABASE DBNAME TO "C:\CASE STUDY DB BACKUP" WITH 2 BUFFERS BUFFER 1024 PARALLELISM 1 COMPRESS  WITHOUT PROMPTING
  • ACTIVATE DATABASE DBNAME
  • CONNECT TO DBNAME
  • UNQUIESCE DATABASE
  • CONNECT RESET
Note: 
         -Replace the word DBNAME with the name of your Database.
         -USERNAME is databse admin name and PASSWORD is Databse admin password.
         -Example commands are given below.
         -For each command the "db2" should be pre-fixed before executing as given below.

Example of script:

db2 CONNECT TO AURORADB user db2admin using passme!23
db2 QUIESCE DATABASE IMMEDIATE FORCE CONNECTIONS
db2 CONNECT RESET
db2 DEACTIVATE DATABASE AURORADB
db2 BACKUP DATABASE AURORADB TO "C:\CASE STUDY DB BACKUP" WITH 2 BUFFERS BUFFER 1024 PARALLELISM 1 COMPRESS  WITHOUT PROMPTING
db2 ACTIVATE DATABASE AURORADB
db2 CONNECT TO AURORADB
db2 UNQUIESCE DATABASE
db2 CONNECT RESET


In the above the AURORADB is the Database name used, db2admin is database admin name and passme!23 is the password for the admin.

Please try and any doubts or queries comment down..

Sharing is Caring!!!!







Wednesday, September 7, 2016

Adding/Importing the SSL or Signer certificates in IBM WCS

     To Add a Signer certificate.

  1.  Open Server Admin console from RAD.
  2.  Navigate to Secutity and Expand it.
  3.  Then click on  SSL certificate and key management.
  4.  in the console check on Right Side for more options and click on Key stores and certificates
  5.  In that there should be a lot of NODES select for NodeDefaultTrustStore  click on it.
  6.  on the right side check for Additional Properties and in that click on the Signer certificates.
  7.  The Navigated Path should look like this "SSL certificate and key management > Key stores and certificates > NodeDefaultTrustStore > Signer certificates"
  8.  Next to add and delete button find the retrieve from port button
  9.  now gotta fill the mandatory fields  like Host, Port and Alias.
  10.  Host can be for eg "developer.authorize.net" and port try 443 and Alias give any meaning ful name to recognise it. 
  11. Then click on Retrieve Signer Information and wait for the certificate import.
  12. Then apply and save it with out fail.
  13. Restart the server and test.

Important Note:

If you get the error as "ErrorReceived fatal alert: handshake_failure" while adding the certificate follow below steps as a Fix.
  1. Navigate to SSL certificate and key management.
  2. In the Related Items and click on SSL Configurations.
  3. Then click on NodeDefaultSSLSettings.
  4. Find the Additional Properties and click on Quality of protection (QoP) settings.
  5. Here by Default SSL_TLS might be selected.
  6. Change it to  TLSv1.2 or SSL_TLSv2.
  7. It will solve the issue.

Monday, March 14, 2016

WCS Inteview Questions

What is the controler command explain it?
What is the difference between ATP and NON-ATP?
How can we make or specify that we are going to use ATP or NON-ATP?
Difference between controller command and task command?
Steps to create controller command?
Steps to create task command?
How retrive data in JSP?
Dfferences between the Smart databean and Command databean?
What do you mean by Lazy fetch?
What are the TAG Libraries used in the JSP?
Explain EJB creation?
What is the use and why do we use AccessBeans?
How to use AccessBeans to insert and retrieve data?
What is the use of finder methods in the AccessBeans?
What is the use of RefreshCopyHelper()?
What is the use of CommitCopyHelper()?
-----*-----*-----*------*----*----*----*----*----*----*----*----*----*-----*-----*-----*-----*----*-----*----
What are the Order Status and when do then get changed?
When and which command changes the order status from "S" to "D"?
How to configure Promotions?

What are the fields in the ORDER table?
Ans: Order_Id, OrderItems_Id, Member_Id, Address_Id etc

How to get Address information from ORDER table?
Ans: Using Address_id in the Orders Table we can get the corresponding Row in the ADDRESS table.

List out the tables in the Catalog Subsystem?
Ans: CATENTRY, CATENTREL, CATENTATTR, ATTR, ATTRVAL, ATTRVALDESC etc

Which table holds the Relation between the parent and child catentry?
Ans: CATENTREL
How to check exceptions in the production environment and debug them?
Ans: By Enabling the trace logs
Where Do we create products?
Ans: Accelerator and Management Center

-----*-----*-----*------*----*----*----*----*----*----*----*----*----*-----*-----*-----*-----*----*-----*----
Can we invoke the Task command from URL if give the struct entry?
what are the diffrent type of promotion?
what are all the methods there for AccessBean?
Explain the OOB Order Flow?


More Questions...
General
  • JSTL tags and its details?
  • How to configure JMS in wcs?
  • How to develop webservice in wcs?
  • Explain the access control policy?What is the purpose of access control policy?
  • How to publish the store?what you mean by starter store?
  • How to setup payment ,tables,payment policy,payment types ?
  • Explain the Dynacache?
  • How to enable single sign on?
  • How to enable cross site scripting?
  • How to do fitgap analysis in WCS?
  • What the EJB transaction parameters?
  • which are different types of entity beans n which one is used in commerce?
  • Which are the different types of databeans. What is commonly used in commerce.when do we use it?
  • which are the different flavours of EJB in wcs ?
  • What are acessbeans? What is the advantage of accessbean?
  • How to read the object status from the Remote Java VM?
  • Steps of insert and read data into commerce tables?
  • State one diff between 6.0 and 7.0 commerce version?
  • what is optimistic locking?
  • Which are the different subsystems in commerce?
  • What are the different tools available in commerce?
  • How to schedule job in the commerce ,tables ?
  • Which are the different databases which commerce supports?
  • Which is default database in commerce?
  • Explain Control command and task command in wcs ?
  • What is the use of KEYS table in wcs ?
  • What is the use of CMDREG table in wcs ?
  • How to instatiate a databean -2 ways?
  • What is a command context.?
  • List different types of command context ?
  • How do you instantiate a task command ?
  • Can we instantiate controller command from another controller command ?
  • How do you pass data from controller command to task command?
  • Name five methods available in a Controller command?
  • What is validateParameters() used for?
  • What is the purpose of isRetriable() method in a controller command?
  • what is the first method executed when a controller command is invoked?
  • What is the method called when a databean is invoked?
  • what is the use of optCounter field?
  • List all tag libraries used in a JSP?
  • Why is struts-config entry required while creating a JSP or a command?
  • What is the use of commitCopyHelper() and refreshCopyHelper()?
  • What does map.mapxmi file contain?
  • what does stores project contain?
  • While creating a new View, what are the entries made in struts-config xml?
  • What is format tag used for?
  • what is a locale?
  • What does SAR file mean?
  • What is the default store for b2c?
  • What are the different editions of WCS?
  • List the different business models of wcs ?
  • Which are different types of Exceptions used in commerce?
  • Whats the difference between system Exception and Application Exception?
  • Which exception is retriable?
  • How can we make a command retriable?
  • Which the main Exception class used in commerce?
  • Functional architecture and Runtime architecture of WCS 6.0/WCS 7.0.
Member subsystem
  • Organization hirarchy?
  • Different tables used for user registraton?
  • Releationship between the user and organization?
  • How to create roles ?
  • How to create users?
  • How to create organization?
  • What are the different typs of user types?
  • What are the different types of member groups

Merchandizing
  • How to setup promotion- explain the tables used for promotion ?
  • How to create campagin activity?
  • What are the diffent activity in marketing campaign?

Order Subsystem
  • Explain the differnt order status?
  • Difference between the order item and orders and tables ?
  • Different types of promotions and details with tables?
  • Explain the Calculation frame work with example and tables?
Accelerator
  • Explain the Acceleretor framework?
  • Explain in detal any customisations or development done in acceleretor using Notebook, Wizard, Dialogs?
  • Best practices for customizing accelretor?

Adminstration
  • How to setup the email?
  • What is the use of transport option in administration console?

Contracts
  • How to create contract?
  • How to setup the Catalog filter and explain with tables?

Catalog
  • Difference between mastercatalog and sales catalog?
  • How to setup different category - tables and commands?
  • Explain the SKU,partnumber with catalog tables?
  • What is dictionary?
  • Which tool is used for catalog management ?
  • what is the difference between product and item?
wcs7.0

  • About wcf


Sharing is caring... Share it with the one's who need it..