Search This Blog

SBL-EAI-05000: Business Service call returned error code %1 and message: %2

Applies to: Siebel CRM - Version: 7.7.2 [18325] to 8.1.1.4 [21225] - Release: V7 to V8
Information in this document applies to any platform.
PurposeThis document is to assist basic troubleshooting issues with EAI JMS Transport.
Provided example addresses usage of Siebel JMS Transport with the JMS Resource Adapter of Fusion Middleware J2EE Application Server 10g (OC4J) setup to access Oracle Advanced Queueing (AQ) Messaging System.
Last Review DateJune 30, 2009
Instructions for the Reader A Troubleshooting Guide is provided to assist in debugging a specific issue. When possible, diagnostic tools are included in the document to assist in troubleshooting.
Troubleshooting DetailsOverviewThe EAI JMS Transport is provided to allow connection to a JMS queue / topic. This document will outline overall required steps (referencing document as necessary) in order to achieve this.
NOTE: the JMS provider .jar files as well the content of the jndi.properties file is provided to illustrate JNDI/JMS connectivity setup to instance of the Oracle J2EE Application Server 10g (10.1.3.x), known also as the OC4J Server.The JMS messages Persistant Store in this example is the Oracle Advanced Queuing (AQ) feature of Oracle Database Server.Review required settings for EAI JMS Transport Before attempting to call the EAI JMS Transport, you will need to configure your Siebel client / server.
Important considerations are below.
1. JVM / CLASSPATHWhether running a Siebel dedicated client, or a Siebel Server component, you need to provide details on where to find the Java Virtual Machine (JVM) and CLASSPATH.
If you are running a Siebel dedicated client, you edit the appropriate .cfg with required entries, for example :
NOTE HERE:
NOTE:
jar vxf oc4j-internal.jar com/evermind/util/JCAProperties.class

WARNING: The the oc4j-internal.jar OC4J archive should NOT BE INCLUDED in the CLASSPATH.
[JAVA]
Note, in addition to the Siebel jar files, you will need the jar files required by your JMS server (please refer to the documentation from your JMS provider).
If you are running on the Siebel Server, you will need to configure the JAVA named subsystem (type JVMSubSys) to provide the same properties.
For further information, see:
Transports and Interfaces: Siebel Enterprise Application Integration > Java Message Service Transport
2. The jndi.propertiesThe EAI JMS Transport will attempt to locate a jndi.properties file from a directory named in the CLASSPATH. This file will typically denote the Initial Context Factory and Provider Url, for example :
NOTE HERE:
java.naming.factory.initial=oracle.j2ee.naming.ApplicationClientInitialContextFactory
java.naming.provider.url=opmn:ormi://oc4j_host:6003:home
java.naming.security.principal=oc4jadmin
java.naming.security.credentials=welcome1Note, the actual values provided should be as documented by your JMS provider.
3. Tracing / LoggingThe VMOPTIONS (in the client cfg, or JAVA named subsystem) can be used to specify a log file, for example :
VMOPTIONS="-xrs -Djava.compiler=NONE -Djms.log=C:\SBL\LOG

(note, actual file created for above would be C:\SBL\LOG\jms_<nnnn>.txt, where <nnnn> is process id of the server component, or for dedicated client process id of the siebel.exe)
For dedicated client, set Siebel logging per
Doc ID 475587.1 How Should Client Side Logging Be Set? (please set SIEBEL_LOG_EVENTS=all).
For Siebel Server components, set tracing for your component from srvrmgr :
change evtloglvl %=5 for comp <component>
Verify JMS is working as expected outside of Siebel applicationThe EAI JMS Transport acts as a java client to the target JMS server. When troubleshooting problems with the EAI JMS Transport, it is important to confirm whether the same operations are working fine outside of Siebel (and from the same machine and operating system user). For example, if a problem is found with Send method of the EAI JMS Transport, first confirm that it is successful when the same is tested outside of Siebel. One way to prove this is with a simple java client, to send a test message to a queue (using the same Classpath, Provider Url, Initial Context Factory, Connection Factory and Queue). An example java source is provided below, the only section requiring changes is that marked 'Change settings below according to JMS provider requirements'. Set the CLASSPATH to include required jar files (per your JMS provider documentation), compile with javac, and test by running :-

TestJMSClient.java:
NOTE HERE:
AQ Resource provider name (see "oc4j-connectors.xml" file in the "<j2ee>/<instance> /config" OC4J folder): myRP1Connection Factory names (see "oc4j-ra.xml" file in "<j2ee>/<instance> /application-deployments/default/<resource adapter name>" OC4J folder):
Resource Name: QueueConnectionFactories/MyQCF1
NOTE: this name is seen in JNDI context as: java:comp/resource/myRP1/QueueConnectionFactories/MyQCF1JNDI Name: jms/MyConnectionFactory1
Note: this name simplifies Connection Factory look up in JNDI context
Queue names (see "oc4j-connectors.xml" file in the "<j2ee>/<instance> /config" OC4J folder):
Resource Name: Queues/MyQ1
NOTE: this name is seen in JNDI context as: java:comp/resource/myRP1/Queues/MyQ1JNDI Name: jms/MyQueue1
Note: this name simplifies Queue lookup in JNDI context
import java.util.Hashtable;
import javax.naming.Context;
import javax.naming.InitialContext;
import javax.naming.NamingException;
import javax.jms.*;

public class TestJMSClient
{

public static void main(String[] args)
{

//*******************************************************************************************
//* Change settings below according to JMS provider requirements
//*******************************************************************************************

// Set Context Factory
final String myContextFactoryName = "oracle.j2ee.naming.ApplicationClientInitialContextFactory";

// Set the target queue connection factory
final String myQueueConnectionFactoryName = "jms/ConnectionFactory1";
// same as: "java:comp/resource/myRP1/QueueConnectionFactories/QCF1";
// Set the target queuename
final String myQueueName = "jms/MyQueue1";
//same as: "java:comp/resource/myRP1/Queues/MyQ1";

// Set UrlProvider
final String myUrlProviderName = "opmn:ormi://oc4j_host:6003:home";

// Set user+password credentials
final String myUser = "oc4jadmin";
final String myPassword = "welcome1";

//*******************************************************************************************

String classPath = System.getProperty("java.class.path",".");

Context jndiContext = null;
QueueConnectionFactory myQueueConnectionFactory = null;
QueueConnection myQueueConnection = null;
QueueSession myQueueSession = null;
Queue myQueue = null;
QueueSender myQueueSender = null;
TextMessage myTextMessage = null;

/*
* To override "jndi.properties" entries:
* one could set the environment for a connection to the JMS server
*/
/*JNDI context parametrization*...
Hashtable myEnv = new Hashtable();
myEnv.put(Context.INITIAL_CONTEXT_FACTORY, myContextFactoryName);
myEnv.put(Context.SECURITY_PRINCIPAL, myUser);
myEnv.put(Context.SECURITY_CREDENTIALS, myPassword);
myEnv.put(Context.PROVIDER_URL, myUrlProviderName);
...*JNDI context parametrization*/

System.out.println("Using :-");
System.out.println("Context Factory=" + myContextFactoryName);
System.out.println("Queue Connection Factory=" + myQueueConnectionFactoryName);
System.out.println("Url Provider=" + myUrlProviderName);
System.out.println("");
System.out.println("Current CLASSPATH=" + classPath);
System.out.println("");

/*
* Set the Context Object.
* Lookup the Queue Connection Factory.
* Lookup the Queue
*/
try
{
jndiContext = new InitialContext(); //JNDI context parametrization: myEnv);
System.out.println("Lookup Queue Connection Factory : " + myQueueConnectionFactoryName);

myQueueConnectionFactory = (QueueConnectionFactory)jndiContext.lookup(myQueueConnectionFactoryName);
System.out.println("OK");
System.out.println("Lookup Queue " + myQueueName);

myQueue = (Queue)jndiContext.lookup(myQueueName);
System.out.println("OK");
}
catch (NamingException e)
{
System.out.println("JNDI lookup failed: " + e.toString());
System.exit(1);
};

/*
* Create connection factory, session, sender and send message
*/
try
{
myQueueConnection = myQueueConnectionFactory.createQueueConnection();
myQueueSession = myQueueConnection.createQueueSession(false, Session.AUTO_ACKNOWLEDGE);
myQueueSender = myQueueSession.createSender(myQueue);
myTextMessage = myQueueSession.createTextMessage();

System.out.println("Sending message...");

myTextMessage.setText("Testing 123");
myQueueSender.send(myTextMessage);
System.out.println("OK");
System.out.println("Sent message: " + myTextMessage.getText() + " - " + myTextMessage.getJMSMessageID());
}
catch (JMSException e)
{
System.out.println("Exception occurred: " + e.toString());
}
finally
{
if (myQueueConnection != null)
try
{
myQueueConnection.close();
}
catch (JMSException e)
{
System.out.println("Close error: " + e.toString());
};
};
}; // end main
}// end TestJMSClient class
If this is not successful, please verify required settings are correct with your JMS provider. Once successful, then verify with detailed logging (refer 3. Tracing / Logging) that the EAI JMS Transport is using the same settings.
Common Errors

References
Error
Cause
Action
SBL-EAI-05010

Class name incorrect or does not extend SiebelBusinessService : com/siebel/data/SiebelPropertySet -- JVM Exception:java.lang.NoClassDefFoundError: com/siebel/data/SiebelPropertySet(SBL-EAI-05010)
This error is usually caused by incorrect entries for CLASSPATH and/or DLL in the named subsystem 'JAVA' (or for dedicated client, the [JAVA] section in the client cfg).
Ensure the Siebel.jar and SiebelJI_[lang].jar files are correctly named in the CLASSPATH, and exist in the specified directory (and that the directory is accessible to the relevant operating system user).
For unix, ensure the separators in the CLASSPATH are ':' (colon), not ';' (semi-colon).
SBL-EAI-05000 / SBL-EAI-05012

SBL-EAI-05000: Business Service call returned error code JNDI_ERROR and message: Exception: javax.naming.NameNotFoundException: myQCF; Message: myQCF

SBL-EAI-05102: JNDI error in EAI JMS Transport: 'Exception: javax.naming.NameNotFoundException: myQCF; Message: myQCF'.
The exception javax.naming.NameNotFoundException: indicates a failure to locate the ConnectionFactory and/or SendQueue parameters as supplied to the EAI JMS Transport.
Confirm that the supplied parameters are correct, and that the same Queue Connection Factory and Queue can be accessed outside Siebel with the test java client.
SBL-EAI-05000 / SBL-EAI-05102

SBL-EAI-05000: Business Service call returned error code JNDI_ERROR and message: Exception: javax.naming.NoInitialContextException: Cannot instantiate class: com.sun.jndi.fscontext.RefFSContextFactory [Root exception is java.lang.ClassNotFoundException: com.sun.jndi.fscontext.RefFSContextFactory]; Message: Cannot instantiate class: com.sun.jndi.fscontext.RefFSContextFactory


SBL-EAI-05102: JNDI error in EAI JMS Transport: 'Exception: javax.naming.NoInitialContextException: Cannot instantiate class: com.sun.jndi.fscontext.RefFSContextFactory [Root exception is java.lang.ClassNotFoundException: com.sun.jndi.fscontext.RefFSContextFactory]; Message: Cannot instantiate class: com.sun.jndi.fscontext.RefFSContextFactory'.

SBL-EAI-05000: Business Service call returned error code JNDI_ERROR and message: Exception: javax.naming.CommunicationException: Can't find SerialContextProvider; Message: Can't find SerialContextProvider











The initial context factory (as provided in the jndi.properties 'java.naming.factory.initial') could not be found.


The initial context could not be instantiated (as provided in the jndi.properties)
Check the name of initial context factory in the jndi.properties is correct, and that CLASSPATH has all required JMS vendor jar files.
Confirm that the same java.naming.factory.initial setting, with same CLASSPATH works outside of Siebel with the test java client.
Confirm that the security credentials, once provided, in the java.naming.security.principal and java.naming.security.credentials parameters are correct.






NOTE:473811.1 - Where Can You Install Third Party Software To Use Siebel's MQ and JMS Transports?
NOTE:493211.1 - Support of SSL-layer for Siebel JMS Transport
NOTE:828113.1 - How to setup Siebel JMS Transport to work directly with the IBM WebSphere MQ Series Server
NOTE:845103.1 - Does the MQ Queue manager have to be installed on the Siebel Application server or can it use a remote queue manager?
NOTE:859382.1 - How to Control Parameters on Transport for Outbound Web Service, e.g. HTTPSleepTime (HTTP) or SendUsername (JMS)
NOTE:971592.1 - Connect to AIA from your Enterprise via JMS
NOTE:978645.1 - Websphere MQ Supported Versions For Siebel EAI MQ Series Server Transport / EAI JMS Transport























Applies to: Siebel System Software - Version: 7.7.2.1 SIA [18353] and later [Release: V7 and later ]
z*OBSOLETE: Microsoft Windows 2000
Product Release: V7 (Enterprise)
Version: 7.7.2.1 [18353] Fin Svcs
Database: Oracle 9.2.0.6
Application Server OS: Microsoft Windows 2000 Advanced Server SP 4
Database Server OS: Sun Solaris 5.8

This document was previously published as Siebel SR 38-1980355081.
""""Checked for relevance on 29-OCT-2010""""
SymptomsWhile setting up JMS Receiver server component to receive the messages from WebSphere MQ JMS server, three subsystems were created of following types as enterprise profile:

1. EAITransportDataHandlingSubsys
2. JMSSubsys
3. JVMSubSys

The jndi.properties and all required jar files were included in the JAVA (subsystem type - JVMSubSys ) JVM Classpath (alias CLASSPATH).
Then, the JMS Receiver component’s parameters were set accordingly.
The following error, however, were reported when starting up the JMS Receiver server component:

ObjMgrBusServiceLog Error 1 0 2005-05-13 10:34:26 (javabsvc.cpp (164)) SBL-EAI-05000: Business Service call returned error code JNDI_ERROR and message: Exception: javax.naming.NoInitialContextException: Cannot instantiate class: com.ibm.mq.jms.context.WMQInitialContextFactory [Root exception is java.lang.ClassNotFoundException: com/ibm/mq/jms/context/WMQInitialContextFactory ]; Message: Cannot instantiate class: com.ibm.mq.jms.context.WMQInitialContextFactory


ObjMgrBusServiceLog Error 1 0 2005-05-13 10:34:26 (jmsbsvc.cpp (275)) SBL-EAI-05102: JNDI error in EAI JMS Transport: 'Exception: javax.naming.NoInitialContextException: Cannot instantiate class: com.ibm.mq.jms.context.WMQInitialContextFactory [Root exception is java.lang.ClassNotFoundException: com/ibm/mq/jms/context/WMQInitialContextFactory ]; Message: Cannot instantiate class: com.ibm.mq.jms.context.WMQInitialContextFactory '.

GenericLog GenericError 1 0 2005-05-13 10:34:26 Object manager error: ([0] JNDI error in EAI JMS Transport: 'Exception: javax.naming.NoInitialContextException: Cannot instantiate class: com.ibm.mq.jms.context.WMQInitialContextFactory [Root exception is java.lang.ClassNotFoundException: com/ibm/mq/jms/context/WMQInitialContextFactory ]; Message: Cannot instantiate class: com.ibm.mq.jms.context.WMQInitialContextFactory '.(SBL-EAI-05102) (0x8319))
Causethere where trailing spaces on jndi.properties file

The contents of the jndi.properties file looked like below:

“java.naming.factory.initial=com.ibm.mq.jms.context.WMQInitialContextFactory “ (without double quotes)
java.naming.provider.url=immqmmid.dtu.mlam.ml.com:1421/TPHDEV02.CORE.CLT

The reported behavior was reproducible in Siebel standard application 7.7.2.1 and the behavior was not specific to WebSphere MQ JMS server.

BUG: 10496741 has been logged to address this product enhancement request that EAI JMS Transport should trim or ignore the spaces from jndi.properties file.
Solution
Please remove the space(s) from the jndi.properties file.
Support recommends the following document as a starting point to troubleshooting JMS issues:
NOTE: 850954.1 Basic Troubleshooting Steps for EAI JMS Transport
ReferencesNOTE:850954.1 - Basic Troubleshooting Steps for EAI JMS Transport












Applies to: Siebel CRM - Version: 8.1.1 SIA [21111] and later [Release: V8 and later ]
Information in this document applies to any platform.
SymptomsCustomer is using Siebel 8.1.1 SIA with QF1102, to integrate sales orders with AIA.

If the user clicks the “Submit” button of a Sales Order and errors happen on the integration layer, the workflow ‘SISOMBillingSubmitOrderWebService’ doesn’t throw any error to the user interface, or rollback any updates to the order. This is despite errors being observed in the logs where the (JMS) web service is invoked, for example :-

ObjMgrBusServiceLog Error 1 0000002f4b962388:0 2010-03-09 09:41:04 (javabsvc.cpp (181)) SBL-EAI-05000: Business Service call returned error code JNDI_ERROR and message: Exception: javax.naming.NameNotFoundException: java:comp/resource/DBXAConnect/QueueConnectionFactories/QCF not found;

CauseThe web service being invoked is a one-way web service. A one way web service uses the Send method (not SendReceive). The Send method is used when there are no output arguments for the outbound web service (per the proxy Business Service definition in Tools), i.e. no reply is expected.

The problem is due to :-

BUG 10581697 - Outbound one-way JMS web service, no error raised if it fails
SolutionThe change request BUG 10581697 is still open at time of writing.

To capture the failure to invoke Send method of the EAI transport, you can consider implementing :-

Using a Local Business Service To Customize the SOAP Header for an Outbound Web Service in Siebel 7 (Doc ID 477891.1)

With a Local Business Service, you have control over the Send method (e.g. to EAI JMS Transport), and use exception handling (try/catch) to raise an exception should the operation fail.
ReferencesBUG:10581697 - OUTBOUND ONE-WAY JMS WEB SERVICE, NO ERROR RAISED IF IT FAILS
NOTE:477891.1 - Using a Local Business Service To Customize the SOAP Header for an Outbound Web Service in Siebel 7.x and 8.x





















Applies to: Siebel System Software - Version: 7.7.2 SIA [18325] and later [Release: V7 and later ]
z*OBSOLETE: Microsoft Windows 2000
Product Release: V7 (Enterprise)
Version: 7.7.2 [18325] Cons Goods
Database: Oracle 9.2.0.4
Application Server OS: Microsoft Windows 2000 Server
Database Server OS: Compaq Tru64 UNIX

This document was previously published as Siebel SR 38-2108546941.
***Checked for relevance on 12-JAN-2011***
SymptomsWhen the JMS receiver processed large messages it failed,
An xml file of 20 MB was placed on a JMS queue and the Receiver fails to process it.

Following message is seen in logfile
ObjMgrBusServiceLog Error 1 0 2005-06-20 11:51:22 (javabsvc.cpp (164)) SBL-EAI-05000: Business Service call returned error code JMS_EXCEPTION and message: An unexpected error occurred (see StackTrace): null

Nothing in JMS logfile.
CauseThis was replicated by support and it seems to be a product defect at this release and bug 12-ZRN3H6 was raised to address this.
Solution
At the moment, the workaround I see is to reduce the size of the messages being placed on the Queue. Testing inhouse files up to 9MB are processed ok.
ReferencesBUG:12-ZRN3H6 - LIMITATIONS ON SIZE OF MESSAGES PROCESSED BY JMS RECEIVER














GoalWe had a configuration error in the Classpath value and the concerning JMS Receiver throws the following error messages

021 2010-03-15 19:11:22 2010-03-15 19:21:48 +0100 00000171 001 ffff 0001 09 EPA_EAI_Rcvr 14680065 19906 1101140240 /opt/siebel/siebel811/siebsrvr/enterprises/ITERA/S3/log/EPA_EAI_Rcvr_0014_14680065.log 8.1.1.1 [21211] ENU
ObjMgrBusServiceLog Error 1 000000064b9e4dc2:0 2010-03-15 19:11:22 (javabsvc.cpp (181)) SBL-EAI-05000: Business Service call returned error code JMS_EXCEPTION and message: An unexpected error occurred (see StackTrace): com/ibm/CORBA/iiop/ORB

Finally we found the configuration error, but for the future it would much easier if you can determine where the stack trace can be found?

SolutionThe StackTrace is contained within the log, or certainly a very small part of it is. There is no seperate location for the full StackTrace. Oracle Global Software Support have raised this product enhancement request against the Siebel 8.1.1.1 SIA product:

12-1XF0E7B [When JMS_EXCEPTION message is reported, please provide the full StackTrace info]

This will be reviewed by the Siebel EAI / JMS product manager and considered for address in a future Siebel product release.






















Applies to: Siebel CRM - Version: 8.0.0.6 SIA [20423] and later [Release: V8 and later ]
Information in this document applies to any platform.
Symptoms
when using JMS the following error occured.

Business Service 'EAI JMS Java Business Service Caller' (address: 'af24330')was 2010-Begin: Business Service 'EAI JMS Java Business Service Caller' invoke method: 'Receive' at af24330

Error 1 000000094c1e1bc8:0 2010-06-21 03:05:31 (javabsvc.cpp (181)) SBL-EAI-05000: Business Service call returned error code JMS_EXCEPTION and message: Exception: javax.jms.InvalidDestinationException: JMS-125: Invalid Queue specified; Message: JMS-125: Invalid Queue specified
Cause
The customer was running an OC4J cluster.
The java.naming.provider.url contained 2 references as follow:

java.naming.factory.initial=oracle.j2ee.rmi.RMIInitialContextFactory
java.naming.provider.url=opmn:ormi://v7lsys4208.indtd.minjus.nl:6003:OC4J_SOA1/default,opmn:ormi://v7lsys4209.indtd.minjus.nl:6003:OC4J_SOA1/default
java.naming.security.principal=oc4jadmin
java.naming.security.credentials=<topsecret>
java.oracle.j2ee.rmi.loadBalance=lookup
Solution
amend the jndi.property to contain only one URL provider like this:

java.naming.factory.initial=oracle.j2ee.rmi.RMIInitialContextFactory
java.naming.provider.url=opmn:ormi://v7lsys4208.indtd.minjus.nl:6003:OC4J_SOA1/default
java.naming.security.principal=oc4jadmin
java.naming.security.credentials=<topsecret>
java.oracle.j2ee.rmi.loadBalance=lookup























Applies to: Siebel Financial Services CRM - Version: 8.1.1 [21112] - Release: V8
Information in this document applies to any platform.
SymptomsPlatform :- IBM AIX on POWER Systems (32-bit)

Invoking 'Send' method of 'EAI JMS Transport' on siebel version 8.1.1 to connect to an Oracle AQ queue configured on Web logic 10.3 threw the below error :-
---
java.lang.UnsupportedClassVersionError: (oracle/jdbc/pool/OracleOCIConnectionPool) bad major version at offset=6] error :-
---
When standalone java client was made to run with the same JVM and classpath as used by siebel, it also failed with the same error as siebel.
CauseThere were multiple problems in the JMS set up.

Further investigation revealed that this error occurred due to incompatibility of the JVM version with some jars in the CLASSPATH. JVM used for test from Siebel was the one present inside the folder "usr/java5/jre/bin/classic/libjvm.so" of the version:-
---
java version "1.5.0"
IBM J9 VM
---

Java version on Weblogic server :-
---
Sun JDK
Version 1.6.0_14-b0
---

SolutionSo it was suggested to test the JMS connectivity using JVM 1.6 version since the weblogic jars were complied using JRE 1.6. On using JRE 1.6 the 'UnsupportedClassVersionError' error went away.

Note :- Per SRSP documentation (http://download.oracle.com/docs/cd/E11886_01/V8/CORE/SRSP_81/SRSP_81_OtherPlatforms6.html#wp1051674), JRE 1.6 is still not officially supported with siebel 8.1.1.

So Product Management was consulted on this and it was indicated that JVM 1.6 is on the way of being certified and that internally we are using JVM 1.6 for our siebel servers but this *does* warrant specific testing for specific scenarios.

On using JRE 1.6 although the 'UnsupportedClassVersionError' error went away, a new error was reported while invoking the 'Send' method :-
---
java.lang.NoClassDefFoundError: weblogic.rjvm.RJVMFinder (initialization failure)
---

Running 'CheckJNDIContext' for first time gave the following error:
---
java.lang.UnsatisfiedLinkError: net (No such file or directory)
---

and for second and third time 'CheckJNDIContext' gave error as 'java.lang.NoClassDefFoundError: weblogic.rjvm.RJVMFinder'.

Through collaboration with Weblogic Support team, it was learnt that the 'weblogic.jar' contains the class 'weblogic.rjvm.RJVMFinder'. However, when the 'weblogic.jar' was included in the classpath, still the same error was thrown. This is because the 'weblogic.jar' that was included in the 'classpath' did not have the class 'RJVMFinder'. On including a different 'weblogic.jar' taken from another weblogic server installation, the error went away.

Also the DLL parameter of the 'JVMSubsys' was made to point to the '/usr/java6/jre/lib/ppc/j9vm/libjvm.so' (as per documentation on IBM JRE 1.6 on the IBM website). The environment variables LIBPATH and LD_LIBRARY_PATH were set to include the directories:-

------
/u01/siebel/weblogic:/usr/java6/jre/lib/ppc:/usr/java6/jre/lib/ppc/j9vm
-------

where :
/u01/siebel/weblogic - is the directory where the weblogic .jar files are located

With this changes, the JMS connectivity could be successfully established from Siebel 8.1.1 to Weblogic AQ.

ReferencesSBL-EAI-05000
SBL-EAI-05102
Related


Products


Siebel > Customer Relationship Management > CRM - Enterprise Edition > Siebel Financial Services CRM
Keywords

 
JMS; NO SUCH FILE OR DIRECTORY; NOCLASSDEFFOUNDERROR; UNSATISFIEDLINKERROR; CLASSPATH; JAVA.LANG.UNSUPPORTEDCLASSVERSIONERROR; JAVA.LANG.UNSATISFIEDLINKERROR; JAVA.LANG.NOCLASSDEFFOUNDERROR
 
oc4j_host
6003
home
oc4jadmin/welcome1 - the name/password of the OCJ4 user who is allowed to
- the name of the OCJ4 Instance
- the port of the opmn instance to access the OC4J Server
- the name of the OC4J Server machine, that hosts the JNDI provider

DLL=C:\JRE\bin\client\jvm.dll

CLASSPATH=C:\JNDI;C:\SBL\CLASSES\Siebel.jar;
C:\SBL\CLASSES\SiebelJI_enu.jar;C:\JMS;C:\JMS\jndi.jar;C:\JMS\jms.jar;C:\JMS\oc4jclient.jar;C:\JMS\optic.jar;
C:\JMS\dms.jar;C:\JMS\ejb.jar;C:\JMS\mail.jar;C:\JMS\bcel.jar;C:\JMS\pcl.jar;C:\JMS\jta.jar;

VMOPTIONS=
"-xrs -Djava.compiler=NONE -Djms.log=C:\SBL\LOG\jms_log"
Siebel Java folder is: C:\JRE Installation folder is: C:\SBLSiebel folder with the "jndi.properties" file: C:\JNDISiebel folder of OC4J ( J2EE Application Server 10.1.3.x) .jar and ..class files collection is: C:\JMSthe JCAProperties.class of the oc4j-internal.jar OC4J archive must be extracted in this folder keeping its name space hierarchy as folders tree (C:\JMS\com\evermind\util). Following command of java archiver utility (JAR) can be used to achieve it:
Siebel

No comments:

Post a Comment