JMS MessageBridge Problem ??
Hello,
We are using WLS 7.0. We 've set up the WLS Message Bridge to communicate between
MQ and WLS JMS queues. The MQSeries JNDI objects are created in WLS JNDI using
a startup class. There are 2 Queues on the MQseries[TO_JMS and FROM_JMS] and 2
Queues on the WLS JMS[FROM_MQ and TO_MQ]. I put a message on TO_JMS of MQ which
is transferred to FROM_MQ of WLS JMS using the WLS Message Bridge. After processing
the message on the WLS side, I put a message on TO_MQ of WLS JMS which is transferred
to FROM_JMS of MQ. The whole messaging transfer works very well. The problem is
with the Corelation Id I set when putting the message on TO_JMS. I expected the
same Correlation Id will be transferred to FROM_MQ. And while sending the message
back from WLS to MQ, I set this corelation Id to whatever was first set. I do
this to filter out a specific message. But as the correlation ids are not copied
by the message bridge, when I filter the message using the correlation Id from
the FROM_JMS, I get nothing. Without the filter, I can get the message. Is this
a Bug? Are there any work arounds ?
Thanks
Swamy
Hi Swamy,
The bridge does copy all the JMS header fields (except for
the MessageID, Destination and ReplyTo) and user properties when
transferring messages over.
I would suggest that you double check your filter expression and make sure
it does what you want. It would be a good idea to test your filter without the bridge
involved.
If that still does not work, try to use a user property and see if that gets you
anywhere.
If neither of those works, contact BEA support. But I think both approaches should just
work.
Thanks,
Dongbo
Swamy Vasudevan wrote:
> Hello,
> We are using WLS 7.0. We 've set up the WLS Message Bridge to communicate between
> MQ and WLS JMS queues. The MQSeries JNDI objects are created in WLS JNDI using
> a startup class. There are 2 Queues on the MQseries[TO_JMS and FROM_JMS] and 2
> Queues on the WLS JMS[FROM_MQ and TO_MQ]. I put a message on TO_JMS of MQ which
> is transferred to FROM_MQ of WLS JMS using the WLS Message Bridge. After processing
> the message on the WLS side, I put a message on TO_MQ of WLS JMS which is transferred
> to FROM_JMS of MQ. The whole messaging transfer works very well. The problem is
> with the Corelation Id I set when putting the message on TO_JMS. I expected the
> same Correlation Id will be transferred to FROM_MQ. And while sending the message
> back from WLS to MQ, I set this corelation Id to whatever was first set. I do
> this to filter out a specific message. But as the correlation ids are not copied
> by the message bridge, when I filter the message using the correlation Id from
> the FROM_JMS, I get nothing. Without the filter, I can get the message. Is this
> a Bug? Are there any work arounds ?
>
> Thanks
> Swamy
Similar Messages
-
OSB 10.3 JMS queue problem: JMSCorrelationID is null
Hi everybody,
I am new to OSB/ALSB, and need some help regarding JMS message handling. I am trying to put some input data into a JMS queue( say, reqQueue) and to get the response from another JMS queue(say resQueue). My architecture is:
OSB proxy service->OSB business service->JMS queue(reqQueue)->BPEL process(through JMS adapter) ->JMS queue(resQueue)->OSB business service->OSB proxy service.
I have used JMSCorrelationID for response correlation. but my problem is that when I am trying to test the service from proxy service, I am getting the JMSCorrelationId as null in BPEL process as well as in the weblogic server JMS log, and as I am getting the CorrelationId as null, I am unable to correlate the response, so I am not getting any response.
This is urgent, please help me as soon as possible as possible.
Thanks in advance.
JoySovled it..
OSB 10.3 JMS queue problem: JMSCorrelationID is null -
Weblogic jms connection problem
Hi All,
My jms bpel process listening on jms Queue. If I deploy bpel process first time I am not getting any jms connection problem with weblogic , but if redploy I am getting jms conneciton problem. saying
Adapter_start: Jms Adapter started
<2005-12-07 10:19:20,044> <ERROR> <default.collaxa.cube.activation> <JMSAdapter::Inbound> Error whil
e creating managed connection:
<2005-12-07 10:19:20,044> <ERROR> <default.collaxa.cube.activation> <JMSAdapter::Inbound>
ORABPEL-12141
ERRJMS_CONN_FAC_NOT_FOUND.
Unable to instantiate connection factory. JMS adapter was unable to look up the connection factor BP
ELJMS neither through JNDI nor instantiate it as a Java class
Please examine the log file to determine the problem.
at oracle.tip.adapter.jms.JMS.JMSConnectionFactoryFactory.getConnectionFactory(JMSConnection
FactoryFactory.java:156)
at oracle.tip.adapter.jms.JMS.JMSConnectionFactoryFactory.getQueueConnectionFactory(JMSConne
ctionFactoryFactory.java:95)
at oracle.tip.adapter.jms.JMS.JMSConnection.init(JMSConnection.java:143)
at oracle.tip.adapter.jms.JMS.JMSConnection.<init>(JMSConnection.java:102)
at oracle.tip.adapter.jms.JmsManagedConnectionFactory.createConnection(JmsManagedConnectionF
actory.java:355)
at oracle.tip.adapter.jms.JmsManagedConnectionFactory.createDefaultConnection(JmsManagedConn
ectionFactory.java:346)
at oracle.tip.adapter.jms.JmsManagedConnectionFactory.createConnection(JmsManagedConnectionF
actory.java:309)
at oracle.tip.adapter.jms.JmsManagedConnectionFactory.createManagedConnection(JmsManagedConn
ectionFactory.java:99)
at com.evermind.server.connector.ApplicationConnectionManager.createManagedConnection(Applic
ationConnectionManager.java:564)
at oracle.j2ee.connector.ConnectionPoolImpl.createManagedConnection(ConnectionPoolImpl.java:
Work around is I need to restart the BPEL server.
Is there any permanant solution for this, Please suggest.
Thanks,
Srinisrini,
see this thread
JMS Connection
thanks,
-Ng. -
JMS configuration problem log file
Hello,
My purpose is to send xml data from MQSeries to BW using XI. MQSereies is installed in XI server. For thah I am trying to configure JMS adpter for MQSeries in XI. I have successfully deployed the necessary external drivers using SDM. I have configured the sender channel with the following parameters.
Adapter type: JMS
Transport Protocol :WEBsphereMQ(non-JMS)
Message protocol :JMS1.x
Queue connection factory java class:com.ibm.mq.jms.MQQueueConnectionFactory
Queue Java Class: com.ibm.mq.jms.MQQueue
IP address: IP address of XI system.
Port: 1414
Queue manager name : MQ-manager-name_XI-system-name
Channel Name : reciever-channel-name_XI-system-name
JMS queue: postcard
Charecter set ID:
Transport/networkprotocol: TCP/IP
JMS-Compliant : WebsphereMQ(non-JMS)
But when I check it in adapter monitor JMS is shown as red.
<b>In default trace file I am getting the following error</b>
javax.jms.JMSException: MQJMS2005: failed to create MQQueueManager for 'SYSTEMNAME:QUEUEMANAGERNAME_SYSTEMNAME'
at com.ibm.mq.jms.services.ConfigEnvironment.newException(ConfigEnvironment.java:546)
at com.ibm.mq.jms.MQConnection.createQM(MQConnection.java:1450)
at com.ibm.mq.jms.MQConnection.createQMNonXA(MQConnection.java:960)
at com.ibm.mq.jms.MQQueueConnection.<init>(MQQueueConnection.java:159)
at com.ibm.mq.jms.MQQueueConnectionFactory.createQueueConnection(MQQueueConnectionFactory.java:215)
at com.sap.aii.af.service.jms.WorkerJMSReceiver.init(WorkerJMSReceiver.java:283)
at com.sap.aii.af.service.jms.WorkerHandlerImpl.run(WorkerHandlerImpl.java:325)
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:94)
at com.sap.engine.core.thread.impl3.SingleThread.run(SingleThread.java:162)
<b>I also get the following warning</b>
Warning : Catching java.lang.NullPointerException
at com.sap.aii.af.service.jms.WorkerJMSReceiver.start(WorkerJMSReceiver.java:584)
at com.sap.aii.af.service.jms.WorkerHandlerImpl.run(WorkerHandlerImpl.java:335)
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:94)
at com.sap.engine.core.thread.impl3.SingleThread.run(SingleThread.java:162)
Can any one tell what could be the problem.
Regards,
AmithTry the following :
1. Check if by any chance more than 1 Queue manager listeners have port number as 1414. Make sure all run on unique ports.
2. Instead of IP addreess in the adapter config., try using hostname.
3. Also check the website www.mqseries.net for this error -
Hi,
After having deployed SP7 we have problems with the delievery of JMS
Messages in a scenario that uses the Sync/Async Bridge with Adapter
Modules.Our receiver ist xy, that offers an Request/Reply
Service with Queues, our Sender is a synchronous Web Service Client via
SOAP Adapter.
The Problem is, the JMS Messages never get delievered to the Request
Queue, so the client receives a Message expired Exception.
On the channel monitoring we see a confusing message that says that the
message was processed but ignored.
Here s the orginal message in German Language:
"XI-Message d5ed86c0-6fb9-11de-8041-00144f805f2a wurde erfolgreich als
JMS-Message mit ID d5ed86c06fb911de804100144f805f2a beim Empfänger
verarbeitet und aus diesem Grund ignoriert."
We set up a trace in receiver system and we can see the message never appears
there.
In the Audit Log of the failed request messages we see the error
message "Unable to read payload from the message object" with the SAP
Category XIServer and the SAP:Code area="MAPPING", which doesn t makes
sense to us, as the message gets transformed succesfully.
The secanrio worked before deploying the Service Pack and we didn t
change anything about the configuration.
Can you anyone give uns infos?
Thanks in advance,
FrankHm - I am not very familiar with Tibco, but had also problems after SP upgrades on PI 7.0 and MQ series 6.
I can only suggest to contact Tibco and / or SAP for some support on this issue.
Ours had been solved by a OSS note which had been released.
Regads,
Kai -
JMS queue problem integrating with TIBCO
Hi all!
We have several communication channels between XI 3.0 (SP21) and TIBCO via JMS queues. All of them are working fine except one. This problem only happens in development and quality systems with SP21, production has SP17 and doesn't have this error on the same communication channel.
We are getting the following error in communication channel details...
27-03-2008 16:32:21 XI message ID corresponding to the JMS message ID 'ID:EMS-QUALITY.14C46ECF3303EC:61' has the value 'null', with the ID: prefix removed+
27-03-2008 16:32:21 XI message ID corresponding to JMS message with ID 'ID:EMS-QUALITY.14C46ECF3303EC:61' will be created with same value as JMSCorrelationID with value 'null'+
27-03-2008 16:32:20 Error while processing message 'null'; detailed error description: com.sap.aii.adapter.jms.api.channel.filter.MessageFilterException: Error in converting Binary message <?xml version="1.0" encoding="UTF-8"?> <ns0:MT_PedCarga_GE xmlns:ns0="http://pt.galp.is-oil.ec"> <Partner> <ZIDIF>62</ZIDIF> </Partner> <Controle> <Nr_Envio>29183049</Nr_Envio> <Dt_envio>20080229</Dt_envio> <Tipo_Carga>CPAT</Tipo_Carga> <Operador>230</Operador> </Controle> <PedCarga> <FRETE> <Tipo_Registo>N</Tipo_Registo> <Inst_Carreg>ES41</Inst_Carreg> <Data_Execucao>20080228</Data_Execucao> <Resp_Transporte>13</Resp_Transporte> <Transporte> </Transporte> <Transportador>1700</Transportador> <Ref_Externa_head>2008022931859</Ref_Externa_head> <Gera_Docs>X</Gera_Docs> <Imprim_Docs>X</Imprim_Docs> <Imprim_Ordem_Carreg>X</Imprim_Ordem_Carreg> <Confirm_Autom>X</Confirm_Autom> <Operador>230</Operador> </FRETE> <ENTREGA> <Tipo_Destinatario>1</Tipo_Destinatario> <Local_Entrega>14018</Local_Entrega> <Cod_Produto>GOA []</Cod_Produto> <Quantidade>05100</Quantidade> <Ref_Externa_Item>01737307470601</Ref_Externa_Item> <Regime_Fiscal>N</Regime_Fiscal> </ENTREGA> <ENTREGA> <Tipo_Destinatario>1</Tipo_Destinatario> <Local_Entrega>14018</Local_Entrega> <Cod_Produto>GOC []</Cod_Produto> <Quantidade>13300</Quantidade> <Ref_Externa_Item>02737307470602</Ref_Externa_Item> <Regime_Fiscal>R</Regime_Fiscal> </ENTREGA> </PedCarga> </ns0:MT_PedCarga_GE> to XI message for message: null: InvalidParamException: Invalid message id: com.sap.guid.GUIDFormatException+
Any clues?
Regards,
Fernando FigueiredoWe changed the conversation ID from Message ID to Correlation ID.
-
Integration Sap PI - JCAPS through JMS queue problem
Hi to all,
we have to send data through Sap PI 7.1 to an application server Sun Seebeyond JCAPS via JNDI JMS.
We created a Simple Java Test Class that sends data to Jcaps Queues using stcms libraries suggested from Sun.
I already tested this code on Eclipse, and it works fine. (Jcaps receive correctly messages sent from Java Class)
Using JMS Communication Channel on Sap PI with same settings used on Java Class (Queue Connection Factory, Initial Context Factory, URL, Queue Name) and deployed the same stcms libraries on PI,
Jcaps doesn't receive any message. In ABAP Monitor and Communication Channel Monitor we don't check any error: infact in CC Monitor a "Succesfully Connected to Queue" is displayed.
During our tests on Java Class, we tried to change CreateQueueSession istruction ( qsession = qcon.createQueueSession( false, javax.jms.Session.CLIENT_ACKNOWLEDGE ));
we checked that any other setting (changing parameters required from Java Method), different from setting just exposed,
messages are not received from Jcaps and we don't have any error during sending operation (like happens in Sap PI).
So correct setting to send message to JCAPS are:
Transacted = False;
acknowledgeMode = CLIENT_ACKNOWLEDGE;
How we can set this parameter in JMS Communication Channel on Sap PI?
If the CC configuration is correct, where we can find the problem and what kind of issue could be? On client side (Sap PI) or on Server side (JCAPS)?
ThanksIn order to set Transacted = false, uncheck "Transactional JMS Session" in the Processing Tab of JMS adapter. Keep in mind that the message delivery is NOT guaranteed in such a scenario. It is recommended to use transactional sessions in JMS scenarios.
The JMS sessions created by JMS adapter are of type "AUTO_ACKNOWLEDGE".
Regards,
TK
Edited by: Sameej T.K. on Oct 20, 2010 10:47 PM -
exception trace is comming, while running the project in weblogic, in the project iam using jms queue, i configured the jms server and jms module and connection factory but it is showing these exception
[The selected operation process could not be invoked.
An exception occured while invoking the webservice operation. Please see logs for more details.
oracle.sysman.emSDK.webservices.wsdlapi.SoapTestException: InvalidSecurity : error in processing the WS-Security security header]
can any one please, provide the suggestionsi got the solution for my problem, i just need to add owsm policies to my processs
-
JMS Queue problems causing EJB to rollback....
We recently purchased WLS 6.1 and we have been using the product for the last few
months. I am having a problem which I have detailed below. I have provided as much
information as possible. If you need additional information, please let me know.
Server A Config:
Pentium III, 1000Mhz
Windows 2000, SP2
WLS WebLogic Server 6.1 SP2 12/18/2001 11:13:46 #154529
Server B Config:
SunBlade 100
Solaris 5.8
WebLogic Server 6.1 SP2 12/18/2001 11:13:46 #154529
Server A contains a session EJB called GoalManager. This EJB has a method named cancel().
The transactional attribute for all methods supported by this bean is REQUIRED. GoalManager
uses a transactional data source deployed on Server A named "goal". There is nothing
special about this data source aside from the fact that I have enabled two phase
commit for it because a previous error was indicating that this was a required setting
for the pool. A JMS server exists on Server B. A queue named "emailQueue" is set
up as a destination on this JMS server. I also have a MDB on Server B that listens
for messages on this queue. When a message is received, the MDB's onMessage() method
extracts some properties from the message and sends an email to the specified recipient
in the message. I have confirmed that this queue and MDB are working properly because
I ran a small test program from the command prompt which creates a message and sends
it to the queue on Server B. The MDB gets the message and sends the email to the
correct recipient, so I am sure there are no misconfigurations on the server.
The problem is as follows: The cancel() method in the GoalManager EJB on Server A
performs some database work. If no exceptions are raised, the last task in the method
attempts to access the queue on Server B and send a message to the queue. Here is
the code that I am using to access the queue:
QueueConnectionFactory queueFactory = (QueueConnectionFactory)context.lookup( "javax.jms.QueueConnectionFactory");
QueueConnection queueConnection = queueFactory.createQueueConnection();
Queue queue = (Queue)context.lookup( "emailQueue");
QueueSession queueSession = queueConnection.createQueueSession( false, Session.AUTO_ACKNOWLEDGE);
QueueSender queueSender = queueSession.createSender( queue);
The cancel() method executes without error, but when the EJB container on Server
A attempts to commit the transaction at the end of the cancel() method, I am receiving
the following error on Server A's log:
<Error> <EJB> <Exception during commit of transaction Name=[EJB com.frx.emp.go.ejb.session.goal.GoalManagerBean.cancelGoal(com.frx.emp.entity.Employee,com.frx.emp.go.entity.Goal)],
Xid=0:7c2dda32cf39a36e(6911242),
Status=Rolled back. [Reason=javax.transaction.xa.XAException],
numRepliesOwedMe=0,
numRepliesOwedOthers=0,
seconds since begin=2,
seconds left=10,
ServerResourceInfo[weblogic.jdbc.jts.Connection]=(state=rolledback,assigned=server1),
ServerResourceInfo[JMS_EMailServer_NotDurable]=(state=rolledback,assigned=server1),
SCInfo[FRX+server1]=(state=rolledback),
SCInfo[frxnet+wlsvr1]=(state=rolledback),
properties=({weblogic.transaction.name=[EJB com.frx.emp.go.ejb.session.goal.GoalManagerBean.cancelGoal(com.frx.emp.entity.Employee,com.frx.emp.go.entity.Goal)],
weblogic.jdbc=t3://172.16.200.9:9005}),
OwnerTransactionManager=ServerTM[ServerCoordinatorDescriptor=(CoordinatorURL=server1+172.16.200.9:9005+FRX+,
Resources={})],
CoordinatorURL=server1+172.16.200.9:9005+FRX+): javax.transaction.xa.XAException
at weblogic.jms.backend.BEXAResource.prepare(BEXAResource.java:853)
at weblogic.transaction.internal.ServerResourceInfo.prepare(ServerResourceInfo.java:1124)
at weblogic.transaction.internal.ServerResourceInfo.prepare(ServerResourceInfo.java:370)
at weblogic.transaction.internal.ServerSCInfo.startPrepare(ServerSCInfo.java:186)
at weblogic.transaction.internal.ServerTransactionImpl.localPrepare(ServerTransactionImpl.java:1822)
at weblogic.transaction.internal.ServerTransactionImpl.globalPrepare(ServerTransactionImpl.java:1607)
at weblogic.transaction.internal.ServerTransactionImpl.internalCommit(ServerTransactionImpl.java:218)
at weblogic.transaction.internal.ServerTransactionImpl.commit(ServerTransactionImpl.java:190)
at weblogic.ejb20.internal.BaseEJBObject.postInvoke(BaseEJBObject.java:231)
at com.frx.emp.go.ejb.session.goal.GoalManagerBean_e3dvd2_EOImpl.cancelGoal(GoalManagerBean_e3dvd2_EOImpl.java:459)
at com.frx.emp.go.web.handler.UpdateGoalHandler.handleRequest(UpdateGoalHandler.java:55)
at com.frx.emp.web.mvc.HandlerMappedController.service(HandlerMappedController.java:115)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:265)
at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:200)
at weblogic.servlet.internal.WebAppServletContext.invokeServlet(WebAppServletContext.java:2495)
at weblogic.servlet.internal.ServletRequestImpl.execute(ServletRequestImpl.java:2204)
at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:139)
at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:120)
--------------- nested within: ------------------
weblogic.transaction.RollbackException: Could not prepare resource 'JMS_EMailServer_NotDurable
- with nested exception:
[javax.transaction.xa.XAException]
at weblogic.transaction.internal.TransactionImpl.throwRollbackException(TransactionImpl.java:1475)
at weblogic.transaction.internal.ServerTransactionImpl.internalCommit(ServerTransactionImpl.java:263)
at weblogic.transaction.internal.ServerTransactionImpl.commit(ServerTransactionImpl.java:190)
at weblogic.ejb20.internal.BaseEJBObject.postInvoke(BaseEJBObject.java:231)
at com.frx.emp.go.ejb.session.goal.GoalManagerBean_e3dvd2_EOImpl.cancelGoal(GoalManagerBean_e3dvd2_EOImpl.java:459)
at com.frx.emp.go.web.handler.UpdateGoalHandler.handleRequest(UpdateGoalHandler.java:55)
at com.frx.emp.web.mvc.HandlerMappedController.service(HandlerMappedController.java:115)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:265)
at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:200)
at weblogic.servlet.internal.WebAppServletContext.invokeServlet(WebAppServletContext.java:2495)
at weblogic.servlet.internal.ServletRequestImpl.execute(ServletRequestImpl.java:2204)
at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:139)
at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:120)
Just a quick note, I tried to change the following line to specify a "transacted"
JMS session by passing "true" to the statement below. When I tested this, the cancel()
method raised no exceptions, but the MDB on Server B is never invoked and the email
is never sent. Strange.
QueueSession queueSession = queueConnection.createQueueSession( true, Session.AUTO_ACKNOWLEDGE);
If you need more info, let me know. I thank you for your help.
Correct. According to the trace you have it set at 10 seconds, while the default is 30 seconds.
Tom
SAF wrote:
> Thanks for the reply.
>
> Increase the trx time? You mean JTA, right?
>
> I already opened a case with BEA, so I'm waiting to get a response from them.
>
> Thanks again,
>
> Raffi
>
> Tom Barnes <[email protected]> wrote:
> >Hi,
> >
> >I looked at the BEXAResource.java source code which the stack trace points
> >at. It seems that from the
> >JMS server's resource manager's point of view, it never heard of the transaction
> >before, indicating
> >that the transaction may have already rolled back. I think this could
> >happen if the transaction
> >times out before commit() is called, but I'm not sure what is wrong in your
> >case -- as according
> >to the trace you provided, your tx is 2 seconds old and your tx-timout is
> >10 seconds.
> >
> >In any case, it looks like the culprit may be in the transaction code and
> >not the JMS code...
> >
> >I suggest:
> > A) increasing your tx timeout (what the heck give it a try)
> > B) could it somehow be a clock synchronization problem? are multiple
> >servers involved?
> > C) posting to the transaction newsgroup
> > D) contacting customer support
> >
> >Tom
> >
> >SAF wrote:
> >
> >> We recently purchased WLS 6.1 and we have been using the product for the
> >last few
> >> months. I am having a problem which I have detailed below. I have provided
> >as much
> >> information as possible. If you need additional information, please let
> >me know.
> >>
> >> Server A Config:
> >> Pentium III, 1000Mhz
> >> Windows 2000, SP2
> >> WLS WebLogic Server 6.1 SP2 12/18/2001 11:13:46 #154529
> >>
> >> Server B Config:
> >> SunBlade 100
> >> Solaris 5.8
> >> WebLogic Server 6.1 SP2 12/18/2001 11:13:46 #154529
> >>
> >> Server A contains a session EJB called GoalManager. This EJB has a method
> >named cancel().
> >> The transactional attribute for all methods supported by this bean is
> >REQUIRED. GoalManager
> >> uses a transactional data source deployed on Server A named "goal". There
> >is nothing
> >> special about this data source aside from the fact that I have enabled
> >two phase
> >> commit for it because a previous error was indicating that this was a
> >required setting
> >> for the pool. A JMS server exists on Server B. A queue named "emailQueue"
> >is set
> >> up as a destination on this JMS server. I also have a MDB on Server B
> >that listens
> >> for messages on this queue. When a message is received, the MDB's onMessage()
> >method
> >> extracts some properties from the message and sends an email to the specified
> >recipient
> >> in the message. I have confirmed that this queue and MDB are working properly
> >because
> >> I ran a small test program from the command prompt which creates a message
> >and sends
> >> it to the queue on Server B. The MDB gets the message and sends the email
> >to the
> >> correct recipient, so I am sure there are no misconfigurations on the
> >server.
> >>
> >> The problem is as follows: The cancel() method in the GoalManager EJB
> >on Server A
> >> performs some database work. If no exceptions are raised, the last task
> >in the method
> >> attempts to access the queue on Server B and send a message to the queue.
> >Here is
> >> the code that I am using to access the queue:
> >>
> >> QueueConnectionFactory queueFactory = (QueueConnectionFactory)context.lookup(
> >"javax.jms.QueueConnectionFactory");
> >> QueueConnection queueConnection = queueFactory.createQueueConnection();
> >> Queue queue = (Queue)context.lookup( "emailQueue");
> >> QueueSession queueSession = queueConnection.createQueueSession( false,
> >Session.AUTO_ACKNOWLEDGE);
> >> QueueSender queueSender = queueSession.createSender( queue);
> >>
> >> The cancel() method executes without error, but when the EJB container
> >on Server
> >> A attempts to commit the transaction at the end of the cancel() method,
> >I am receiving
> >> the following error on Server A's log:
> >>
> >> <Error> <EJB> <Exception during commit of transaction Name=[EJB com.frx.emp.go.ejb.session.goal.GoalManagerBean.cancelGoal(com.frx.emp.entity.Employee,com.frx.emp.go.entity.Goal)],
> >> Xid=0:7c2dda32cf39a36e(6911242),
> >> Status=Rolled back. [Reason=javax.transaction.xa.XAException],
> >> numRepliesOwedMe=0,
> >> numRepliesOwedOthers=0,
> >> seconds since begin=2,
> >> seconds left=10,
> >> ServerResourceInfo[weblogic.jdbc.jts.Connection]=(state=rolledback,assigned=server1),
> >> ServerResourceInfo[JMS_EMailServer_NotDurable]=(state=rolledback,assigned=server1),
> >> SCInfo[FRX+server1]=(state=rolledback),
> >> SCInfo[frxnet+wlsvr1]=(state=rolledback),
> >> properties=({weblogic.transaction.name=[EJB com.frx.emp.go.ejb.session.goal.GoalManagerBean.cancelGoal(com.frx.emp.entity.Employee,com.frx.emp.go.entity.Goal)],
> >>
> >> weblogic.jdbc=t3://172.16.200.9:9005}),
> >> OwnerTransactionManager=ServerTM[ServerCoordinatorDescriptor=(CoordinatorURL=server1+172.16.200.9:9005+FRX+,
> >> Resources={})],
> >> CoordinatorURL=server1+172.16.200.9:9005+FRX+): javax.transaction.xa.XAException
> >> at weblogic.jms.backend.BEXAResource.prepare(BEXAResource.java:853)
> >> at weblogic.transaction.internal.ServerResourceInfo.prepare(ServerResourceInfo.java:1124)
> >> at weblogic.transaction.internal.ServerResourceInfo.prepare(ServerResourceInfo.java:370)
> >> at weblogic.transaction.internal.ServerSCInfo.startPrepare(ServerSCInfo.java:186)
> >> at weblogic.transaction.internal.ServerTransactionImpl.localPrepare(ServerTransactionImpl.java:1822)
> >> at weblogic.transaction.internal.ServerTransactionImpl.globalPrepare(ServerTransactionImpl.java:1607)
> >> at weblogic.transaction.internal.ServerTransactionImpl.internalCommit(ServerTransactionImpl.java:218)
> >> at weblogic.transaction.internal.ServerTransactionImpl.commit(ServerTransactionImpl.java:190)
> >> at weblogic.ejb20.internal.BaseEJBObject.postInvoke(BaseEJBObject.java:231)
> >> at com.frx.emp.go.ejb.session.goal.GoalManagerBean_e3dvd2_EOImpl.cancelGoal(GoalManagerBean_e3dvd2_EOImpl.java:459)
> >> at com.frx.emp.go.web.handler.UpdateGoalHandler.handleRequest(UpdateGoalHandler.java:55)
> >> at com.frx.emp.web.mvc.HandlerMappedController.service(HandlerMappedController.java:115)
> >> at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
> >> at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:265)
> >> at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:200)
> >> at weblogic.servlet.internal.WebAppServletContext.invokeServlet(WebAppServletContext.java:2495)
> >> at weblogic.servlet.internal.ServletRequestImpl.execute(ServletRequestImpl.java:2204)
> >> at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:139)
> >> at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:120)
> >> --------------- nested within: ------------------
> >> weblogic.transaction.RollbackException: Could not prepare resource 'JMS_EMailServer_NotDurable
> >> - with nested exception:
> >> [javax.transaction.xa.XAException]
> >> at weblogic.transaction.internal.TransactionImpl.throwRollbackException(TransactionImpl.java:1475)
> >> at weblogic.transaction.internal.ServerTransactionImpl.internalCommit(ServerTransactionImpl.java:263)
> >> at weblogic.transaction.internal.ServerTransactionImpl.commit(ServerTransactionImpl.java:190)
> >> at weblogic.ejb20.internal.BaseEJBObject.postInvoke(BaseEJBObject.java:231)
> >> at com.frx.emp.go.ejb.session.goal.GoalManagerBean_e3dvd2_EOImpl.cancelGoal(GoalManagerBean_e3dvd2_EOImpl.java:459)
> >> at com.frx.emp.go.web.handler.UpdateGoalHandler.handleRequest(UpdateGoalHandler.java:55)
> >> at com.frx.emp.web.mvc.HandlerMappedController.service(HandlerMappedController.java:115)
> >> at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
> >> at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:265)
> >> at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:200)
> >> at weblogic.servlet.internal.WebAppServletContext.invokeServlet(WebAppServletContext.java:2495)
> >> at weblogic.servlet.internal.ServletRequestImpl.execute(ServletRequestImpl.java:2204)
> >> at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:139)
> >> at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:120)
> >>
> >> Just a quick note, I tried to change the following line to specify a "transacted"
> >> JMS session by passing "true" to the statement below. When I tested this,
> >the cancel()
> >> method raised no exceptions, but the MDB on Server B is never invoked
> >and the email
> >> is never sent. Strange.
> >>
> >> QueueSession queueSession = queueConnection.createQueueSession( true,
> >Session.AUTO_ACKNOWLEDGE);
> >>
> >> If you need more info, let me know. I thank you for your help.
> >
-
Hi,
On one of our production deployments using Weblogic 10.3.0, we are getting the following exception when trying to connect to a JMS queue on one of the managed server. We are able to access the queues on other managed servers(there are 4 managed servers in all).
javax.naming.NameNotFoundException: Unable to resolve 'weblogic.messaging.dispatcher.S:+<ManagedServerName>+'. Resolved 'weblogic.messaging.dispatcher'; remaining name 'S+:<ManagedServerName>+'
This error message starts coming up after the server has been up for few days. Once this exception comes up, we cannot fetch messages from the JMS queues on the affected managed server. We have a java process that connects to the managed servers and picks up the JMS messages and sends it to external systems. The problem occurs when connecting from this process. I tried to find the queue depth by writing a simple java program that uses a JMS queue browser. The program fails too.
I checked the JNDI tree to find if a binding exists with 'weblogic.messaging.dispatcher.S:+<ManagedServerName>+'. To my surprise, the binding exists. Just wondering what could possibly cause this issue.
My JMS settings are like follows:
I have four JMS servers, each targeted to the corresponding managed server.
I have distributed JMS queues that are targetted onto the cluster.
I have normal JMS queues that are targeted onto the corresponding managed server.
The connection factory is targeted onto the cluster.
The problem happens with my normal JMS queues on one of the managed servers.
Please let me know if I am going wrong with my setup. Note that this issue happens after the server is running for few days. Upon restarting the affected server, I am able to connect to the JMS queues and pick-up messages.
regards,
Anand
Edited by: Anand1982 on Jun 5, 2011 10:51 PMI can think of two potential reasons why this error might come up. The first is that your WebLogic Cluster might be failing so that JNDI name-space replication between cluster servers has at least partially stopped working. The second is that you're working with multiple domains but there are duplicated names configured between domains. For the former, look for Warnings in your logs and also consult the general documentation for cluster troubleshooting information. As for the latter, consult the best practices section of the JMS configuration guide.
Regards,
Tom -
Mule, Weblogic and MQ JMS : deadlock problem
Dear Oracle community,
We are hosting our Mule ESB (3.1) application on a Weblogic 10.3 (11g) server and are using IBM Websphere MQ's JMS solution (with libraries version 7.0.1.7).
The problem we are facing is that JMS connections are created by one of Weblogic's worker (thread) and the close() method for those connections are not necessarily called by the same thread.
This is bad because from what I know this behavior is undefined from JMS specification
(see http://docs.oracle.com/cd/E15051_01/wls/docs103/jms/design_best_practices.html#wp1061413 ) and it is a blocker issue in our case because this lead to a deadlock.
Do someone has any idea how to enforce the fact that the same thread do create and close the connection through Weblogic and/or Mule configuration (without re-implementing the connector) ?
Thanks in advance for your help,
Best regards,
Y.
PS : I've already posted this question on Mule ESB's forum : http://forum.mulesoft.org/mulesoft/topics/mule_weblogic_and_mq_jms_deadlock_problem
Edited by: user7428803 on May 14, 2012 2:26 PMI hope you found a solution by now, but as an FYI:
* The JMS specification specifically requires that JMS providers support the ability to call connection.close() and session.close() from an arbitrary thread even when another thread is making calls on these objects. It furthermore goes into some detail about the expected behavior of these calls. The best practices link you cited alludes to this: "The JMS Specification states that multi-threading a session, producer, consumer, or message method results in undefined behavior +except when calling close().+"
* Depending on your use case, you may not need to use Mule to integrate MQ with WebLogic. WebLogic supports a variety of options for integrating MQ directly without the use of third party tooling. See http://download.oracle.com/docs/cd/E17904_01/web.1111/e13727/interop.htm .
Tom -
Hi,
My problem is so easy, that i'm sure i'm making some simple mistake.
I have one message in my JMS queue, and I can see it using the WL 9.2 console:
ID,CorrId,Time Stamp,State String
ID:P<315390.1173718045000.0>,,Mon Mar 12 17:47:25 CET 2007,visible
After applying a selector to the console
JMSMessageId = 'ID:P<315390.1173718045000.0>'
I don't see the message above !!
I'm quite sure that the selector is ok, isn't it ??
At first I used it in my application by the result was the same (the message was not selected).
What can be the reason ?
The other problem is that after putting incorrect selector I got the error in the console:
Error creating message cursor for CISRT JMS Module!Q_DATA_IN_E
and I cannot do anything about it (I cannot enter the 'Show Messages' screen again without server restart).
I use Weblogic 9.2 MP1 on Windows.
Thanks in advance for help.
Marcin Stanski.Hi Marcin,
Thanks for posting. I'll try see if its possible to fix things so other customers don't run into the same problem. Its possible that the interoperability consequences weren't considered when "Id" was fixed to be "ID" in 9.x.
I'll file internal requests to have 10.0 and 9.x fixed so that they support both the nominally non-standard "Id" in addition to the standard "ID". If you want to track the requests, you can contact customer support and mention that "Tom Barnes has filed an Essex CR for the problem."
Tom Barnes
WebLogic JMS Dev Team -
Hi,
I have Tomcat 4.0.3 and a J2EE 1.3.1 reference implementation server.
From the tomcat server, I am trying to publish into a topic that is on a remote machine. However I get the exception
javax.naming.NameNotFoundException : Name TopicConnectionFactory is not bound in this context.
Since this is running from the tomcat server, I cannot give the java -D option for starting the client.
Also, I have the orb.properties modified to the required machine name.javax.naming.NameNotFoundException : NameTopicConnectionFactory is not bound in this context.As the exception says, this is not a JMS problem but rather a JNDI issue. Are you sure that you have bound the name "TopicConnectionFactory" to an object in the context that you are doing the lookup in.
Steve Trythall -
Yes you are right. I stand corrected. Perhaps you should open a case with Customer Support.
"J.Jan" <[email protected]> wrote in message news:[email protected]..
According to the documentation, session pools can be used for both queues and topics. The getServerSessionPool() method takes either a QueueConnection or a TopicConnection object. Unless this is actually not the case. Thanks.
WebLogic Server 5.1.0sp10 API Reference
Jane Sampson wrote:
Hi,
Server Session Pools are for use with Topics.
Jane Sampson
Developer Relations Engineer
BEA Support
"J.Jan" <[email protected]> wrote in message
news:[email protected]..
> My JMS clients are using QueueRequester objects to send synchrous
> requests to the server with replies coming back from the server. The
> server is using session pool to handle concurrent requests. My problem
> is that where multiple clients are sending requests continuously, if one
> client terminates, all others would hang, does anyone know why this
> would happen?
>
> My environment is weblogic 5.1 with sp11, JDK 1.3 on Solaris 2.6.
>
> Thanks.
>
[att1.html]
-
Hi,
I am trying to develope a BPEL process which publish jms topic to oc4j jms jms/demoTopic.there I am getting error over there. Below is the error msg
file:/C:/OraBPELPM_1/integration/orabpel/domains/default/tmp/.bpel_JMSTest1_1.0.jar/JMSSrv.wsdl [ Produce_Message_ptt::Produce_Message(JMSTest1ProcessRequest) ] - WSIF JCA Execute of operation 'Produce_Message' failed due to: ERRJMS_MSGPROD_CONSTR_ERR. Unable to construct MessageProducer. ; nested exception is: ORABPEL-12164 ERRJMS_MSGPROD_CONSTR_ERR. Unable to construct MessageProducer. Please examine the log file to determine the problem.
below is the log
com.oracle.bpel.client.delivery.ReceiveTimeOutException: Waiting for response has timed out. The conversation id is 2e6d902e744f9cf2:2f48d2:108e104ba20:-7ffa. Please check the process instance for detail.
at com.collaxa.cube.ejb.impl.DeliveryBean.request(DeliveryBean.java:108)
at IDeliveryBean_StatelessSessionBeanWrapper22.request(IDeliveryBean_StatelessSessionBeanWrapper22.java:288)
at com.oracle.bpel.client.delivery.DeliveryService.request(DeliveryService.java:101)
at com.oracle.bpel.client.delivery.DeliveryService.request(DeliveryService.java:65)
at ngDoInitiate.jspService(_ngDoInitiate.java:255)
at com.orionserver.http.OrionHttpJspPage.service(OrionHttpJspPage.java:56)
at oracle.jsp.runtimev2.JspPageTable.service(JspPageTable.java:347)
at oracle.jsp.runtimev2.JspServlet.internalService(JspServlet.java:509)
at oracle.jsp.runtimev2.JspServlet.service(JspServlet.java:413)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at com.evermind.server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:810)
at com.evermind.server.http.ServletRequestDispatcher.include(ServletRequestDispatcher.java:121)
at com.evermind.server.http.EvermindPageContext.include(EvermindPageContext.java:267)
at displayProcess.jspService(_displayProcess.java:658)
at com.orionserver.http.OrionHttpJspPage.service(OrionHttpJspPage.java:56)
at oracle.jsp.runtimev2.JspPageTable.service(JspPageTable.java:347)
at oracle.jsp.runtimev2.JspServlet.internalService(JspServlet.java:509)
at oracle.jsp.runtimev2.JspServlet.service(JspServlet.java:413)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at com.evermind.server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:810)
at com.evermind.server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:322)
at com.evermind.server.http.ServletRequestDispatcher.forward(ServletRequestDispatcher.java:220)
at com.collaxa.cube.fe.DomainFilter.doFilter(DomainFilter.java:138)
at com.evermind.server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:649)
at com.evermind.server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:322)
at com.evermind.server.http.HttpRequestHandler.processRequest(HttpRequestHandler.java:790)
at com.evermind.server.http.HttpRequestHandler.run(HttpRequestHandler.java:270)
at com.evermind.server.http.HttpRequestHandler.run(HttpRequestHandler.java:112)
at com.evermind.util.ReleasableResourcePooledExecutor$MyWorker.run(ReleasableResourcePooledExecutor.java:186)
at java.lang.Thread.run(Thread.java:534)
Caused by: com.oracle.bpel.client.delivery.ReceiveTimeOutException: Waiting for response has timed out. The conversation id is 2e6d902e744f9cf2:2f48d2:108e104ba20:-7ffa. Please check the process instance for detail.
at com.collaxa.cube.engine.delivery.DeliveryHandler.initialRequestAnyType(DeliveryHandler.java:523)
at com.collaxa.cube.engine.delivery.DeliveryHandler.initialRequest(DeliveryHandler.java:425)
at com.collaxa.cube.engine.delivery.DeliveryHandler.request(DeliveryHandler.java:132)
at com.collaxa.cube.ejb.impl.DeliveryBean.request(DeliveryBean.java:93)
... 29 more
oc4j-ra.xml entry is below
<connector-factory location="eis/Jms/JmsPublishAdapter" connector-name="Jms Adapter">
<config-property name="connectionFactoryLocation" value="jms/TopicConnectionFactory"/>
<config-property name="factoryProperties" value=""/>
<config-property name="acknowledgeMode" value="AUTO_ACKNOWLEDGE"/>
<config-property name="isTopic" value="true"/>
<config-property name="isTransacted" value="false"/>
<config-property name="username" value="admin"/>
<config-property name="password" value="welcome"/>
</connector-factory>
your help to find a soln will be higly appreciated.Hi,
Below is the log you have requested for
<2006-01-20 10:01:09,673> <DEBUG> <default.collaxa.cube.ws> <WSDLManager::getWSDL> registered wsdl at
http://TCS052539:9700/orabpel/default/JMSTest1/1.0/_JMSTest1.wsdl
<2006-01-20 10:01:09,673> <DEBUG> <default.collaxa.cube.ws> <WSDLManager::getWSDL> got wsdl at:
http://TCS052539:9700/orabpel/default/JMSTest1/1.0/_JMSTest1.wsdl
<2006-01-20 10:01:09,773> <DEBUG> <default.collaxa.cube.ws> <WSDLManager::getWSDL> registered wsdl at
C:\OraBPELPM_1\integration\orabpel\domains\default\tmp\.bpel_JMSTest1_1.0.jar\JMSTest1.wsdl
<2006-01-20 10:01:09,773> <DEBUG> <default.collaxa.cube.ws> <WSDLManager::getWSDL> got wsdl at:
C:\OraBPELPM_1\integration\orabpel\domains\default\tmp\.bpel_JMSTest1_1.0.jar\JMSTest1.wsdl
<2006-01-20 10:01:09,843> <DEBUG> <default.collaxa.cube.ws> <WSDLManager::getWSDL> registered wsdl at
C:\OraBPELPM_1\integration\orabpel\domains\default\tmp\.bpel_JMSTest1_1.0.jar\JMSSrv.wsdl
<2006-01-20 10:01:09,843> <DEBUG> <default.collaxa.cube.ws> <WSDLManager::getWSDL> got wsdl at:
C:\OraBPELPM_1\integration\orabpel\domains\default\tmp\.bpel_JMSTest1_1.0.jar\JMSSrv.wsdl
<2006-01-20 10:01:15,491> <DEBUG> <default.collaxa.cube.ws> <WSInvocationManager::invoke> operation: Produce_Message,
partnerLink: <partnerLink name="JMSPartner"
partnerLinkType="{http://xmlns.oracle.com/pcbpel/adapter/jms/JMSSrv/}Produce_Message_plt">
<myRole name="null">
<ServiceName>null</ServiceName>
<PortType>null</PortType>
<Address>null</Address>
</myRole>
<partnerRole
name="Produce_Message_role">
<ServiceName>null</ServiceName>
<PortType>{http://xmlns.oracle.com/pcbpel/adapter/jms/JMSSrv/}Produce_Message_ptt</PortType>
<Address>null</Address>
</partnerRole>
<conversationId>bpel://localhost/default/JMSTest1~1.0/801-BpInv0-BpSeq0.3-3</conversationId>
<properties>{}</properties>
</partnerLink>
<2006-01-20 10:01:15,491> <DEBUG> <default.collaxa.cube.ws> <WSInvocationManager::invoke> def is
file:/C:/OraBPELPM_1/integration/orabpel/domains/default/tmp/.bpel_JMSTest1_1.0.jar/JMSSrv.wsdl
<2006-01-20 10:01:15,501> <DEBUG> <default.collaxa.cube.ws> <WSIFInvocationHandler::invoke> opName=Produce_Message,
parnterLink=<partnerLink name="JMSPartner"
partnerLinkType="{http://xmlns.oracle.com/pcbpel/adapter/jms/JMSSrv/}Produce_Message_plt">
<myRole name="null">
<ServiceName>null</ServiceName>
<PortType>null</PortType>
<Address>null</Address>
</myRole>
<partnerRole
name="Produce_Message_role">
<ServiceName>{http://xmlns.oracle.com/pcbpel/adapter/jms/JMSSrv/}JMSSrv</ServiceName>
<PortType>{http://xmlns.oracle.com/pcbpel/adapter/jms/JMSSrv/}Produce_Message_ptt</PortType>
<Address>null</Address>
</partnerRole>
<conversationId>bpel://localhost/default/JMSTest1~1.0/801-BpInv0-BpSeq0.3-3</conversationId>
<properties>{}</properties>
</partnerLink>
<2006-01-20 10:01:15,662> <INFO> <default.collaxa.cube.ws> <AdapterFramework::Outbound>
file:/C:/OraBPELPM_1/integration/orabpel/domains/default/tmp/.bpel_JMSTest1_1.0.jar/JMSSrv.wsdl [
Produce_Message_ptt::Produce_Message(JMSTest1ProcessRequest) ] - Using JCA Connection Pool - max size = <unbounded>
<2006-01-20 10:01:15,672> <DEBUG> <default.collaxa.cube.ws> <AdapterFramework::Outbound>
file:/C:/OraBPELPM_1/integration/orabpel/domains/default/tmp/.bpel_JMSTest1_1.0.jar/JMSSrv.wsdl [
Produce_Message_ptt::Produce_Message(JMSTest1ProcessRequest) ] - Looking up Resource Adapter JDNI location
'eis/Jms/JmsPublishAdapter'
<2006-01-20 10:01:15,672> <DEBUG> <default.collaxa.cube.ws> <JMSAdapter::Outbound>
JMSConnectionFactoryFactory_getConnectionFactory: looking up 'jms/TopicConnectionFactory'
<2006-01-20 10:01:15,982> <INFO> <default.collaxa.cube.ws> <JMSAdapter::Outbound> Created new managed connection for JMS user
admin
<2006-01-20 10:01:15,982> <DEBUG> <default.collaxa.cube.ws> <JMSAdapter::Outbound> JmsSpiLocalTransactionImpl_<init>: Not
transacted
<2006-01-20 10:01:16,012> <DEBUG> <default.collaxa.cube.ws> <AdapterFramework::Outbound> Instantiating outbound JCA
interactionSpec oracle.tip.adapter.jms.outbound.JmsProduceInteractionSpec
<2006-01-20 10:01:16,012> <DEBUG> <default.collaxa.cube.ws> <AdapterFramework::Outbound> Populating outbound JCA
interactionSpec oracle.tip.adapter.jms.outbound.JmsProduceInteractionSpec with properties: {OpaqueSchema=false, TimeToLive=0,
DeliveryMode=Non-Persistent, PayloadType=TextMessage, DestinationName=jms/demoQueue}
<2006-01-20 10:01:16,082> <WARN> <default.collaxa.cube.ws> <AdapterFramework::Outbound>
file:/C:/OraBPELPM_1/integration/orabpel/domains/default/tmp/.bpel_JMSTest1_1.0.jar/JMSSrv.wsdl [
Produce_Message_ptt::Produce_Message(JMSTest1ProcessRequest) ] - The jca:header element
oracle.tip.adapter.fw.wsif.jca.JCAHeader@27de24<jca:header message=null:OutboundHeader_msgoutboundHeader/> does not match the
outbound headers provided in {}
<2006-01-20 10:01:16,142> <DEBUG> <default.collaxa.cube.ws> <JMSAdapter::Outbound> JmsCciLocalTransactionImpl_<init>: Not
transacted
<2006-01-20 10:01:16,142> <DEBUG> <default.collaxa.cube.ws> <AdapterFramework::Outbound>
file:/C:/OraBPELPM_1/integration/orabpel/domains/default/tmp/.bpel_JMSTest1_1.0.jar/JMSSrv.wsdl [
Produce_Message_ptt::Produce_Message(JMSTest1ProcessRequest) ] - Starting JCA LocalTransaction
<2006-01-20 10:01:16,142> <DEBUG> <default.collaxa.cube.ws> <AdapterFramework::Outbound>
file:/C:/OraBPELPM_1/integration/orabpel/domains/default/tmp/.bpel_JMSTest1_1.0.jar/JMSSrv.wsdl [
Produce_Message_ptt::Produce_Message(JMSTest1ProcessRequest) ] - Invoking JCA outbound Interaction
<2006-01-20 10:01:16,152> <INFO> <default.collaxa.cube.ws> <JMSAdapter::Outbound> JMSMessageProducer_ctor: Constructed
MessageProducer for destination jms/demoQueue (payload = 1)
<2006-01-20 10:01:16,152> <INFO> <default.collaxa.cube.ws> <JMSAdapter::Outbound> JMSMessageProducer_init: Creating
MessageProducer for destination jms/demoQueue (payload = 1)
<2006-01-20 10:01:16,152> <ERROR> <default.collaxa.cube.ws> <JMSAdapter::Outbound> Nested Exception
<2006-01-20 10:01:16,152> <ERROR> <default.collaxa.cube.ws> <JMSAdapter::Outbound>
ORABPEL-12143
ERRJMS_DEST_NOT_TOPIC.
Destination "jms/demoQueue" is not a topic.
Please examine the log file to determine the problem.
at oracle.tip.adapter.jms.JMS.JMSDestination.getTopic(JMSDestination.java:99)
at oracle.tip.adapter.jms.JMS.JMSConnection.createProducer(JMSConnection.java:344)
at oracle.tip.adapter.jms.JMS.JMSConnection.createProducer(JMSConnection.java:328)
at oracle.tip.adapter.jms.JMS.JMSMessageProducer.createProducer(JMSMessageProducer.java:157)
at oracle.tip.adapter.jms.JMS.JMSMessageProducer.init(JMSMessageProducer.java:126)
at oracle.tip.adapter.jms.outbound.JmsProducer.init(JmsProducer.java:94)
at oracle.tip.adapter.jms.outbound.JmsProducerManager.getProducer(JmsProducerManager.java:64)
at oracle.tip.adapter.jms.JmsInteraction.executeProduce(JmsInteraction.java:178)
at oracle.tip.adapter.jms.JmsInteraction.execute(JmsInteraction.java:146)
at oracle.tip.adapter.fw.wsif.jca.WSIFOperation_JCA.executeRequestResponseOperation(WSIFOperation_JCA.java:463)
at oracle.tip.adapter.fw.wsif.jca.WSIFOperation_JCA.executeInputOnlyOperation(WSIFOperation_JCA.java:653)
at com.collaxa.cube.ws.WSIFInvocationHandler.invoke(WSIFInvocationHandler.java:439)
at com.collaxa.cube.ws.WSInvocationManager.invoke2(WSInvocationManager.java:310)
at com.collaxa.cube.ws.WSInvocationManager.invoke(WSInvocationManager.java:184)
at com.collaxa.cube.engine.ext.wmp.BPELInvokeWMP.__invoke(BPELInvokeWMP.java:601)
at com.collaxa.cube.engine.ext.wmp.BPELInvokeWMP.__executeStatements(BPELInvokeWMP.java:316)
at com.collaxa.cube.engine.ext.wmp.BPELActivityWMP.perform(BPELActivityWMP.java:179)
at com.collaxa.cube.engine.CubeEngine.performActivity(CubeEngine.java:3396)
at com.collaxa.cube.engine.CubeEngine.handleWorkItem(CubeEngine.java:1905)
at com.collaxa.cube.engine.dispatch.message.instance.PerformMessageHandler.handleLocal(PerformMessageHandler.java:75)
at com.collaxa.cube.engine.dispatch.DispatchHelper.handleLocalMessage(DispatchHelper.java:100)
at com.collaxa.cube.engine.dispatch.DispatchHelper.sendMemory(DispatchHelper.java:185)
at com.collaxa.cube.engine.CubeEngine.endRequest(CubeEngine.java:5408)
at com.collaxa.cube.engine.CubeEngine.createAndInvoke(CubeEngine.java:1300)
at com.collaxa.cube.engine.ejb.impl.CubeEngineBean.createAndInvoke(CubeEngineBean.java:117)
at com.collaxa.cube.engine.ejb.impl.CubeEngineBean.syncCreateAndInvoke(CubeEngineBean.java:146)
at
ICubeEngineLocalBean_StatelessSessionBeanWrapper0.syncCreateAndInvoke(ICubeEngineLocalBean_StatelessSessionBeanWrapper0.java:
483)
at com.collaxa.cube.engine.delivery.DeliveryHandler.initialRequestAnyType(DeliveryHandler.java:492)
at com.collaxa.cube.engine.delivery.DeliveryHandler.initialRequest(DeliveryHandler.java:425)
at com.collaxa.cube.engine.delivery.DeliveryHandler.request(DeliveryHandler.java:132)
at com.collaxa.cube.ejb.impl.DeliveryBean.request(DeliveryBean.java:93)
at IDeliveryBean_StatelessSessionBeanWrapper22.request(IDeliveryBean_StatelessSessionBeanWrapper22.java:288)
at com.oracle.bpel.client.delivery.DeliveryService.request(DeliveryService.java:101)
at com.oracle.bpel.client.delivery.DeliveryService.request(DeliveryService.java:65)
at ngDoInitiate.jspService(_ngDoInitiate.java:255)
at com.orionserver.http.OrionHttpJspPage.service(OrionHttpJspPage.java:56)
at oracle.jsp.runtimev2.JspPageTable.service(JspPageTable.java:347)
at oracle.jsp.runtimev2.JspServlet.internalService(JspServlet.java:509)
at oracle.jsp.runtimev2.JspServlet.service(JspServlet.java:413)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at com.evermind.server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:810)
at com.evermind.server.http.ServletRequestDispatcher.include(ServletRequestDispatcher.java:121)
at com.evermind.server.http.EvermindPageContext.include(EvermindPageContext.java:267)
at displayProcess.jspService(_displayProcess.java:658)
at com.orionserver.http.OrionHttpJspPage.service(OrionHttpJspPage.java:56)
at oracle.jsp.runtimev2.JspPageTable.service(JspPageTable.java:347)
at oracle.jsp.runtimev2.JspServlet.internalService(JspServlet.java:509)
at oracle.jsp.runtimev2.JspServlet.service(JspServlet.java:413)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at com.evermind.server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:810)
at com.evermind.server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:322)
at com.evermind.server.http.ServletRequestDispatcher.forward(ServletRequestDispatcher.java:220)
at com.collaxa.cube.fe.DomainFilter.doFilter(DomainFilter.java:138)
at com.evermind.server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:649)
at com.evermind.server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:322)
at com.evermind.server.http.HttpRequestHandler.processRequest(HttpRequestHandler.java:790)
at com.evermind.server.http.HttpRequestHandler.run(HttpRequestHandler.java:270)
at com.evermind.server.http.HttpRequestHandler.run(HttpRequestHandler.java:112)
at com.evermind.util.ReleasableResourcePooledExecutor$MyWorker.run(ReleasableResourcePooledExecutor.java:186)
at java.lang.Thread.run(Thread.java:534)
<2006-01-20 10:01:16,162> <ERROR> <default.collaxa.cube.ws> <AdapterFramework::Outbound>
file:/C:/OraBPELPM_1/integration/orabpel/domains/default/tmp/.bpel_JMSTest1_1.0.jar/JMSSrv.wsdl [
Produce_Message_ptt::Produce_Message(JMSTest1ProcessRequest) ] - Could not invoke operation 'Produce_Message' against the
'JMSAdapter' due to:
ORABPEL-12164
ERRJMS_MSGPROD_CONSTR_ERR.
Unable to construct MessageProducer.
Please examine the log
file to determine the problem.
at oracle.tip.adapter.jms.JMS.JMSMessageProducer.init(JMSMessageProducer.java:132)
at oracle.tip.adapter.jms.outbound.JmsProducer.init(JmsProducer.java:94)
at oracle.tip.adapter.jms.outbound.JmsProducerManager.getProducer(JmsProducerManager.java:64)
at oracle.tip.adapter.jms.JmsInteraction.executeProduce(JmsInteraction.java:178)
at oracle.tip.adapter.jms.JmsInteraction.execute(JmsInteraction.java:146)
at oracle.tip.adapter.fw.wsif.jca.WSIFOperation_JCA.executeRequestResponseOperation(WSIFOperation_JCA.java:463)
at oracle.tip.adapter.fw.wsif.jca.WSIFOperation_JCA.executeInputOnlyOperation(WSIFOperation_JCA.java:653)
at com.collaxa.cube.ws.WSIFInvocationHandler.invoke(WSIFInvocationHandler.java:439)
at com.collaxa.cube.ws.WSInvocationManager.invoke2(WSInvocationManager.java:310)
at com.collaxa.cube.ws.WSInvocationManager.invoke(WSInvocationManager.java:184)
at com.collaxa.cube.engine.ext.wmp.BPELInvokeWMP.__invoke(BPELInvokeWMP.java:601)
at com.collaxa.cube.engine.ext.wmp.BPELInvokeWMP.__executeStatements(BPELInvokeWMP.java:316)
at com.collaxa.cube.engine.ext.wmp.BPELActivityWMP.perform(BPELActivityWMP.java:179)
at com.collaxa.cube.engine.CubeEngine.performActivity(CubeEngine.java:3396)
at com.collaxa.cube.engine.CubeEngine.handleWorkItem(CubeEngine.java:1905)
at com.collaxa.cube.engine.dispatch.message.instance.PerformMessageHandler.handleLocal(PerformMessageHandler.java:75)
at com.collaxa.cube.engine.dispatch.DispatchHelper.handleLocalMessage(DispatchHelper.java:100)
at com.collaxa.cube.engine.dispatch.DispatchHelper.sendMemory(DispatchHelper.java:185)
at com.collaxa.cube.engine.CubeEngine.endRequest(CubeEngine.java:5408)
at com.collaxa.cube.engine.CubeEngine.createAndInvoke(CubeEngine.java:1300)
at com.collaxa.cube.engine.ejb.impl.CubeEngineBean.createAndInvoke(CubeEngineBean.java:117)
at com.collaxa.cube.engine.ejb.impl.CubeEngineBean.syncCreateAndInvoke(CubeEngineBean.java:146)
at
ICubeEngineLocalBean_StatelessSessionBeanWrapper0.syncCreateAndInvoke(ICubeEngineLocalBean_StatelessSessionBeanWrapper0.java:
483)
at com.collaxa.cube.engine.delivery.DeliveryHandler.initialRequestAnyType(DeliveryHandler.java:492)
at com.collaxa.cube.engine.delivery.DeliveryHandler.initialRequest(DeliveryHandler.java:425)
at com.collaxa.cube.engine.delivery.DeliveryHandler.request(DeliveryHandler.java:132)
at com.collaxa.cube.ejb.impl.DeliveryBean.request(DeliveryBean.java:93)
at IDeliveryBean_StatelessSessionBeanWrapper22.request(IDeliveryBean_StatelessSessionBeanWrapper22.java:288)
at com.oracle.bpel.client.delivery.DeliveryService.request(DeliveryService.java:101)
at com.oracle.bpel.client.delivery.DeliveryService.request(DeliveryService.java:65)
at ngDoInitiate.jspService(_ngDoInitiate.java:255)
at com.orionserver.http.OrionHttpJspPage.service(OrionHttpJspPage.java:56)
at oracle.jsp.runtimev2.JspPageTable.service(JspPageTable.java:347)
at oracle.jsp.runtimev2.JspServlet.internalService(JspServlet.java:509)
at oracle.jsp.runtimev2.JspServlet.service(JspServlet.java:413)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at com.evermind.server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:810)
at com.evermind.server.http.ServletRequestDispatcher.include(ServletRequestDispatcher.java:121)
at com.evermind.server.http.EvermindPageContext.include(EvermindPageContext.java:267)
at displayProcess.jspService(_displayProcess.java:658)
at com.orionserver.http.OrionHttpJspPage.service(OrionHttpJspPage.java:56)
at oracle.jsp.runtimev2.JspPageTable.service(JspPageTable.java:347)
at oracle.jsp.runtimev2.JspServlet.internalService(JspServlet.java:509)
at oracle.jsp.runtimev2.JspServlet.service(JspServlet.java:413)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at com.evermind.server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:810)
at com.evermind.server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:322)
at com.evermind.server.http.ServletRequestDispatcher.forward(ServletRequestDispatcher.java:220)
at com.collaxa.cube.fe.DomainFilter.doFilter(DomainFilter.java:138)
at com.evermind.server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:649)
at com.evermind.server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:322)
at com.evermind.server.http.HttpRequestHandler.processRequest(HttpRequestHandler.java:790)
at com.evermind.server.http.HttpRequestHandler.run(HttpRequestHandler.java:270)
at com.evermind.server.http.HttpRequestHandler.run(HttpRequestHandler.java:112)
at com.evermind.util.ReleasableResourcePooledExecutor$MyWorker.run(ReleasableResourcePooledExecutor.java:186)
at java.lang.Thread.run(Thread.java:534)
Caused by: ORABPEL-12143
ERRJMS_DEST_NOT_TOPIC.
Destination "jms/demoQueue" is not a topic.
Please examine the log file to
determine the problem.
at oracle.tip.adapter.jms.JMS.JMSDestination.getTopic(JMSDestination.java:99)
at oracle.tip.adapter.jms.JMS.JMSConnection.createProducer(JMSConnection.java:344)
at oracle.tip.adapter.jms.JMS.JMSConnection.createProducer(JMSConnection.java:328)
at oracle.tip.adapter.jms.JMS.JMSMessageProducer.createProducer(JMSMessageProducer.java:157)
at oracle.tip.adapter.jms.JMS.JMSMessageProducer.init(JMSMessageProducer.java:126)
... 55 more
<2006-01-20 10:01:16,162> <ERROR> <default.collaxa.cube.ws> <AdapterFramework::Outbound>
file:/C:/OraBPELPM_1/integration/orabpel/domains/default/tmp/.bpel_JMSTest1_1.0.jar/JMSSrv.wsdl [
Produce_Message_ptt::Produce_Message(JMSTest1ProcessRequest) ] - Rolling back JCA LocalTransaction
<2006-01-20 10:01:16,162> <DEBUG> <default.collaxa.cube.ws> <WSIFInvocationHandler::invoke> Fault happened:
file:/C:/OraBPELPM_1/integration/orabpel/domains/default/tmp/.bpel_JMSTest1_1.0.jar/JMSSrv.wsdl [
Produce_Message_ptt::Produce_Message(JMSTest1ProcessRequest) ] - WSIF JCA Execute of operation 'Produce_Message' failed due
to: ERRJMS_MSGPROD_CONSTR_ERR.
Unable to construct MessageProducer.
; nested exception is:
ORABPEL-12164
ERRJMS_MSGPROD_CONSTR_ERR.
Unable to construct MessageProducer.
Please examine the log file to determine the problem.
Below is the JMS Adapter wsdl(JMSSrv.wsdl)
<definitions
name="JMSSrv"
targetNamespace="http://xmlns.oracle.com/pcbpel/adapter/jms/JMSSrv/"
xmlns="http://schemas.xmlsoap.org/wsdl/"
xmlns:tns="http://xmlns.oracle.com/pcbpel/adapter/jms/JMSSrv/"
xmlns:plt="http://schemas.xmlsoap.org/ws/2003/05/partner-link/"
xmlns:jca="http://xmlns.oracle.com/pcbpel/wsdl/jca/"
xmlns:imp1="http://xmlns.oracle.com/JMSTest1"
xmlns:hdr="http://xmlns.oracle.com/pcbpel/adapter/jms/"
>
<import namespace="http://xmlns.oracle.com/JMSTest1" location="JMSTest1.wsdl"/>
<import namespace="http://xmlns.oracle.com/pcbpel/adapter/jms/" location="jmsAdapterOutboundHeader.wsdl"/>
<message name="JMSTest1ProcessRequest_msg">
<part name="JMSTest1ProcessRequest" element="imp1:JMSTest1ProcessRequest"/>
</message>
<portType name="Produce_Message_ptt">
<operation name="Produce_Message">
<input message="tns:JMSTest1ProcessRequest_msg"/>
</operation>
</portType>
<binding name="Produce_Message_binding" type="tns:Produce_Message_ptt">
<jca:binding />
<operation name="Produce_Message">
<jca:operation
InteractionSpec="oracle.tip.adapter.jms.outbound.JmsProduceInteractionSpec"
DestinationName="jms/demoQueue"
DeliveryMode="Non-Persistent"
TimeToLive="0"
PayloadType="TextMessage"
OpaqueSchema="false" >
</jca:operation>
<input>
<jca:header message="hdr:OutboundHeader_msg" part="outboundHeader"/>
</input>
</operation>
</binding>
<service name="JMSSrv">
<port name="Produce_Message_pt" binding="tns:Produce_Message_binding">
<jca:address location="eis/Jms/JmsPublishAdapter" />
</port>
</service>
<plt:partnerLinkType name="Produce_Message_plt" >
<plt:role name="Produce_Message_role" >
<plt:portType name="tns:Produce_Message_ptt" />
</plt:role>
</plt:partnerLinkType>
</definitions>
Thaking youn for your cooperation.
Regards
Moni
Maybe you are looking for
-
I need to find out how to make these pdf web forms work again!! I have to use IE now and I HATE IE. Please don't prove me wrong after I've been telling people how amazing firefox is for years. I can no longer do my job with your browser
-
Kind of at a loss here, please help if you know
Can you transfer your iTunes libraray to a different computer? As in, I have about 2,000 songs on my itunes, and I'm about to move and I have to get a new computer because this one isn't mine. Is it a problem to move all those songs onto a different
-
iphone 5 wont turn on and charge and sync to itunes. HELP
-
Installation of Adobe Photoshop Elements 12 & Adobe Premiere Elements 12 Student and Teacher Edition
After initiating download I receive a msg about not all parts archived and that I need to select a program to open. I'm not a total dumb-bunny, but I am totally stuck! Diane Jackson, MO
-
Update apache of lms 3.1
Hi, According to this link (https://issues.apache.org/bugzilla/show_bug.cgi?id=48359) Apache has some vulnerabilities which we need to address. Is it possible to upgrade apache on the lms server? Regards Marco Kerklaan