Tuesday, June 5, 2012

It took me 2 full days to get the Standalone JDE Demo and other software installed and to get the first web service running. The service that I tried was from the Oracle - Hands on Lab. The installation went smooth, but running the first web service led to some issues. Google and Deepesh Divakarans' website (http://www.deepeshmd.com/enterpriseone/enable-business-services-jd-edwards-demo-standalone/) helped me through some of the troubleshooting, so thanks to them. I decided to put together all the issues that I faced in one place, and here it goes -

JDE Application Release E910
JDE Tools Release
JDeveloper Studio Edition Version
Weblogic Server
OracleDatabase 11g

  • Error #1: Invalid user/password. [DATABASE_CONNECT_FAILED] Database Connection failed for DataSource System Local.
Solution: Create a new database user – JDE/jde (note the small lettered password). Grant all roles, system privileges and quota. The detailed steps are available on Deepeshs' website mentioned above.

  • Error #2: ClassNotFoundException: com.jdedwards.mgmt.agent.E1Agent
Solution: Make sure the following jar files are on the Weblogic classpath in commEnv script.
There may be more of them required, but at least these ones are required for this service.

  • Error #3: "Credentials could not be validated from message or from configuration file" –
Solution: Set the properties files on the WebLogic classpath - jdelog.properties, jdbj.ini, jdeinterop.ini. All of these are available at <JDEdwards install dir>\DEMO\ini\sbf. Details of how to set these files on the classpath for different app servers is available at - http://docs.oracle.com/cd/E11223_01/doc.904/e10453/deploy.htm#BIHJGCHA

  • Error #4: CallObjectSystemException: Server problem. The server may still be available, but because of state information, the entire unit-of-work must be resubmitted.
Solution: I forgot to create a new MathNumeric() while setting the bsfnParams in CustomAddressManager.java. It should be -
bsfnParams.setValue("mnAddressNumber", new MathNumeric(internalVO.getAddressNumber()));
There could be other reasons for this error too, but this is the one that solved my problem.

I will keep updating this page if I hit any other roadblock while writing more services.