WCS Development Interview Questions & Answers

  1. Question 1. What Is The Difference Between Controller And Task Command.?

    Answer :

    Controller Command is the command that gets called upon a request, just like We have actions in struts and controller in Spring. Task is a step in this bigger process. Task command are the commands that perform specific task for a controller command, like service classes in other frameworks. In order to complete the request, a controller command may invoke multiple task commands.

    Other difference are:

    1. There is a url mapping for controller command whereas Task command don’t have URL mapped to them.
    2. Controller command gets invoked before the task command.
  2. Question 2. What Is Difference Between Product And Item?

    Answer :

    Item is a sale-able merchandise where as Product is a group of sale-able merchandise which share certain attributes. For example – Cell phone is a product whereas Samsung Galaxy S2 – White is an item.

    Quantity is always attached to SKU ( Stock keeping unit ) or items. Product quanity has no relevance in terms of identify the current stock or reorder condition. 

  3. Networking Interview Questions

  4. Question 3. How Promotions Are Created And Stored In Wcs?

    Answer :

    Promotions are created either using Management Center or Accelerator. PX_PROMOTION table is used to store Promotions. Complete Promotion is stored as an XML string within XMLPARAM column.
    Other tables which are used to store promotion related information are:

    CATENTCALCD

    CALCODE

    CLCDPROMO

  5. Question 4. What Is Purchase Condition And Reward In Promotions?

    Answer :

    Purchase condition is the condition that must be fulfilled before a promotion is applied and Reward is the benefit that is passed to customer.

    For Example: If promotion is “Buy 2 Quantity of  X,  Get Y Free” , Purchase condition is inclusion of 2 qty of X in Cart. Reward in this case would be 1 qty of Y.

  6. Networking Tutorial

  7. Question 5. What Steps Are Needed To Create A New Promotion Type?

    Answer :

    a. Create necessary lzx files( template , object definition and properties ), make config entries and then Build open Laszlo project ( for LOBTools ) so that new promotion type should be displayed in management center.
    b. Create a new promotion type xsl ( promotion type template ) and then map it to the promotionn type.

  8. Linux Interview Questions

  9. Question 6. How Can You Check The Status Of An Order?

    Answer :

    By querying the STATUS from the ORDERS table.

  10. Question 7. How Can We Remove A Jsp Page From Getting Cached?

    Answer :

    Remove the jsp entry from cachespec.xml.

  11. Linux Tutorial
    Active Directory Interview Questions

  12. Question 8. Where Do We Store Db Configuration And How Can We Change That ?

    Answer :

    wc-server.xml stores the DB configuration. We can either change it manually or by using setdbtype command.

  13. Question 9. What Are The Steps To Create A New Business Policy?

    Answer :

    Step 1 – Create a new policy definition by adding record in tables POLICY, POLICYDESC.

    Step 2 – Associate the new policy with its terms and conditions by adding a record in relationship table POLICYTC.

    Step 3 – Associate commands to the new policy by adding records in POLICYCMD.

    Step 4 – Add reference to the policy in the repective contract xml file.

  14. IBM WebSphere ESB Interview Questions

  15. Question 10. How Access Control Policies Are Implemented In Wcs ?

    Answer :

    There are three elements i.e Users ( Who want access ) , Actions ( What kind of Access ) and Resources ( Whose Access ). The relationship between resource and user is store in ACRELATION table and ACRESREL associate a resource and relationship.

  16. Question 11. What Are The Design Patterns Used In Wcs?

    Answer :

    MVC, Display Design and Command.

  17. windows server 2008 Interview Questions

  18. Question 12. What Information Is Stored In Cacheivl Table And How Does This Help In Caching ?

    Answer :

    This table records the changes to product or category information in the database. This is referred by WCS for invalidating dynacache.

  19. Networking Interview Questions

  20. Question 13. What Is Sku ?

    Answer :

    SKU is Stock keeping unit. Items are referred to as SKU as they are the narrowest identifier for which business needs to track quantity.

  21. Question 14. Why Can’t We Add Products While Specifying Target Catalog Entry In Promotions?

    Answer :

    Product refer to category of Items and hence can’t be associated to a particular Stock keeping unit. Items can only be targeted while creating promotions.

  22. Question 15. What Is B2c And B2b Business Model?

    Answer :

    B2C business deals with selling merchandise directly to consumers whereas B2B business deals with selling / coordination with other businesses ( partners , distributors , affiliates etc ) for selling merchandise.

  23. Domain Name System(DNS) Interview Questions

  24. Question 16. Explain Concept Of Hubs And Extended Site Stores?

    Answer :

    Hub and Extended sites /stores are used in case of selling through partners and affiliates. Hub is the central site around which extended stores are created by/for the respective partner / affiliate. Store owner performs the extended site administrations whereas overall control over merchandise remains with the site.

  25. Question 17. What Are Espots And How Do We Manage Them?

    Answer :

    eSpot is the mechanism in WCS to schedule and display dynamic content. Content management for these slots are done through Accelarator.

  26. DHCP Interview Questions

  27. Question 18. What Is Dynacache And Role Of Cachespec.xml In Wcs ?

    Answer :

    Dynacache in WCS is the object cache. Instead of creating objects again and again , the store objects are rendered on the basis of matched rules. Caching rules are stored in a configuration file called cachespec.xml.

  28. Linux Interview Questions

  29. Question 19. Can We See Objects Cached In Dynacache?

    Answer :

    We can see , monitor and can even change dynacache manually but for that we need to install a seperate application provided by WCS.

  30. Question 20. How To Enable Cross Site Scripting Protection In Wcs ?

    Answer :

    By specifying XSiteScriptingProtection within wc-server.xml. Prohibited characters and attributes are specified within XSiteScriptingProtection to protect the application from any XSS attach.

  31. WCS admin Interview Questions

  32. Question 21. What Is An Asset Store ?

    Answer :

    Asset stores are collections of sharable resources (business artifacts, business processes and storefront assets) that can be leveraged in other stores. 

  33. Question 22. What Is An Attribute Dictionary And What Are Its Benefits ?

    Answer :

    Attribute dictionary is a set of common attributes that can be reused by multiple products. 

    The attribute dictionary provides a central place to manage shared attributes, with the following features:

    • The ability to standardize attributes.
    • The ability to easily compare attributes shared by products and SKUs.
    • The ability to quickly change attributes in one place to affect all catalog entries.
  34. Question 23. What Is Sar File ?

    Answer :

    It’s the Store Archiver that holds the store Assets in the compressed form.

  35. IBM WebSphere Administration Interview Questions

  36. Question 24. What Is Suborder ?

    Answer :

    Part of the order that needs to be shipped to a particular Address. There could be an Order where different portions needs to be delivered to different addresses. Each portion in such case is a suborder.

  37. Active Directory Interview Questions

  38. Question 25. What Is Fulfillment Center ?

    Answer :

    Fulfillment center or Delivery Center is the store or warehouse from where the actual delivery of merchandise takes place.

  39. Question 26. What Is A Retriable Command?

    Answer :

    A retriable command is a controller command that can re-execute itself after encountering a system-level exception during the command execution.

  40. IBM WebSphere MQ Interview Questions

  41. Question 27. What Are The Benefits Of Smart Bean?

    Answer :

    A smart data bean uses a lazy fetch method to retrieve its own data. This type of data bean can provide better performance in situations where not all data from the access bean is required, since it retrieves data only as required.

  42. IBM WebSphere ESB Interview Questions

  43. Question 28. Describe Marketing Subsystem And What Wcs Components Are Part Of This System?

    Answer :

    The Marketing subsystem is a component of the WebSphere Commerce Server, and provides numerous marketing concepts to your site, designed to increase brand awareness, and to attract and retain customers. Components of the marketing subsystem provide functionality to create marketing campaigns, including customer segments and advertising; and e-mail activities.

    Various components are:

    1. Promotions
    2. Auctions
    3. eSpots
    4. e Mail Campaigns
    5. Hubs and Extended sites for affiliates

  44. Question 29. Describe Catalog Subsystem And The Tables Used In Wcs For Managing This ?

    Answer :

    The catalog subsystem or Catalog Management provides online catalog navigation, partitioning, categorization, and associations. In addition, the catalog subsystem includes support for personalized interest lists and custom catalog display pages. The catalog subsystem contains all logic and data relevant to an online catalog, including catalog groups (or categories), catalog entries, and any associations or relationships among them. 

    Tables used for Catalog subsystem

    1. CATENTRY
    2. CATENTREL

  45. Question 30. Is It Necessary To Register Controller Command In Cmdreg Table?

    Answer :

    It is not necessary to enter data in the CMDREG table, but an entry should be made in the struts-config.xml. The controller command can be registered in the CMDREG table by xml and SQL query.

  46. Question 31. What Is Acugload?

    Answer :

    acugload is the utility to load the user access group in the appropriate database.

  47. Question 32. What Is Acpnlsload ?

    Answer :

    acpnlsload loads the XML files containing the display names and descriptions, into the appropriate databases.

  48. Question 33. What Is Acpextract ?

    Answer :

    acpextract extracts the access control policy and access group information in the database and generates files that capture the information in XML format.

  49. windows server 2008 Interview Questions

  50. Question 34. Can We Call A Task Command By Specifying Action Mapping In Struts ?

    Answer :

    No, a task command is not set up to handle web requests directly.

  51. Question 35. Explain The Trade Off In Using Data Bean Against Access Bean?

    Answer :

    DataBean’s implement more caching than a AccessBean, so potentially reduce calls to the database. 

    DataBean’s are appropriate for use in the JSP pages that make up the site / web application as the number of instances is likely to be low and it should help control the number of transactions hitting the database.

    AccessBean’s are much less memory intensive, so can be more appropriate to looping processes etc.

  52. Question 36. Explain Exception Types In Wcs?

    Answer :

    Command can throw two types of exceptions:

    ECApplicationException: This exception is thrown; if the error is related to user input and it always fail. When the user enters invalid parameter, this exception is always thrown. When this exception is thrown, the solution controller does not retry the command, even if the command is specified as retriable. 

    ECSystemException: This exception is thrown if a runtime exception or any WebSphere configuration error occurs. Examples of this exception are Remote Exception, Create Exception or other EJB exceptions. When this exception is thrown, the solution controller retries the command if the command is retriable and the exception was caused by either a database dead lock or database rollback.

  53. Domain Name System(DNS) Interview Questions

  54. Question 37. What Is The Purpose Of Bootstrap Files?

    Answer :

    Bootstrap files are XML files which WebSphere Commerce uses during instance creation to populate database tables with information after the schema has been created.

    Once the data has been loaded, you can see the preloaded information in the table. These files are used to retrieve information about the specific data, such as calculation codes and pricing policies.

  55. Question 38. Explain Relationship Between Catentry And Catentrel?

    Answer :

    The CATENTRY_ID is the foreign key in the ORDERITEMS table and OICOMPLIST table. The CATENTRY_ID is the primary key in the CATENTRY table. The relationship of the parent and child CATENTRY_ID can be defined in CATENTREL table. The CATENTRYTYPE_ID can be Product Bean, Item Bean, Package Bean, Bundle Bean, DynamicKitBean and CatalogEntryBean. The CATENTDESC contains all the descriptive information for the CATENTRY_ID and the CATENTRY_ID is the primary key in the table.

    The LISTPRICE contains the pricing information of the CATENTRY_ID. The OFFER table contains the OFFER_ID of the CATENTRY_ID. The OFFERPRICE table contains the offer price of the CATENTRY_ID and the OFFER_ID is the primary key.

  56. Question 39. Explain Something About Emspot?

    Answer :

    All the Marketing spot that is created in the application will have record in the EMSPOT table. EMSPOT table consists of EMSPOT_ID, STORE_ID, NAME, DESCRIPTION and USUAGETYPE ESMAPOBJ table consists of mapping between ESMAPOBJ_ID and the OBJECT_ID.

  57. Question 40. What Are The Difference Between B2b And B2c?

    Answer :

    In B2C customer can access store directly and make online purchases whereas In B2B , Its the store business between organizations.

  58. DHCP Interview Questions

  59. Question 41. What Is Store Access Bean?

    Answer :

    It’s an access bean related to Store Table.

  60. Question 42. We Need To Store An Attribute Color For Few Sku. What All Tables We Will Store Information In?

    Answer :

    Attribute “color” will be stored as a record in tables ATTR and ATTRDESC. All possible values for this attribute will be stored in tables ATTRVAL and ATTRVALDESC. Association between Attribute , Attribute Value and Catentry will be stored in CATENTRYATTR table.

  61. WCS admin Interview Questions

  62. Question 43. What Do You Mean By Optimistic Locking?

    Answer :

    Database tables are open for read/write over entire network for all users/sessions. It results in increased throughput but results in the loss of updates during parallel access.

    For example:-

    1. User x reads a record
    2. User y reads the same record
    3. User x updates that record
    4. User y updates the same record

    User y has now over-written the changes that User x made.

  63. Question 44. What Is Asset Store?

    Answer :

    Asset stores are collections of sharable resources that can be used in other stores. An asset store is typically composed of the assets that can be used by stores, but is in itself not a functional store and does not conduct business transactions.

  64. Question 45. What Are Different Types Of Calculation Usages Used In Wcs?

    Answer :

    WebSphere Commerce performs all calculations for one calculation usage at a time. The order of calculation usages is stored in the SEQUENCE column of the STENCALUSG database table. The entries in this table are initially populated with information from wcs-bootstrap.xml.

  65. Question 46. What Are Controller Commands Used In Member Subsystem?

    Answer :

    UserRegistrationAddCmd for adding the user. This will insert the data into tables 

    – USERS

    – USERREG

    – USERPROF

    – USERDEMO

    – ADDRESS

    UserRegistrationUpdateCmd for updating the user profile.

    LogOffCmd for logging out.

    Customized Controller Commands in GOSP are GOSPNCIMHandShakeCmd used for authenticating the user, by hand shaking with NCIM. This command will search for user authentication token, if the authentication token is available, then the user will be allowed to sign on. 

    GOSPNCIMUserRegistrationFormCmd used for creating the registration form for the user.

  66. Question 47. What Is Commandcontext?

    Answer :

    CommandContext is the interface in WebSphere Commerce, which contains session and user information and set in the Controller command before the execute method is called.

  67. Question 48. Why Jstlenvironmentsetup.jspf Is Included In Jsp?

    Answer :

    This file retrieves and prepares the JSP page path, file path and resource bundle path which are used by other JSP’s. The EnvironmentSetup.jsp includes most commonly used attributes such as storeDir, jspDir, includeDir, bundleDir, etc.

  68. Question 49. What Do You Mean By Shipping Address And Billing Address Of Customer ? How Do We Store Them In Db?

    Answer :

    The shipping and billing address of the customer are stored in the ADDRESS table. There are two records in this table – one is for shipping and other is for billing addresses. The ADDRBOOK_ID is the foreign key in the ADDRESS table. The ADDRESSTYPE will be S for shipping , B for billing and SB for both shipping and billing.

  69. Question 50. Explain About Blocking An Order?

    Answer :

    The order will be blocked by calling task command NotifyBlockCmd or the controller command BlockNotifyCmd. When the order is blocked, the value of BLOCKED column in the ORDERS table will be 1 (means the order is blocked).

  70. Question 51. What Is Master Catalog?

    Answer :

    Master Catalog is a centralized location to manage stores. Everything that is required for the store is present in master catalog. It is a single catalog that contains products, items, relationships and prices that is required for sale in the store.

  71. Question 52. What Is A Fulfillment Center? Can A Store Have A Multiple Fulfillment Centers?

    Answer :

    Fulfillment centers are used by stores as warehouses for shipping and receiving centers. One store can have multiple fulfillment centers associated with it.

  72. Question 53. What Is The Role Of Helper Classes In Wcs?

    Answer :

    Helper class is a utility class that can be used without prior coding and it reduces code redundancy.

  73. Question 54. Which Method Is Invoked In The Data Bean For Calling An Access Bean?

    Answer :

    We can write the code to call access bean in the populate () method.

  74. Question 55. What Are Loading Utilities?

    Answer :

    Utilities provided by WCS for preparing and loading data into WCS Database.

  75. Question 56. What Is Optcounter ? How Does It Work ?

    Answer :

    OPTCOUNTER is the field used in all tables for Optimistic locking. Whenever a client updates a record in the table , WCS increments the OPTCOUNTER for that table so that this value can be compared in case the other client try to update it to see if someone else updated it in the duration between its retrieval and update.

  76. Question 57. What Is Attr Type Table Used For ?

    Answer :

    It is used for storing data type of attribute values. Valid values: INTEGER, STRING, FLOAT, DATETIME, FREEFORM or BIGINT.

  77. Question 58. Name Few Wcs Controller Commands Used In Your Application For Member Subsystem?

    Answer :

    • PostOrgEntityAddCmd
    • PostOrgEntityUpdateCmd
    • CheckUserInMemberGroupCmd
    • LogonCmdImpl
    • DBAuthenticationCmd
    • LDAPAuthenticationCmd
    • LogoffCmd
  78. Question 59. What Are Different Order Status?

    Answer :

    Pending , Schedule, Submit , Pending Payment Approval , Payment authorization complete ,  Approve , CSR Edit , CSR Submit , Release , Shipment, Backordered , Order Transferred ,  Cancel , Close.

  79. Question 60. What Are The Steps To Publish A Controller Command As A Web?

    Answer :

    1. Identify the business logic that you want to expose as a Web service.
    2. Identify the controller command that represents this business logic. If it is not available, then create a new controller command. You can write new commands to call a collection of existing commands.
    3. Identify the mandatory and optional parameters that this command requires.
    4. Create a WSDL description for the Web service.
    5. Register the WSDL description.
    6. Write a JSP page to compose a response.
    7. Deploy the service. This includes the deployment of related files and resources. In case of a new command, you must deploy and register it in the WebSphere Commerce command registry.