Cant reconnect to JMS-provider
Hi,
i have two server-instances... lets say s1 and s2.
A application running on s1 is sending messages to a JMS-Provider provided by s2.
Everthing works fine, but when the s2 with the JMS-Provider gets restarted, s1 ist losing the connection and i have to restart it manually.
The log says:
java.net.ConnectException: Connection refused: connect. org.springframework.jms.UncategorizedJmsException: Uncategorized exception occured during JMS processing; nested exception is javax.jms.JMSException: Failed to create session. Exception: Connection refused to host: 172.25.0.25; nested exception is:
java.net.ConnectException: Connection refused: connect.
Caused by:
javax.jms.JMSException: Failed to create session. Exception: Connection refused to host: 127.0.0.1; nested exception is:
java.net.ConnectException: Connection refused: connect.
at jrun.jms.core.client.rmi.RmiJmsConnectionStub.createSession(RmiJmsConnectionStub.java:141)
at jrun.jms.core.client.JmsSession.<init>(JmsSession.java:248)
at jrun.jms.core.client.JmsTopicSession.<init>(JmsTopicSession.java:47)
at jrun.jms.core.client.JmsTopicConnection.createTopicSession(JmsTopicConnection.java:62)
at jrun.jms.wrapper.enterprise.JRunXAConnectionWrapper.createTopicSession(JRunXAConnectionWrapper.java:81)
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:585)
at...Anyone has an idea, how to automatic reconnect to the JMS-prover on s2.
Thx a lot...
Ray
Please refer to the following document for setting client connection failover(auto reconnect).
http://docs.sun.com/app/docs/doc/820-6767/aeqdx?l=en&a=view
-Sarada.
Similar Messages
-
XI JMS adapter after JMS provider reboot
Hi All,
I have problem with XI JMS adapter. Adapter is in a JMS client role and JMS provider is Tibco. After reboot of JMS service in JMS provider, XI JMS adapter loose username and pw in connection and try logon to queue as an anonymous user.
After deactivation + activation of XI JMS adapter, connection seems to work correctly with uname & pw.
In JMS adapter we have folloving settings and we are connected straight into queue:
Transport Protocol = SonicMQ JMS Provider
General JMS Settings:
Transactional JMS Session is in use
Delivery Mode of Message Producer = Persist JMS messages..
+ Queue user & pw
Error Handling Settings:
Wait After Message Error(msecs) = 60000
Wait Before Reconnect(msecs) = 60000
Does anyone ran into this earlier?
Thanks in advance.
-KimmoHi Saravana,
It seems that no connection is available to queue. In JMS adapter are you using correct path for finding these provider specifig classes in front of class name. Example: javax.jms.QueueConnectionFactory
It is also possible that username of JMS provider which you configure to JMS adapter does not have correct rights for reading/writing or accessing to queue.
We are not using any additional settings for JMS adapter. For server name we have also added protocol which is tcp://<servername> and using transactional JMS session.
We had this same error when trying connect to queue via JNDI. Then we changed JMS adapter to connect straight to queue and it started to work. -
MDB behavior with Foreign JMS Provider
I am experiencing some MDB behavior which I do not quite understand. I would appreciate
if someone could tell me what might be happening.
An application on WebLogic 8.1 SP1 (also tried it with SP2) has MDB's which listen
on a MQ Queue. If I put a large XML message on the MQ Queue (say around 600 KB),
the onMessage execution is very random, For the large messages only 1 MDB gets
invoked and the other messages just sit on the MQ Queue. Even though I have defined
an weblogic execute queue for the MDB's and they have 15 threads allocated.
The other messages get picked up after the first one gets completed. The problem
is the whole transaction (which is XA) can take a while (upto 10 minutes). This
is not intended, but for some reason it takes that long.
Also, while monitoring the MDB execute queues, I noticed that none of the threads
from that queue are performing the work and a thread dump shows that the weblogic.ejb20.internal.JMSPoller
thread has invoked the MDB and is currently waiting for the database to finish
some processing.
When the message size is smaller, the MDB's fire concurrently and are executed
on the MDB execute queue.
Thanks,
Ketan.
When we're using MDBs against a foreign JMS provider with XA, the EJB
container tries to reduce the number of threads that are blocked waiting for
a message. You should see lots of threads working when there are lots of
messages on the queue, a few threads (or only one) working when the queue is
empty or nearly so, and there should be some ramp-up and ramp-down time in
between. It sounds like the ramp-up takes longer in your case because
receiving the very first message takes a long time.
If this behavior is causing big problems for you, you might want to contact
product support and file an enhancement request.
greg
"Ketan" <[email protected]> wrote in message
news:[email protected]...
>
> Here is some more information regarding this issue.
>
> When I place sufficiently large messages (such that the parsing and
processing
> of these messages takes longer than it does for normal size messages), I
notice
> the following behavior.
>
> Lets say I put 6 large messages on the MQ Queue. The server immediately
picks
> up 1 message and starts processing it. The other 5 messages are sitting on
the
> MQ Queue, while the MDB execute queue has all 15 idle threads.
>
> After the processing of the message is done, 2 messages get picked up.
This time,
> 1 thread in the MDB execute queue gets the message and the other is
processed
> by the JMSPoller thread. After these 2 messages are processed, 3 Messages
get
> picked up and this time 2 messages are on the MDB execute queue and 1 is
processed
> by the JMSPoller.
>
> So based on this the question is ..Is this the expected behavior? I was
under
> the impression that the poller would simply dispatch messages to the
execute queue,
> and as a result, I was expecting all the messages would get picked up from
the
> MQ queue pretty fast and would not have to wait for 1 or more MDB's to
finish
> processing.
>
> I would really appreciate any suggestions anyone may have for me.
>
> Again the environment is WLS 8.1 SP2, MQ 5.3
>
> thanks,
> Ketan
-
Error while using webmethod JMS provider with JNDI
Hi,
I am using webmethod JMS provider (not SAP JMS) with JNDI to connect to webmethod with XI. Central J2EE adapter engine is used and the comm chaneel is configured in with appropriate Provider JNDI Server address, initial context factory, Name of queue connection factory etc.
While activated the adapter short log shows: Adapter has not provided any status information about this channel"
In the detailed log following error message is displayed: "Obtained connection factory: null#"
#1.5 #001A4BAC31000052000001520000152200045090BF28DACA#1214482519514#com.sap.aii.adapter.jms.core.connector.JndiConnectorImpl##com.sap.aii.adapter.jms.core.connector.JndiConnectorImpl.createConnectionFactory()#J2EE_GUEST#0##n/a##8b16bd50437911ddc9f2001a4bac3100#SAPEngine_Application_Thread[impl:3]_16##0#0#Path##Plain###Entering method#
#1.5 #001A4BAC31000052000001530000152200045090BF28DB65#1214482519514#com.sap.aii.adapter.jms.core.connector.JndiConnectorImpl##com.sap.aii.adapter.jms.core.connector.JndiConnectorImpl.createConnectionFactory()#J2EE_GUEST#0##n/a##8b16bd50437911ddc9f2001a4bac3100#SAPEngine_Application_Thread[impl:3]_16##0#0#Debug##Plain###Looking up connection factory under name NAIP_XIQueueConnectionFactory#
#1.5 #001A4BAC31000052000001540000152200045090BF28E42E#1214482519516#com.sap.aii.adapter.jms.core.connector.JndiConnectorImpl##com.sap.aii.adapter.jms.core.connector.JndiConnectorImpl.createConnectionFactory()#J2EE_GUEST#0##n/a##8b16bd50437911ddc9f2001a4bac3100#SAPEngine_Application_Thread[impl:3]_16##0#0#Debug##Plain###Obtained connection factory: null#
#1.5 #001A4BAC31000052000001550000152200045090BF28E4B3#1214482519516#com.sap.aii.adapter.jms.core.connector.JndiConnectorImpl##com.sap.aii.adapter.jms.core.connector.JndiConnectorImpl.createConnectionFactory()#J2EE_GUEST#0##n/a##8b16bd50437911ddc9f2001a4bac3100#SAPEngine_Application_Thread[impl:3]_16##0#0#Path##Plain###Exiting method#
#1.5 #001A4BAC31000052000001560000152200045090BF28E528#1214482519516#com.sap.aii.adapter.jms.core.connector.ConnectorImpl##com.sap.aii.adapter.jms.core.connector.ConnectorImpl.executeConnectionFactoryInvocations()#J2EE_GUEST#0##n/a##8b16bd50437911ddc9f2001a4bac3100#SAPEngine_Application_Thread[impl:3]_16##0#0#Path##Plain###Entering method#
#1.5 #001A4BAC31000052000001570000152200045090BF28E5A9#1214482519517#com.sap.aii.adapter.jms.core.connector.ConnectorImpl##com.sap.aii.adapter.jms.core.connector.ConnectorImpl.executeConnectionFactoryInvocations()#J2EE_GUEST#0##n/a##8b16bd50437911ddc9f2001a4bac3100#SAPEngine_Application_Thread[impl:3]_16##0#0#Info##Java###Sucessfully executed CF invocations for connection factory object: for profile: #2#<null>#ConnectionProfile of channel: CC_RCV_JMS_SAPJNDIon node: 3010950 having object id: e4413a5265a436459e271d5e0dd4859b#
#1.5 #001A4BAC31000052000001580000152200045090BF28E64E#1214482519517#com.sap.aii.adapter.jms.core.connector.ConnectorImpl##com.sap.aii.adapter.jms.core.connector.ConnectorImpl.executeConnectionFactoryInvocations()#J2EE_GUEST#0##n/a##8b16bd50437911ddc9f2001a4bac3100#SAPEngine_Application_Thread[impl:3]_16##0#0#Path##Plain###Exiting method#
#1.5 #001A4BAC31000052000001590000152200045090BF28E6CA#1214482519517#com.sap.aii.adapter.jms.core.connector.ConnectorImpl##com.sap.aii.adapter.jms.core.connector.ConnectorImpl.buildConnection()#J2EE_GUEST#0##n/a##8b16bd50437911ddc9f2001a4bac3100#SAPEngine_Application_Thread[impl:3]_16##0#0#Path##Plain###Entering method#
#1.5 #001A4BAC310000520000015A0000152200045090BF28E741#1214482519517#com.sap.aii.adapter.jms.core.common.StringUtils##com.sap.aii.adapter.jms.core.common.StringUtils.isBlank(String str)#J2EE_GUEST#0##n/a##8b16bd50437911ddc9f2001a4bac3100#SAPEngine_Application_Thread[impl:3]_16##0#0#Path##Plain###Entering method#
#1.5 #001A4BAC310000520000015B0000152200045090BF28E7C3#1214482519517#com.sap.aii.adapter.jms.core.connector.ConnectorImpl##com.sap.aii.adapter.jms.core.connector.ConnectorImpl.buildConnection()#J2EE_GUEST#0##n/a##8b16bd50437911ddc9f2001a4bac3100#SAPEngine_Application_Thread[impl:3]_16##0#0#Debug##Plain###Creating connection...#
#1.5 #001A4BAC310000520000015C0000152200045090BF28EB51#1214482519518#com.sap.aii.adapter.jms.core.channel.AdapterImpl##com.sap.aii.adapter.jms.core.channel.AdapterImpl.addOrReplaceChannel(Channel cpaChannel)#J2EE_GUEST#0##n/a##8b16bd50437911ddc9f2001a4bac3100#SAPEngine_Application_Thread[impl:3]_16##0#0#Warning##Java###Catching #1#java.lang.NullPointerException
at com.sap.aii.adapter.jms.core.connector.ConnectorImpl.buildConnection(ConnectorImpl.java:198)
at com.sap.aii.adapter.jms.core.connector.ConnectorImpl.doConnect(ConnectorImpl.java:166)
at com.sap.aii.adapter.jms.core.connector.JndiConnectorImpl.doConnect(JndiConnectorImpl.java:186)
at com.sap.aii.adapter.jms.core.connector.ConnectorImpl.connect(ConnectorImpl.java:151)
at com.sap.aii.adapter.jms.core.channel.ChannelImpl.doStart(ChannelImpl.java:235)
at com.sap.aii.adapter.jms.core.channel.ChannelImpl.start(ChannelImpl.java:154)
at com.sap.aii.adapter.jms.core.channel.AdapterImpl.doAddUpdateChannel(AdapterImpl.java:404)
at com.sap.aii.adapter.jms.core.channel.AdapterImpl.addOrReplaceChannel(AdapterImpl.java:376)
at com.sap.aii.adapter.jms.core.channel.ChannelLifecycleCallbackImpl$1.run(ChannelLifecycleCallbackImpl.java:51)
at com.sap.engine.core.thread.impl3.ActionObject.run(ActionObject.java:37)
at java.security.AccessController.doPrivileged(Native Method)
at com.sap.engine.core.thread.impl3.SingleThread.execute(SingleThread.java:102)
at com.sap.engine.core.thread.impl3.SingleThread.run(SingleThread.java:172)
#1.5 #001A4BAC310000520000015D0000152200045090BF28EC6A#1214482519518#com.sap.aii.adapter.jms.core.channel.AdapterImpl##com.sap.aii.adapter.jms.core.channel.AdapterImpl.addOrReplaceChannel(Channel cpaChannel)#J2EE_GUEST#0##n/a##8b16bd50437911ddc9f2001a4bac3100#SAPEngine_Application_Thread[impl:3]_16##0#0#Error##Plain###[[ChannelName:CC_RCV_JMS_SAPJNDI,ChannelId: e4413a5265a436459e271d5e0dd4859b]] Error adding/updating channel.#
#1.5 #001A4BAC310000520000015E0000152200045090BF28ECF8#1214482519518#com.sap.aii.adapter.jms.core.channel.AdapterImpl##com.sap.aii.adapter.jms.core.channel.AdapterImpl.addOrReplaceChannel(Channel cpaChannel)#J2EE_GUEST#0##n/a##8b16bd50437911ddc9f2001a4bac3100#SAPEngine_Application_Thread[impl:3]_16##0#0#Path##Plain###Exiting method#
#1.5 #001A4BAC310000520000015F0000152200045090BF28ED76#1214482519519#com.sap.aii.adapter.jms.core.channel.ChannelLifecycleCallbackImpl##com.sap.aii.adapter.jms.core.channel.ChannelLifecycleCallbackImpl.channelAdded().run()#J2EE_GUEST#0##n/a##8b16bd50437911ddc9f2001a4bac3100#SAPEngine_Application_Thread[impl:3]_16##0#0#Path##Plain###Exiting method#
#1.5 #001A4BAC3100005F000000660000152200045090BF65478A#1214482523474#com.sap.aii.adapter.jms.core.channel.ChannelLifecycleCallbackImpl#sap.com/com.sap.xi.mdt#com.sap.aii.adapter.jms.core.channel.ChannelLifecycleCallbackImpl.channelAdded(Channel channel)#AAAAAAAAA#108##n/a##002ee500437911dd99cf001a4bac3100#SAPEngine_Application_Thread[impl:3]_29##0#0#Path##Plain###Exiting method#
Please let me know anyone has come accross the problem or has idea how to solve it. Thanks.Hi,
Ask ur basis admin to restart JMS adpater From Vis administrator and try again to activate the comm channel.
Hope this will solve ur problem and once again check connection fatcory and Queue name provided by Webmethod admin.
Regards,
Srini -
Connecting to a Remote JMS provider from MDB in jboss-4.0
Hi,
I am using Tibco as a remote JMS Provider. When the Tibco server is running on the same machine as JBoss-4.0, the Message Driven Bean deployed in Jboss is able to get the messages from the queue on Tibco server.
I have added the following configuration to jms-ds.xml file
<!-- The JMS provider loader -->
<mbean code="org.jboss.jms.jndi.JMSProviderLoader"
name="jboss.mq:service=JMSProviderLoader,name=JMSProvider">
<attribute name="ProviderName">TIBCOJMSProvider</attribute>
<attribute name="ProviderAdapterClass">
org.jboss.jms.jndi.JNDIProviderAdapter
</attribute>
<!-- The combined connection factory -->
<!--attribute name="FactoryRef">XAConnectionFactory</attribute-->
<!-- The queue connection factory -->
<attribute name="QueueFactoryRef">XAQueueConnectionFactory</attribute>
<!-- The topic factory -->
<attribute name="TopicFactoryRef">XATopicConnectionFactory</attribute>
<attribute name="Properties">
java.naming.factory.initial=com.tibco.tibjms.naming.TibjmsInitialContextFactory
java.naming.factory.url.pkgs=com.tibco.tibjms.naming
java.naming.provider.url=tibjmsnaming://TibcoHost:7222
</attribute>
</mbean>
Also following invoker proxy binding is added to standardjboss.xml & it is used in MDB's jboss.xml
<invoker-proxy-binding>
<name>my-mdb-invoker</name>
<invoker-mbean>does-not-matter</invoker-mbean>
<proxy-factory>org.jboss.ejb.plugins.jms.JMSContainerInvoker</proxy-factory>
<proxy-factory-config>
<JMSProviderAdapterJNDI>TIBCOJMSProvider</JMSProviderAdapterJNDI>
<ServerSessionPoolFactoryJNDI>StdJMSPool</ServerSessionPoolFactoryJNDI>
<MinimumSize>1</MinimumSize>
<KeepAliveMillis>30000</KeepAliveMillis>
<MaximumSize>15</MaximumSize>
<MaxMessages>1</MaxMessages>
<MDBConfig>
<ReconnectIntervalSec>10</ReconnectIntervalSec>
<DLQConfig>
<DestinationQueue>queue/DLQ</DestinationQueue>
<MaxTimesRedelivered>10</MaxTimesRedelivered>
<TimeToLive>0</TimeToLive>
</DLQConfig>
</MDBConfig>
</proxy-factory-config>
</invoker-proxy-binding>
But When I try to use Tibco server on some other machine it throws following exception. It actually tryies to connect to Tibco server on same machine.
javax.jms.JMSException: Failed to connect to the server at tcp://localhost:7222
at com.tibco.tibjms.TibjmsxLinkTcp._createSocket(TibjmsxLinkTcp.java:748)
at com.tibco.tibjms.TibjmsxLinkTcp.connect(TibjmsxLinkTcp.java:857)
at com.tibco.tibjms.TibjmsConnection._create(TibjmsConnection.java:611)
at com.tibco.tibjms.TibjmsConnection.<init>(TibjmsConnection.java:1769)
at com.tibco.tibjms.TibjmsQueueConnection.<init>(TibjmsQueueConnection.java:35)
at com.tibco.tibjms.TibjmsxCFImpl._createImpl(TibjmsxCFImpl.java:90)
at com.tibco.tibjms.TibjmsxCFImpl._createConnection(TibjmsxCFImpl.java:151)
at com.tibco.tibjms.TibjmsXAQueueConnectionFactory.createQueueConnection(TibjmsXAQueueConnectionFactory.java:140
at org.jboss.ejb.plugins.jms.DLQHandler.createService(DLQHandler.java:152)
at org.jboss.system.ServiceMBeanSupport.jbossInternalCreate(ServiceMBeanSupport.java:237)
at org.jboss.system.ServiceMBeanSupport.create(ServiceMBeanSupport.java:164)
at org.jboss.ejb.plugins.jms.JMSContainerInvoker.innerCreate(JMSContainerInvoker.java:545)
at org.jboss.ejb.plugins.jms.JMSContainerInvoker.startService(JMSContainerInvoker.java:767)
at org.jboss.system.ServiceMBeanSupport.jbossInternalStart(ServiceMBeanSupport.java:271)
at org.jboss.system.ServiceMBeanSupport.jbossInternalLifecycle(ServiceMBeanSupport.java:221)
at sun.reflect.GeneratedMethodAccessor2.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:324)
at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:141)
at org.jboss.mx.server.Invocation.dispatch(Invocation.java:80)
at org.jboss.mx.server.Invocation.invoke(Invocation.java:72)
at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:242)
at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:642)
at org.jboss.system.ServiceController$ServiceProxy.invoke(ServiceController.java:891)
at $Proxy45.start(Unknown Source)
at org.jboss.system.ServiceController.start(ServiceController.java:416)
at sun.reflect.GeneratedMethodAccessor6.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:324)
at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:141)
at org.jboss.mx.server.Invocation.dispatch(Invocation.java:80)
at org.jboss.mx.server.Invocation.invoke(Invocation.java:72)
at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:242)
at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:642)
at org.jboss.system.ServiceMBeanSupport.start(ServiceMBeanSupport.java:170)
at org.jboss.ejb.MessageDrivenContainer.startService(MessageDrivenContainer.java:262)
at org.jboss.system.ServiceMBeanSupport.jbossInternalStart(ServiceMBeanSupport.java:271)
at org.jboss.system.ServiceMBeanSupport.jbossInternalLifecycle(ServiceMBeanSupport.java:221)
at sun.reflect.GeneratedMethodAccessor2.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:324)
at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:141)
at org.jboss.mx.server.Invocation.dispatch(Invocation.java:80)
at org.jboss.mx.server.Invocation.invoke(Invocation.java:72)
at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:242)
at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:642)
at org.jboss.system.ServiceController$ServiceProxy.invoke(ServiceController.java:891)
at $Proxy0.start(Unknown Source)
at org.jboss.system.ServiceController.start(ServiceController.java:416)
at sun.reflect.GeneratedMethodAccessor6.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:324)
at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:141)
at org.jboss.mx.server.Invocation.dispatch(Invocation.java:80)
at org.jboss.mx.server.Invocation.invoke(Invocation.java:72)
at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:242)
at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:642)
at org.jboss.mx.util.MBeanProxyExt.invoke(MBeanProxyExt.java:176)
at $Proxy43.start(Unknown Source)
at org.jboss.ejb.EjbModule.startService(EjbModule.java:394)
at org.jboss.system.ServiceMBeanSupport.jbossInternalStart(ServiceMBeanSupport.java:271)
at org.jboss.system.ServiceMBeanSupport.jbossInternalLifecycle(ServiceMBeanSupport.java:221)
at sun.reflect.GeneratedMethodAccessor2.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:324)
at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:141)
at org.jboss.mx.server.Invocation.dispatch(Invocation.java:80)
at org.jboss.mx.server.Invocation.invoke(Invocation.java:72)
at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:242)
at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:642)
at org.jboss.system.ServiceController$ServiceProxy.invoke(ServiceController.java:891)
at $Proxy0.start(Unknown Source)
at org.jboss.system.ServiceController.start(ServiceController.java:416)
at sun.reflect.GeneratedMethodAccessor6.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:324)
at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:141)
at org.jboss.mx.server.Invocation.dispatch(Invocation.java:80)
at org.jboss.mx.server.Invocation.invoke(Invocation.java:72)
at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:242)
at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:642)
at org.jboss.mx.util.MBeanProxyExt.invoke(MBeanProxyExt.java:176)
at $Proxy19.start(Unknown Source)
at org.jboss.ejb.EJBDeployer.start(EJBDeployer.java:605)
at org.jboss.deployment.MainDeployer.start(MainDeployer.java:935)
at org.jboss.deployment.MainDeployer.deploy(MainDeployer.java:746)
at org.jboss.deployment.MainDeployer.deploy(MainDeployer.java:709)
at sun.reflect.GeneratedMethodAccessor30.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:324)
at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:141)
at org.jboss.mx.server.Invocation.dispatch(Invocation.java:80)
at org.jboss.mx.interceptor.AbstractInterceptor.invoke(AbstractInterceptor.java:119)
at org.jboss.mx.server.Invocation.invoke(Invocation.java:74)
at org.jboss.mx.interceptor.ModelMBeanOperationInterceptor.invoke(ModelMBeanOperationInterceptor.java:131)
at org.jboss.mx.server.Invocation.invoke(Invocation.java:74)
at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:242)
at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:642)
at org.jboss.mx.util.MBeanProxyExt.invoke(MBeanProxyExt.java:176)
at $Proxy8.deploy(Unknown Source)Hi,
I am using Tibco as a remote JMS Provider. When the Tibco server is running on the same machine as JBoss-4.0, the Message Driven Bean deployed in Jboss is able to get the messages from the queue on Tibco server.
I have added the following configuration to jms-ds.xml file
<!-- The JMS provider loader -->
<mbean code="org.jboss.jms.jndi.JMSProviderLoader"
name="jboss.mq:service=JMSProviderLoader,name=JMSProvider">
<attribute name="ProviderName">TIBCOJMSProvider</attribute>
<attribute name="ProviderAdapterClass">
org.jboss.jms.jndi.JNDIProviderAdapter
</attribute>
<!-- The combined connection factory -->
<!--attribute name="FactoryRef">XAConnectionFactory</attribute-->
<!-- The queue connection factory -->
<attribute name="QueueFactoryRef">XAQueueConnectionFactory</attribute>
<!-- The topic factory -->
<attribute name="TopicFactoryRef">XATopicConnectionFactory</attribute>
<attribute name="Properties">
java.naming.factory.initial=com.tibco.tibjms.naming.TibjmsInitialContextFactory
java.naming.factory.url.pkgs=com.tibco.tibjms.naming
java.naming.provider.url=tibjmsnaming://TibcoHost:7222
</attribute>
</mbean>
Also following invoker proxy binding is added to standardjboss.xml & it is used in MDB's jboss.xml
<invoker-proxy-binding>
<name>my-mdb-invoker</name>
<invoker-mbean>does-not-matter</invoker-mbean>
<proxy-factory>org.jboss.ejb.plugins.jms.JMSContainerInvoker</proxy-factory>
<proxy-factory-config>
<JMSProviderAdapterJNDI>TIBCOJMSProvider</JMSProviderAdapterJNDI>
<ServerSessionPoolFactoryJNDI>StdJMSPool</ServerSessionPoolFactoryJNDI>
<MinimumSize>1</MinimumSize>
<KeepAliveMillis>30000</KeepAliveMillis>
<MaximumSize>15</MaximumSize>
<MaxMessages>1</MaxMessages>
<MDBConfig>
<ReconnectIntervalSec>10</ReconnectIntervalSec>
<DLQConfig>
<DestinationQueue>queue/DLQ</DestinationQueue>
<MaxTimesRedelivered>10</MaxTimesRedelivered>
<TimeToLive>0</TimeToLive>
</DLQConfig>
</MDBConfig>
</proxy-factory-config>
</invoker-proxy-binding>
But When I try to use Tibco server on some other machine it throws following exception. It actually tryies to connect to Tibco server on same machine.
javax.jms.JMSException: Failed to connect to the server at tcp://localhost:7222
at com.tibco.tibjms.TibjmsxLinkTcp._createSocket(TibjmsxLinkTcp.java:748)
at com.tibco.tibjms.TibjmsxLinkTcp.connect(TibjmsxLinkTcp.java:857)
at com.tibco.tibjms.TibjmsConnection._create(TibjmsConnection.java:611)
at com.tibco.tibjms.TibjmsConnection.<init>(TibjmsConnection.java:1769)
at com.tibco.tibjms.TibjmsQueueConnection.<init>(TibjmsQueueConnection.java:35)
at com.tibco.tibjms.TibjmsxCFImpl._createImpl(TibjmsxCFImpl.java:90)
at com.tibco.tibjms.TibjmsxCFImpl._createConnection(TibjmsxCFImpl.java:151)
at com.tibco.tibjms.TibjmsXAQueueConnectionFactory.createQueueConnection(TibjmsXAQueueConnectionFactory.java:140
at org.jboss.ejb.plugins.jms.DLQHandler.createService(DLQHandler.java:152)
at org.jboss.system.ServiceMBeanSupport.jbossInternalCreate(ServiceMBeanSupport.java:237)
at org.jboss.system.ServiceMBeanSupport.create(ServiceMBeanSupport.java:164)
at org.jboss.ejb.plugins.jms.JMSContainerInvoker.innerCreate(JMSContainerInvoker.java:545)
at org.jboss.ejb.plugins.jms.JMSContainerInvoker.startService(JMSContainerInvoker.java:767)
at org.jboss.system.ServiceMBeanSupport.jbossInternalStart(ServiceMBeanSupport.java:271)
at org.jboss.system.ServiceMBeanSupport.jbossInternalLifecycle(ServiceMBeanSupport.java:221)
at sun.reflect.GeneratedMethodAccessor2.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:324)
at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:141)
at org.jboss.mx.server.Invocation.dispatch(Invocation.java:80)
at org.jboss.mx.server.Invocation.invoke(Invocation.java:72)
at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:242)
at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:642)
at org.jboss.system.ServiceController$ServiceProxy.invoke(ServiceController.java:891)
at $Proxy45.start(Unknown Source)
at org.jboss.system.ServiceController.start(ServiceController.java:416)
at sun.reflect.GeneratedMethodAccessor6.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:324)
at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:141)
at org.jboss.mx.server.Invocation.dispatch(Invocation.java:80)
at org.jboss.mx.server.Invocation.invoke(Invocation.java:72)
at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:242)
at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:642)
at org.jboss.system.ServiceMBeanSupport.start(ServiceMBeanSupport.java:170)
at org.jboss.ejb.MessageDrivenContainer.startService(MessageDrivenContainer.java:262)
at org.jboss.system.ServiceMBeanSupport.jbossInternalStart(ServiceMBeanSupport.java:271)
at org.jboss.system.ServiceMBeanSupport.jbossInternalLifecycle(ServiceMBeanSupport.java:221)
at sun.reflect.GeneratedMethodAccessor2.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:324)
at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:141)
at org.jboss.mx.server.Invocation.dispatch(Invocation.java:80)
at org.jboss.mx.server.Invocation.invoke(Invocation.java:72)
at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:242)
at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:642)
at org.jboss.system.ServiceController$ServiceProxy.invoke(ServiceController.java:891)
at $Proxy0.start(Unknown Source)
at org.jboss.system.ServiceController.start(ServiceController.java:416)
at sun.reflect.GeneratedMethodAccessor6.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:324)
at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:141)
at org.jboss.mx.server.Invocation.dispatch(Invocation.java:80)
at org.jboss.mx.server.Invocation.invoke(Invocation.java:72)
at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:242)
at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:642)
at org.jboss.mx.util.MBeanProxyExt.invoke(MBeanProxyExt.java:176)
at $Proxy43.start(Unknown Source)
at org.jboss.ejb.EjbModule.startService(EjbModule.java:394)
at org.jboss.system.ServiceMBeanSupport.jbossInternalStart(ServiceMBeanSupport.java:271)
at org.jboss.system.ServiceMBeanSupport.jbossInternalLifecycle(ServiceMBeanSupport.java:221)
at sun.reflect.GeneratedMethodAccessor2.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:324)
at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:141)
at org.jboss.mx.server.Invocation.dispatch(Invocation.java:80)
at org.jboss.mx.server.Invocation.invoke(Invocation.java:72)
at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:242)
at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:642)
at org.jboss.system.ServiceController$ServiceProxy.invoke(ServiceController.java:891)
at $Proxy0.start(Unknown Source)
at org.jboss.system.ServiceController.start(ServiceController.java:416)
at sun.reflect.GeneratedMethodAccessor6.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:324)
at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:141)
at org.jboss.mx.server.Invocation.dispatch(Invocation.java:80)
at org.jboss.mx.server.Invocation.invoke(Invocation.java:72)
at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:242)
at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:642)
at org.jboss.mx.util.MBeanProxyExt.invoke(MBeanProxyExt.java:176)
at $Proxy19.start(Unknown Source)
at org.jboss.ejb.EJBDeployer.start(EJBDeployer.java:605)
at org.jboss.deployment.MainDeployer.start(MainDeployer.java:935)
at org.jboss.deployment.MainDeployer.deploy(MainDeployer.java:746)
at org.jboss.deployment.MainDeployer.deploy(MainDeployer.java:709)
at sun.reflect.GeneratedMethodAccessor30.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:324)
at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:141)
at org.jboss.mx.server.Invocation.dispatch(Invocation.java:80)
at org.jboss.mx.interceptor.AbstractInterceptor.invoke(AbstractInterceptor.java:119)
at org.jboss.mx.server.Invocation.invoke(Invocation.java:74)
at org.jboss.mx.interceptor.ModelMBeanOperationInterceptor.invoke(ModelMBeanOperationInterceptor.java:131)
at org.jboss.mx.server.Invocation.invoke(Invocation.java:74)
at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:242)
at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:642)
at org.jboss.mx.util.MBeanProxyExt.invoke(MBeanProxyExt.java:176)
at $Proxy8.deploy(Unknown Source) -
Problem in configuring third party JMS provider
Hi,
I am having a problem in configuring Sun MQ 4.4 JMS provider with weblogic 10.3.I tried the following method:-
1. Created a new outbound connection pool.
2.In the properties for the connection pool :-
ConnetionFactory Location :- myTestCF (this is the remote connection factory JNDI)
Factory properties :- java.naming.factory.initial=com.sun.jndi.fscontext.RefFSContextFactory;java.naming.provider.url=file:/C:/my_object_store;java.naming.security.principal=admin;java.naming.security.credentials=admin
3.Provided the username and password also.
But when I am testing it from a SOA composite through a JMS adapter, it is giving me an exception indicating it could not locate the connection factory.I am clueless why this is happening.I've also tried with putting the sun mq jar files inside the <%wl_home%>/user_projects/domains/<%my_domain%>/lib folder.But it did not work.Please help.
Thanks,
RahulIn third party process SO / PR / PO should be in integrity. Your manual modification violates this I think (you are making one PO item from two SO item...).
http://help.sap.com/erp2005_ehp_04/helpdata/EN/dd/560287545a11d1a7020000e829fd11/frameset.htm
Processing Third-Party Orders in Purchasing
When you save a sales order that contains one or more third-party items, the system automatically creates a purchase requisition in Purchasing. Each third-party item in a sales order automatically generates a corresponding purchase requisition item. During creation of the requisition, the system automatically determines a vendor for each requisition item. If a sales order item has more than one schedule line, the system creates a purchase requisition item for each schedule line.
Purchase orders are created from purchase requisitions in the usual way. For more information about creating purchase orders, see the Purchasing documentation. During creation of the purchase order, the system automatically copies the delivery address of your customer from the corresponding sales order. In a sales order, you can enter purchase order texts for each third-party item. When you create the corresponding purchase order, the texts are automatically copied into the purchase order. The number of the purchase order appears in the document flow information of the sales order.
All changes made in the purchase order are automatically made in the sales order as well. For example, if the vendor confirms quantities and delivery dates different from those you request and enters them in the purchase order, the revised data is automatically copied into the sales order.
Regards,
Csaba -
Configuration of JMS receiver Using Jboss JMS provider
Hi all..
I am configuring JMS adapter as receiver.
I am using JMS provider JBOSS .
I hav done configuration as
Transport protocol :Acess JMS provider with JNDI
JNDI lookUp Name of q connection factory: org.jboss.naming.LinkRefPairService
Name of JNDI initial Context factory :org.jnp.interfaces.NamingContextFactory
in sxmb_moni I am getting blak&white flag
IN Run time work bench In adapter monitoring I am getting
Receiver channel. Details: Cannot instantiate class: org.jnp.interfaces.NamingContextFactory.
Can anybody plz tell me why this haapend?Did you deploy the JMS client jars to the J2EE Engine?
Cannot instantiate class: org.jnp.interfaces.NamingContextFactory sounds like the Framework can't find the class.
Take a look here:
Re: Using JBOSS JMS provider with XI
Greetz
Sebastian
Message was edited by: Sebastian Simon -
I am trying to connect tibcoems with PI using a Sender jms adapter.After successfully installing the drivers , the sender adapter goes into error.
"The JMS Provider gave the error message as Not permitted, and the error code is null"
The Transport protocol is 'Access JMS Provider with JNDI' and i have been given the required parameters from the tibco guys.
Your input are highly appreciated.
ShyamHi AQmit,
Thanks for the reply.
Please find the screenshots of what i am trying to do.
Also, Can u direct me how to check the right logs? -
Get Message Notification in BPM 10G from External JMS Provider
Hello,
Can anyone provide me the steps how to get a message from the queue (external JMS provider) in BPM 10G.
I have been looking into this for couple of days now and I'm not able to figure it out. Any input on this would be greatly appreciated.
Thanks
NCHi,
Please find the steps below and change the necessary parameter according to your requirement.
JMS Configuration and read the message from queue a
1) Configure a J2EE Configuration in External Resources with the following details.
Where
Name: J2EEConfiguration
Initial Context Factory: weblogic.jndi.WLInitialContextFactory
URL: t3://localhost:7001
Principal: weblogic
Credentials: weblogic
2) Configure a JMS Configuration in External Resources with the following details
Where
Name: JMSConfiguration
J2EE: J2EEConfiguration
Destination Type: Queue
Lookup Name: com.bibhu.queue – Refer to JMS configuration in Weblogic Server
Connection Factory Lookup Name: com.bibhu.cf – Refer to JMS configuration
3) Configure a Java Configuration in External Resources with the following details
Add weblogic.jar, wsclient.jar, and jms.jar files
4) Create a process and add a Global automatic Activity with the following configuration
5) Add the following code for different purpose
// The below code is meant for reading a message/messages from Queue
logMessage("JMS message retrieved from queue: \n" + message.textValue);
// The below code is meant for sending message to the Queue Where,
// JMSConfiguration: is the External Resource Configuration for JMS
// Bibhu: is the message body
String externalResourceId = "JMSConfiguration";
String msgBody = "Bibhu";
JmsMessage jmsMsg = JmsMessage(type : JmsMessageType.TEXT);
jmsMsg.textValue = msgBody;
jmsMsg.expiration = 'now' + '5m'; // expires in 5 minutes
sendMessage(DynamicJMS, configuration : externalResourceId, message : jmsMsg);
hope the above will help you.
Bibhu -
Trying to start the j2ee to be the JMS provider but why error
Anyone knows why I can't start the j2ee ..which I hope to use it as the JMS provider. I am trying to try the e.g. from JMS tutorial....
But it seems that I can't start the j2ee in the first place 'cos error say that I have another instance running...(but I didn't start anything in the first place). How should I solve this?
How could I stop the j2ee server....I tried the command
j2ee -stop but cannot..
Anyone can help?
AG
G:\jmseg\simple>j2ee -verbose
J2EE server listen port: 1050
java.lang.RuntimeException: Could not initialize j2ee server. Possible cause cou
ld be another instance of the server already running.
at com.sun.enterprise.iiop.POAProtocolMgr.initializeNaming(POAProtocolMg
r.java:134)
at com.sun.enterprise.server.J2EEServer.run(J2EEServer.java:227)
at com.sun.enterprise.server.J2EEServer.main(J2EEServer.java:918)
java.lang.RuntimeException: Could not initialize j2ee server. Possible cause cou
ld be another instance of the server already running.
at com.sun.enterprise.iiop.POAProtocolMgr.initializeNaming(POAProtocolMg
r.java:134)
at com.sun.enterprise.server.J2EEServer.run(J2EEServer.java:227)
at com.sun.enterprise.server.J2EEServer.main(J2EEServer.java:918)
java.lang.RuntimeException: Could not initialize j2ee server. Possible cause cou
ld be another instance of the server already running.
at com.sun.enterprise.server.J2EEServer.run(J2EEServer.java:355)
at com.sun.enterprise.server.J2EEServer.main(J2EEServer.java:918)
J2EE server reported the following error: Could not initialize j2ee server. Poss
ible cause could be another instance of the server already running.
Error executing J2EE server ...
G:\jmseg\simple>I got exactly the same message when I tried to start j2ee server... It worked fine the second time round though, So I suggest you try it again.
tim.. -
Configuring WL JMS as a foreign JMS provider with security scope (WLS 8.1)
Hello, i have a problem accessing a queue from a foreign jms provider, if the queue has a security policy. I have the following scenario:
1) Server server1 in domain1 (WLS81) has a JMS Server with one queue queue1 with a security policy "Caller is a member of the group GROUP_QUEUE". There is also a user USER_QUEUE user defined, which belongs to the this group.
There is also a ConnectionFactory with "XA Connection Factory Enabled = true" configured.
The queue and the connection factory are visible in the jndi tree of this server.
2) Server server2 has a foreign jms server. Foreign JMSConnectionFactory and foreign JMSDestination refer to the jndi entries of server 1. For Foreign JMS Connection Factory username is set to USER_QUEUE. JNDI entries for foreign references are visible in jndi tree of this server.
I wrote a standalone client to store messages in the queue accessing server1 with USER_QUEUE sucessfully.
Now I try to deploy a MDB on server2 accessing the queue on server 1. I tried different versions of ejb-jar.xml/weblogic-ejb-jar.xml to access the queue, but with no luck.
scenario a): no security entries in both descriptors; weblogic-descr has entries <destination-jndi-name> and <connection-factory-jndi-name> pointing to the local jndi names. REsult:
<11.02.2005 19.16 Uhr CET> <Warning> <EJB> <BEA-010061> <The Message-Driven EJB:
CancelEasyMoneyBean is unable to connect to the JMS destination: prepaid.Cancel
EasyMoneyQueue. The Error was:
[EJB:010196]'weblogic.jms.common.JMSSecurityException: Access denied to resource
: type=<jms>, application=, destinationType=queue, resource=CancelEasyMoneyQueue
, action=receive' Linked exception = 'weblogic.jms.common.JMSSecurityException:
Access denied to resource: type=<jms>, application=, destinationType=queue, reso
urce=CancelEasyMoneyQueue, action=receive'
So entering username and password for ForeignJMSConnectionFactory doesn't do the trick.
scenario b:) trying to set additional security entries in both descriptors. I added a role queueUser to my mdb and to weblogic-descr a
<security-role-assignment>
<role-name>queueUser</role-name>
<principal-name>USER_QUEUE<principal-name>
</security-role-assignment>
I added the user USER_QUEUE and the group GROUP_QUEUE to server2.
Now server 1 throws exception after redeployment on server 2:
java.lang.SecurityException: [Security:090398]Invalid Subject: principals=[USER_QUEUE, GROUP_QUEUE].
java.lang.SecurityException: [Security:090398]Invalid Subject: principals=[USER_QUEUE, GROUP_QUEUE]
at weblogic.security.service.SecurityServiceManager.seal(SecurityService
Manager.java:680)
Has anybody an idea or a pointer how to define access from a mdb to a foreign queue using security ?
Thanks in advance,
RainerHello, i have a problem accessing a queue from a foreign jms provider, if the queue has a security policy. I have the following scenario:
1) Server server1 in domain1 (WLS81) has a JMS Server with one queue queue1 with a security policy "Caller is a member of the group GROUP_QUEUE". There is also a user USER_QUEUE user defined, which belongs to the this group.
There is also a ConnectionFactory with "XA Connection Factory Enabled = true" configured.
The queue and the connection factory are visible in the jndi tree of this server.
2) Server server2 has a foreign jms server. Foreign JMSConnectionFactory and foreign JMSDestination refer to the jndi entries of server 1. For Foreign JMS Connection Factory username is set to USER_QUEUE. JNDI entries for foreign references are visible in jndi tree of this server.
I wrote a standalone client to store messages in the queue accessing server1 with USER_QUEUE sucessfully.
Now I try to deploy a MDB on server2 accessing the queue on server 1. I tried different versions of ejb-jar.xml/weblogic-ejb-jar.xml to access the queue, but with no luck.
scenario a): no security entries in both descriptors; weblogic-descr has entries <destination-jndi-name> and <connection-factory-jndi-name> pointing to the local jndi names. REsult:
<11.02.2005 19.16 Uhr CET> <Warning> <EJB> <BEA-010061> <The Message-Driven EJB:
CancelEasyMoneyBean is unable to connect to the JMS destination: prepaid.Cancel
EasyMoneyQueue. The Error was:
[EJB:010196]'weblogic.jms.common.JMSSecurityException: Access denied to resource
: type=<jms>, application=, destinationType=queue, resource=CancelEasyMoneyQueue
, action=receive' Linked exception = 'weblogic.jms.common.JMSSecurityException:
Access denied to resource: type=<jms>, application=, destinationType=queue, reso
urce=CancelEasyMoneyQueue, action=receive'
So entering username and password for ForeignJMSConnectionFactory doesn't do the trick.
scenario b:) trying to set additional security entries in both descriptors. I added a role queueUser to my mdb and to weblogic-descr a
<security-role-assignment>
<role-name>queueUser</role-name>
<principal-name>USER_QUEUE<principal-name>
</security-role-assignment>
I added the user USER_QUEUE and the group GROUP_QUEUE to server2.
Now server 1 throws exception after redeployment on server 2:
java.lang.SecurityException: [Security:090398]Invalid Subject: principals=[USER_QUEUE, GROUP_QUEUE].
java.lang.SecurityException: [Security:090398]Invalid Subject: principals=[USER_QUEUE, GROUP_QUEUE]
at weblogic.security.service.SecurityServiceManager.seal(SecurityService
Manager.java:680)
Has anybody an idea or a pointer how to define access from a mdb to a foreign queue using security ?
Thanks in advance,
Rainer -
JMS Adapter Configuration (Access JMS Provider Generically)
Hi Exports,
How can i configure JMS adapter Using Access JMS Provider Generically, where can we mentioned target server. there is Quename and username and password but there is no target server details field. could you please give me suggetion how to configure this.Hi,
This will help you
JMS Adapter
/people/kan.th/blog/2007/02/05/exploring-jms-and-sap-xi-jms-adaper
http://help.sap.com/saphelp_nw2004s/helpdata/en/cd/d85a9d6fab7d4dbb7ae421f710626c/content.htm
Sender Jms Adapter
http://help.sap.com/saphelp_nw2004s/helpdata/en/f4/2d6189f0e27a4894ad517961762db7/content.htm
Receiver Jms Adapter
http://help.sap.com/saphelp_nw2004s/helpdata/en/10/b1b4c8575a6e47954ad63438d303e4/content.htm
Regards
Agasthuri Doss -
How to increase the limitations of the JMS provider?
How can I increase the limitations of the JMS provider to tolerate multiple concurrent consumers? The platform I am working on is SUN application server's Admon Console.
I think the following link can help you:
http://docs.sun.com/app/docs/doc/819-4712/6n6rit5jc?a=view
Anyway you should use the following forum about JMS:
http://forum.java.sun.com/forum.jspa?forumID=29 -
Hi,
I have a pool of MDB's running on wls 9.x (subscriber). MDB pools subscribe to JMS Topics runnng on wls 10 MP1 (publisher).
Do I need to import publisher as a foreign jms provider into the subscriber domain ?
Why not use simple t3 config from the subscriber side (specify publisher's t3 url etc.)?
What are the pros and cons of either approach ?
Thanx,Hi,
WebLogic MDBs provide the option of either specifying the URL for the source destination directly inside the MDB descriptor, or specifying the URL via a foreign JMS provider.
I think the trade-offs are discussed in the MDB programmer's guide, but I think that the main benefit of using a foreign JMS is that it provides the opportunity to administratively change the URL without changing the descriptor. You can also use the foreign JMS config to change the mapping for destination.
By the way, if you use Foreign JMS, don't forget to specify a connection factory JNDI name in the MDB descriptor that references a connection factory mapping that's advertised locally by the Foreign JMS feature.
Tom -
Latest Versions of SonicMQ JMS Provider supported by PI71
Hello Experts,
I have a query on PI-JMS Adapter, where SonicMQ-JMS Provider will be used. As per the below link :
http://help.sap.com/saphelp_nwpi71/helpdata/en/cd/d85a9d6fab7d4dbb7ae421f710626c/frameset.htm
I do know that the version of SonicMQ supported by PI7.1 is 3.0.
But can anyone please tell me which all are the versions of SonicMQ (uptoV7.5) been supported by PI7.1??
Thanks,
SantanuDownload Firefox 3.6.19 from here:
* http://www.mozilla.com/en-US/firefox/all-older.html
* Save the File on your Desktop
Uninstalling Firefox
* https://support.mozilla.com/en-US/kb/Uninstalling%20Firefox
Installing Firefox on Windows --- Install the Downloaded Firefox 3.6.19 version
* https://support.mozilla.com/en-US/kb/Installing%20Firefox%20on%20Windows
Check and tell if its working.
Maybe you are looking for
-
How to call web service using J2SE 1.3?
Dear All, i have developed a web service by jdev 10.1.3 (JAX-RPC with web service security enabled). i generate the ws proxy (jdev 10.1.3) and run it with wsclient_extended.jar (required JDK 1.4.1 or above??). but one of my client say he has to use J
-
Write To A URL And Communicate With A Host Server
The java.net.URL is the package we use to read from and write to existing web pages. I have a Java program that imports the java.net.URL and reads and extracts some information from web pages. However, it is only the latter half of the task. How does
-
Hi Experts, Can you please tell me how the Workflow Content in EP can be used? Any kind of help will be highly appreciated. Thanks & Regards, Shobhit
-
BAPI_USER_CHANGE change user langu
HI I want to change there the use LANGU via Bapi - BAPI_USER_CHANGE for instance from English to italic, for other thing like decimal notation we have domain with range that i can choose the num that i want to use and put it in default structure . An
-
Hello, Recently, I have noticed that k9copy was unbearably slow compared to what it's normally like. Nearly unresponsive the whole time. I was wondering if anybody knows a workaround to it, or if it has to do with some KDE libraries (btw, I'm runni