Wednesday, 4 October 2017

Identifying if a item is eligible for placing a recurring order in WCS

In WCS OOTB provides a feature to the customers for placing the recurring orders but this option is showed only when the shopping cart has the items eligible for recurring order.

In Order to identify whether a item is eligible for recurring order or not please check the CATENTSUBS table DISALLOW_REC_ORDER column.

DISALLOW_REC_ORDER :  Indicates whether this catalog entry is prohibited from being purchased through recurring order. Default value is 0.
0
No
1
Yes

Identifying the WCS server using JSESSIONID

Most of the times debugging the Production Issues needs logs from Application Servers. In Order to Identify which application server is serving the request from browser can be known by using the JSESSIONID cookie which is OOTB cookie.

Follow the below steps for identifying the WCS Application server details

1. Install "Edit this cookie" addon for chrome (Or any other cookie manager to see the cookies on the browser).
2. Check the JSESSIONID cookie value which will be in the format of UNIQUE_ID:CLONEID get the CLONEID from the JSESSIONID cookie.
3. Open the  plugin-cfg.xml file from the webserver (IHS) and search for the mapping of the CLONEID to the server for eg: mapping shown below for cloneidabcd12 with the server xyzserver.companyname.com.

<Server CloneID="abcd12" ConnectTimeout="0" ExtendedHandshake="false" MaxConnections="-1" 
     Name="WC_demo_node_server1" ServerIOTimeout="0" WaitForContinue="false">
    <Transport Hostname="xyzserver.companyname.com" Port="9101" Protocol="http"/>
</Server>


Monday, 26 June 2017

DB Query to check the Feature enabled or not in V7

Hi All,

Following are the queries which can be used to check if the store features are enabled or not (<flow:ifEnabled)

select ddef.storeent_id, e.name, e.description, ddef.content from dmemspotdef ddef left join emspot e on ddef.emspot_id = e.emspot_id where ddef.contenttype = 'FeatureEnabled' and e.name = '<feature name>';

replace <featurename> with the feature name which you want to check.


Wednesday, 3 August 2016

Installing SQL Profile for Websphere Commerce V7

SQL Profiler is a powerful tool for troubleshooting the Performance Issues in Websphere Commerce. Following is the URL which shows the steps for configuring SQL profiler with RAD

https://www.ibm.com/developerworks/community/blogs/wcs/entry/Installing_SQL_Profiler_for_WebSphere_Commerce_7_Developer_Edition?lang=en


Monday, 1 August 2016

Test Your Web Page Performance


Web Page performance can be tested using the below URL which will give some suggestions for improvements as well.

https://developers.google.com/speed/pagespeed/insights/

https://gtmetrix.com



Wednesday, 22 June 2016

TOGAF 9.1 Study Guide

Intrested TOGAF9.1 aspirants can visit the below URL for TOGAF Study Guide.

Click here for TOGAF study guide

Monday, 20 June 2016

Fetching Server or Clone ID in a Controller Command

In Order to fetch the server/ Instance name or clone ID in Controller Command use the following methods

HttpControllerRequestObject req = (HttpControllerRequestObject) getCommandContext().getRequest();
req.getServletContext().getServerInfo();

or

WCSApp.getCloneId();

WebSphere Commerce Search FEP8 Step by Step Migration Guide:

Found a Useful Document on developer works on WebSphere Commerce Search FEP8 Step by Step Migration Guide.

Sharing it on the blog as a useful reference.

Click here to access the document

Configuring Bloomreach SNAP on Websphere Commerce

Hi All, recently came across a web page on BloomReach integration with Websphere Commerce for improving search experience and thought of sharing it on the blog.

Click Here for the information on BloomReach

Click Here for information on Infocenter regarding the Integration of Websphere Commerce with BloomReach

Persistent Session management for Guest Users

Whenever a Guest User adds a product to the cart and closes his browser he will loose the contents added to the cart on opening a new session on the browser.

Sometimes, as per business requirement we might need to keep the persistent session for guest users as well in order to keep the items in the cart from previous session of the browser.

In order to achieve this in Websphere Commerce we might need to enable GuestUserOrderResetEventListener in wc-server.xml as shown below
  1. <component
        compClassName="com.ibm.commerce.order.event.GuestUserOrderResetEventListener"
        enable="true" name="Migrate Guest Orders Event Listener">
      <property display="false">
          <start enabled="true"/>
      </property>
    </component>

Tuesday, 2 June 2015

Understanding SOLR Search Customization in Websphere Commerce

Found a nice article on understanding the SOLR search customization points in Websphere Commerce. Click here for more details

Creating a new Facet in Websphere Commerce

Found a nice article on creating a facet in Websphere Commerce and thought of sharing this on my blog for future reference.

Click here for details

Thursday, 17 October 2013

DB2 Backup and Restore commands

It is very common in projects to keep the backup of database and restoring the new copies of database. Following are the two commands which will be helpful in backup and restore of database

DB Backup :

  • Open db2cmd prompt
  • Navigate to the directory where you want to take the backup of your database
  • Enter the command db2 backup db DBNAME compress  (Replace DBNAME with your database name)
DB Restore: 

  • Open db2cmd prompt
  • Navigate to the directory where your database copy exists or the database which you want to restore
  • Enter the command db2 restore db DBNAME (Replace DBNAME with your database name)

Note : Sometimes after restore of the database WC Server might not start properly. In such cases do a setdbtype and the server will start properly

Monday, 30 September 2013

Web Analytics Product Comparisions:

Product Comparision between the industries leading web analytic products


Reference : http://web-analytics-review.toptenreviews.com/

Creating a new store with desired store id in Websphere Commerce

The store_id for the new store is pulled from the KEYS.COUNTER column. You need to edit the COUNTER column value corresponding to the column tablename='storeent' in KEYS table like below,

The new store_id is generated by value of "KEYS. COUNTER (column value) +1". To get a desired store_id, you can increase or decrease the present COUNTER column value from KEYS table as long as "COUNTER (column value) +1" value is not used in the STOREENT.STOREENT_ID column.

Important Note:
1. If you try to decrease the KEY.COUNTER column value to get a desired store_id, whenever you restart the server then KEY.COUNTER column value is increased by KEY.PREFETCHSIZE column value. So after restarting the server, if the new COUNTER (column value) +1 matches the STOREENT.STOREENT_ID then it will throw an error when you try create a new store.
2. Remember to backup the tables before doing an update.

Reference : http://www-01.ibm.com/support/docview.wss?uid=swg21626815

Sunday, 22 September 2013

Friday, 20 September 2013

Creating Websphere Commerce e-Spot using SQL's

Sometimes as a part of project requirement you might need to create espots for your eComemrce website. Instead of creating them through Management Center it is easy to create through SQL's.

Recently found a nice article which explains the different tables used as a part of eSpot creation. Following is the URL for creating eSpots using SQL's

http://www.daharveyjr.com/creating-a-websphere-commerce-e-marketing-spot-wsql-text-content/


Friday, 6 September 2013

Displaying Numeric Keypad only on mobiles for Numeric Inputs on Forms

In order to display Numeric Keypad only on mobiles/tablets create the <input> types as "number" or "tel" for telephone numbers as shown below

<input type="tel" name="mobilenumber"/>

<input type="number" name="age"/>

or

<input type="text" pattern="[0-9]*" /> (Works only for iOS)



Saturday, 29 June 2013

Websphere Commerce Interview Questions and Answers

Hi Guys,

A Good collection of Websphere commerce Interview questions and answers can found in following blog

http://www.buggybread.com/2013/03/ibm-wcs-websphere-commerce-interview.html

http://sureshraja-wcs.blogspot.co.uk/2012/08/wcs-interview-questions.html

http://kingofwcs.blogspot.co.uk/2011/01/wcs-interview-questions.html


I hope it will be useful for most of the readers ;)

Naming Conventions for Controller Command and Task Command

Standard Naming conventions for controller commands and task commands followed in OOTB is

Controller Commands : Noun+Verb combination for eg: OrderProcessCmd
TaskCommands : Verb + Noun combination for eg: ProcessOrderCmd

In case you are creating any New Controller Commands/Task Commands please follow the above naming convention as a standard practice