• Entries (RSS)
  • Comments (RSS)

Database entries required for creating a new controller command in WCS 5.6

Posted by | Posted in WebSphere, WebSphere Commerce | Posted on 18-02-2008

Tagged Under : , , , ,

To create a new controller command we need to make a couple of database entries. i.e., we need to make an entry in URLREG, CMDREG, ACACTION, ACACTDESC, ACACTACTGP, ACRESCGRY, ACRESCGRY, ACRESGPRES tables. For eg: if we want to make a new controller command ‘MyNewCommand’, the database entries for this command to work will be.

INSERT INTO URLREG (URL, STOREENT_ID, INTERFACENAME, HTTPS, DESCRIPTION, AUTHENTICATED, INTERNAL) VALUES ('MyNewCommand', 1000, 'com.mycomp.commands.MyNewCommandCmd', 0, 'My New controller command', 0, 0);
INSERT INTO CMDREG (STOREENT_ID, INTERFACENAME, DESCRIPTION, CLASSNAME, TARGET) VALUES (1000, 'com.mycomp.commands.MyNewCommandCmd', 'My new controller command', 'com.mycomp.commands.MyNewCommandCmdImpl', 'Local');
INSERT INTO ACACTION (ACACTION_ID, ACTION) VALUES ((SELECT MAX(ACACTION_ID)+1 FROM ACACTION), 'com.mycomp.commands.MyNewCommandCmd');
INSERT INTO ACACTDESC (ACACTION_ID, DISPLAYNAME, DESCRIPTION, LANGUAGE_ID) VALUES ((SELECT ACACTION_ID FROM ACACTION WHERE ACTION='com.mycomp.commands.MyNewCommandCmd'), 'MyNewCommand', 'My New controller command', -1);
INSERT INTO ACACTACTGP(ACACTGRP_ID, ACACTION_ID) VALUES ((SELECT ACACTGRP_ID FROM ACACTGRP WHERE GROUPNAME='AllSiteUsersViews'), (SELECT ACACTION_ID FROM ACACTION WHERE ACTION='com.mycomp.commands.MyNewCommandCmd'));
 
INSERT INTO ACRESCGRY(ACRESCGRY_ID, RESCLASSNAME) VALUES ((SELECT MAX (ACRESCGRY_ID) + 1 FROM ACRESCGRY), 'com.mycomp.commands.MyNewCommandCmd');
INSERT INTO ACRESGPRES(ACRESCGRY_ID, ACRESGRP_ID) VALUES ((SELECT ACRESCGRY_ID FROM ACRESCGRY WHERE RESCLASSNAME='com.mycomp.commands.MyNewCommandCmd'), 10119 );

Here the storeId I used is 1000 and the command interface is ‘com.mycomp.commands.MyNewCommandCmd’ and the implementation class is ‘com.mycomp.commands.MyNewCommandCmdImpl’. This is the easiest way of creating a new controller command.

Share

Adding a new menu in organization administration console

Posted by | Posted in WebSphere, WebSphere Commerce | Posted on 04-12-2007

Tagged Under : , , , ,

To add a new menu in organization administration console we need to edit the ‘BuySiteAdminConsole.xml’ which is present in the
the following locations.

Commerce Toolkit installation directory\xml\tools\buyerconsole\BuySiteAdminConsole.xml

or

WCS installation directory\CommerceServer\xml\tools\buyerconsole\BuySiteAdminConsole.xml

If we want to add a new menu, use the menuitem tag or else (ie for adding submenu) use the node tag.

For eg:

 

Here name of the menu will be the text displayed in the admin console against the menu. For The users tag contains the roles of all the users who can access this menu. The node tag represents a sub menu. the url will be the action associated with the submenu. Depending on our requirement we can have Wizard, Notebook, Dialog, DynamicList etc views. In the above example the ActionXMLFile points to an xml file present in the ‘mydir’ directory. Before using the xmlfile name here we need to define the xml file definition inside the resources.xml file present in the ‘mydir’ directory. cmd stands for the viewname associated with the submenu action.

The name of the xml file (which is defined inside the attribute ‘name’) is coming from the corresponding properties file. The default properties file for BuySiteAdminConsole.xml is BuyAdminConsoleNLS.properties. This file is present inside the following directory.

Commerce Toolkit Install Directory\properties\com\ibm\commerce\tools\buyerconsole\properties\BuyAdminConsoleNLS.properties

or

Appserver install directory\AppServer\installedApps\\\properties\com\ibm\commerce\tools\buyerconsole\properties\BuyAdminConsoleNLS.properties

Depending upon the locale you may need to edit one more properties file which is present in the same directory. For eg: if your locale is en_us you need to edit BuyAdminConsoleNLS_en_US.properties file also.

Share

HttpSession in Controller Command

Posted by | Posted in WebSphere, WebSphere Commerce | Posted on 07-10-2007

Tagged Under : , , ,

The following code give a reference to HttpSession object in a WebSphere Commerce Controller Command.

HttpSession session = ((com.ibm.commerce.webcontroller.HttpControllerRequestObject)  getCommandContext().getRequest()).getHttpRequest().getSession();
Share

WebSphere Commerce History

Posted by | Posted in WebSphere, WebSphere Commerce | Posted on 07-10-2007

Tagged Under : , , ,

History of 11 year old e-commerce software leader Websphere Commerce.

WCS History

Share