cancel
Showing results for 
Search instead for 
Did you mean: 

JMS Connector factory error

Former Member
0 Kudos

Error to start the JMS Connector factory as shown below. HELP!

java.rmi.RemoteException: Error occurred while starting application locally and wait.; nested exception is:

 com.sap.engine.services.deploy.container.DeploymentException: (InitialContext.java:195)

 at com.sap.engine.services.jmsconnector.deploy.ContainerImpl.loadFactory(ContainerImpl.java:1893)

 ... 36 more

 at com.sap.engine.services.jmsconnector.exceptions.BaseDeploymentException.writeReplace(BaseDeploymentException.java:101)

 at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

 at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)

 at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)

 at java.lang.reflect.Method.invoke(Method.java:324)

 at java.io.ObjectStreamClass.invokeWriteReplace(ObjectStreamClass.java:896)

 at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1011)

 at java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1332)

 at java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1304)

 at java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1247)

 at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1052)

 at java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1332)

 at java.io.ObjectOutputStream.defaultWriteObject(ObjectOutputStream.java:367)

 at javax.management.MBeanException.writeObject(MBeanException.java:126)

 at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

 at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)

 at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)

 at java.lang.reflect.Method.invoke(Method.java:324)

 at java.io.ObjectStreamClass.invokeWriteObject(ObjectStreamClass.java:809)

 at java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1296)

 at java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1247)

 at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1052)

 at java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1332)

 at java.io.ObjectOutputStream.defaultWriteObject(ObjectOutputStream.java:367)

 at com.sap.exception.BaseExceptionInfo.writeObject(BaseExceptionInfo.java:964)

 at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

 at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)

 at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)

 at java.lang.reflect.Method.invoke(Method.java:324)

 at java.io.ObjectStreamClass.invokeWriteObject(ObjectStreamClass.java:809)

 at java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1296)

 at java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1247)

 at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1052)

 at java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1332)

 at java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1304)

 at java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1247)

 at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1052)

 at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:278)

 at com.sap.engine.services.jmx.ResponseMessage.writeBody(ResponseMessage.java:168)

 at com.sap.engine.services.jmx.Message.writeMsg(Message.java:257)

 at com.sap.engine.services.jmx.Message.getMsg(Message.java:453)

 at com.sap.engine.services.jmx.Message.writeExternal(Message.java:505)

 at java.io.ObjectOutputStream.writeExternalData(ObjectOutputStream.java:1267)

 at java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1245)

 at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1052)

 at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:278)

 at com.sap.engine.services.jmx.connector.p4.P4ConnectorServerImplp4_Skel.dispatch(P4ConnectorServerImplp4_Skel.java:66)

 ... 9 more

Accepted Solutions (0)

Answers (1)

Answers (1)

Former Member
0 Kudos

Can you post your deployment descriptor for this connection factory?

Former Member
0 Kudos

this is the deployment descriptor:

<?xml version="1.0" encoding="UTF-8" ?>

- <jms-factories>

<application-name>mbb.com/bbbbb</application-name>

- <connection-factory>

<library-name>mqjms</library-name>

<connection-factory-type>Unknown</connection-factory-type>

<factory-name>QCF_1</factory-name>

- <context-factory-type>

<link-factory-name>QCF_1</link-factory-name>

<initial-context-factory>com.sun.jndi.fscontext.RefFSContextFactory</initial-context-factory>

<provider-url>file:/C:/JNDI-Directory</provider-url>

<security-principal />

<security-credentials />

</context-factory-type>

</connection-factory>

</jms-factories>

Former Member
0 Kudos

Have you included the fscontext.jar in mqjms library? You should have all required MQ jars in the library, as well as the relevant MQ DLLs in the system path on the machine where you have the SAP Web AS Java running.

In the <link-factory-name> element of the XML you should specify the JNDI name of an existing object - that is, you should first create the QCF_1 factory using the MQ JMS administration tool, and then register it in SAP Web AS Java using the jms-factories.xml.

Also, I think the provider URL should be specified as file://C:/JNDI-Directory - you could try this as well.

Zornitsa

Former Member
0 Kudos

tried all that you suggested before.. still doesn't work. Help!

Former Member
0 Kudos

Hi,

I have checked the MQ documentation - the Provider URL is specified as you did: file:/C:/JNDI-Directory. Sorry for my misleading suggestion.

It's very strange that it's not working however. I tried to do the same, and it went OK. How did you deploy the MQ JMS library? I created a library SDA in the SAP NW Developer Studio, and deployed it on the J2EE Engine (including a reference to the JMS library on the engine), You can also use the runtime GUI of JMS Connector Service in Visual Administrator. Actually, I used the runtime to register the connection factory as well, and it worked...

So far, I don't have any other ideas about what might be wrong...

Zornitsa