Technote

(troubleshooting)
Unexpected exception thrown by WebSphere Commerce payment plugin when a non-plugin directory is added under <toolkit>\xml\config\payments\edp
Problem(Abstract)
An unexpected exception is thrown by Commerce payment plugin when a non-plugin directory is added under <toolkit>\xml\config\payments\edp.

A sample of such unexpected exception is shown as below.

ExceptionUtil E CNTR0020E: EJB threw an unexpected (non-declared) exception during invocation of method "createPaymentInstruction" on bean "BeanId(WC#Payments-Plugin-Controller.jar#PluginController, null)". Exception data: java.lang.ExceptionInInitializerError at java.lang.Class.initialize(Class.java:351)
at com.ibm.commerce.payments.plugincontroller.PluginController.getPlugin(PluginController.java:2797)
at com.ibm.commerce.payments.plugincontroller.PluginController.createPaymentInstruction(PluginController.java:967)
at com.ibm.commerce.payments.plugincontroller.beans.EJSRemoteStatelessPluginController_c947b422.createPaymentInstruction (EJSRemoteStatelessPluginController_c947b422.java:282)
at com.ibm.commerce.payments.plugincontroller.beans._PluginController_Stub.createPaymentInstruction(_PluginController_Stub.java:2507)
at com.ibm.commerce.payment.actions.commands.EditPaymentInstructionPolicyCmdImpl.createPaymentInstruction(EditPaymentInstructionPolicyCmdImpl.java:557)
at com.ibm.commerce.payment.actions.commands.EditPaymentInstructionPolicyCmdImpl.performExecute(EditPaymentInstructionPolicyCmdImpl.java:229)at com.ibm.commerce.command.ECCommandTarget.executeCommand(ECCommandTarget.java:161)
at com.ibm.ws.cache.command.CommandCache.executeCommand(CommandCache.java:335)

In certain environments, users can use CVS or other source control to keep track history of plugin development. Such tools create additional directory under plugin directory, such as .cvs.
Cause Commerce payment treats every new directory under <toolkit>\xml\config\payments\edp as individual payment and expects all required configuration and files to be place inside. If files within the new directory are not found, the Commerce payment plugin will throw an unexpected exception. Resolving the problem Two solutions are possible:

1. Make sure all files within the new directory conforms to the requirement of payment plugin.

2. Apply APAR JR24876. This APAR enhances payment plugin to handle this situation by having the plugin to give warning message instead of throwing unexpected exception.
Cross Reference information
Segment Product Component Platform Version Edition
Commerce WebSphere Commerce Developer Enterprise Implementation / Usage AIX, Linux, Solaris, Windows 6.0, 6.0.0.1 All Editions
   

Document Information

Current web document: http://www.ibm.com/support/docview.wss?uid=swg21273516