Setting ClientID in JMS Adapter- Consume

Hi All,
does anyone have idea how to set clientId in JMS Adapter (Consume Operation). I am able to see only option to set durablesusriber name.
I can see clientId option available in connection factory setting, but i am still unable to use that. If i have 10 clients , i can't go on creating 10 different connection factory. Also how to link it with 10 adapters?
I am using JMS topic. SOA 11G
thanks
Bikash

atheek1 wrote:
You can set client ID either in the JMS connection factory or in FactoryProperties in JMS Adaptors outbound connection pool as <FactoryProperties>ClientID=uniquename</FactoryProperties>
Weblogic jms expects the combo of durable subscription + client ID to be unique across the durable subscriptions, not just client ID. so if you can given unique durable subscription names in the jca file you should still be able to use the same JMS CF / jms adaptor connection pool across multiple instances.
Below  is details
Susriber Name       Client ID_
DurTpicSus4_1 DurTpicSus4
DurTpicSus4_2 DurTpicSus4
DurTpicSus4_3 DurTpicSus4
then in factory properties i gave ClientID = DurTpicSus4.
Then deployed all 3 composit application with different susriber name, only one worked. Which ever i deployed first worked everytime. For rest error came, below is error
========================================
JMSMessageConsumer_init: Retrying connection; attempt #2 BINDING.JCA-12133 ERRJMS_JMS_EXCEP. ERRJMS_JMS_EXCEP. Unable to create JMSConnection due to JMSException. Please examine the log file to determine the problem. at oracle.tip.adapter.jms.JMS.JMSConnection.init(JMSConnection.java:263) at oracle.tip.adapter.jms.JMS.JMSConnection.<init>(JMSConnection.java:117) at oracle.tip.adapter.jms.JmsManagedConnectionFactory.createConnection(JmsManagedConnectionFactory.java:371) at oracle.tip.adapter.jms.JmsManagedConnectionFactory.createDefaultConnection(JmsManagedConnectionFactory.java:364) at oracle.tip.adapter.jms.JmsManagedConnectionFactory.createConnection(JmsManagedConnectionFactory.java:327) at oracle.tip.adapter.jms.JmsManagedConnectionFactory.createManagedConnection(JmsManagedConnectionFactory.java:95) at weblogic.connector.security.layer.AdapterLayer.createManagedConnection(AdapterLayer.java:803) at weblogic.connector.outbound.ConnectionFactory.createResource(ConnectionFactory.java:91) at weblogic.common.resourcepool.ResourcePoolImpl.makeResources(ResourcePoolImpl.java:1193) at weblogic.common.resourcepool.ResourcePoolImpl.reserveResourceInternal(ResourcePoolImpl.java:395) at weblogic.common.resourcepool.ResourcePoolImpl.reserveResource(ResourcePoolImpl.java:332) at weblogic.common.resourcepool.ResourcePoolImpl.reserveResource(ResourcePoolImpl.java:315) at weblogic.connector.outbound.ConnectionPool.reserveResource(ConnectionPool.java:620) at weblogic.common.resourcepool.ResourcePoolImpl.reserveResource(ResourcePoolImpl.java:309) at weblogic.connector.outbound.ConnectionManagerImpl.getConnectionInfo(ConnectionManagerImpl.java:365) at weblogic.connector.outbound.ConnectionManagerImpl.getConnection(ConnectionManagerImpl.java:320) at weblogic.connector.outbound.ConnectionManagerImpl.allocateConnection(ConnectionManagerImpl.java:129) at oracle.tip.adapter.jms.JmsConnectionFactory.getConnection(JmsConnectionFactory.java:93) at oracle.tip.adapter.jms.JMS.JMSMessageConsumer.createConsumer(JMSMessageConsumer.java:318) at oracle.tip.adapter.jms.JMS.JMSMessageConsumer.init(JMSMessageConsumer.java:913) at oracle.tip.adapter.jms.inbound.JmsConsumer.init(JmsConsumer.java:862) at oracle.tip.adapter.jms.JmsEndpoint.run(JmsEndpoint.java:163) at oracle.integration.platform.blocks.executor.WorkManagerExecutor$1.run(WorkManagerExecutor.java:105) at weblogic.work.j2ee.J2EEWorkManager$WorkWithListener.run(J2EEWorkManager.java:183) at weblogic.work.DaemonWorkThread.run(DaemonWorkThread.java:30) Caused By: weblogic.jms.common.InvalidClientIDException: Client id, DurTpicSus4, is in use. The reason for rejection is "The JNDI name weblogic.jms.connection.clientid.DurTpicSus4 was found, and was bound to an object of type weblogic.jms.frontend.FEClientIDSingularAggregatable : FEClientIDSingularAggregatable(SingularAggregatable(<4161256989713352509.1>:150):DurTpicSus4)" at weblogic.jms.frontend.FEConnection.setConnectionClientId(FEConnection.java:1247) at weblogic.jms.frontend.FEConnection.<init>(FEConnection.java:197) at weblogic.jms.frontend.FEConnectionFactory$1.run(FEConnectionFactory.java:381) at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:363) at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:147) at weblogic.jms.frontend.FEConnectionFactory.connectionCreateInternal(FEConnectionFactory.java:377) at weblogic.jms.frontend.FEConnectionFactoryImpl.connectionCreateInternal(FEConnectionFactoryImpl.java:79) at weblogic.jms.frontend.FEConnectionFactoryImpl.connectionCreateRequest(FEConnectionFactoryImpl.java:62) at weblogic.jms.client.JMSConnectionFactory.setupJMSConnection(JMSConnectionFactory.java:224) at weblogic.jms.client.JMSConnectionFactory.createConnectionInternal(JMSConnectionFactory.java:285) at weblogic.jms.client.JMSConnectionFactory.createTopicConnection(JMSConnectionFactory.java:186) at oracle.tip.adapter.jms.JMS.JMSConnection.init(JMSConnection.java:159) at oracle.tip.adapter.jms.JMS.JMSConnection.<init>(JMSConnection.java:118) at oracle.tip.adapter.jms.JmsManagedConnectionFactory.createConnection(JmsManagedConnectionFactory.java:371) at oracle.tip.adapter.jms.JmsManagedConnectionFactory.createDefaultConnection(JmsManagedConnectionFactory.java:364) at oracle.tip.adapter.jms.JmsManagedConnectionFactory.createConnection(JmsManagedConnectionFactory.java:327) at oracle.tip.adapter.jms.JmsManagedConnectionFactory.createManagedConnection(JmsManagedConnectionFactory.java:95) at weblogic.connector.security.layer.AdapterLayer.createManagedConnection(AdapterLayer.java:803) at weblogic.connector.outbound.ConnectionFactory.createResource(ConnectionFactory.java:91) at weblogic.common.resourcepool.ResourcePoolImpl.makeResources(ResourcePoolImpl.java:1193) at weblogic.common.resourcepool.ResourcePoolImpl.reserveResourceInternal(ResourcePoolImpl.java:395) at weblogic.common.resourcepool.ResourcePoolImpl.reserveResource(ResourcePoolImpl.java:332) at weblogic.common.resourcepool.ResourcePoolImpl.reserveResource(ResourcePoolImpl.java:315) at weblogic.connector.outbound.ConnectionPool.reserveResource(ConnectionPool.java:620) at weblogic.common.resourcepool.ResourcePoolImpl.reserveResource(ResourcePoolImpl.java:309) at weblogic.connector.outbound.ConnectionManagerImpl.getConnectionInfo(ConnectionManagerImpl.java:365) at weblogic.connector.outbound.ConnectionManagerImpl.getConnection(ConnectionManagerImpl.java:320) at weblogic.connector.outbound.ConnectionManagerImpl.allocateConnection(ConnectionManagerImpl.java:129) at oracle.tip.adapter.jms.JmsConnectionFactory.getConnection(JmsConnectionFactory.java:93) at oracle.tip.adapter.jms.JMS.JMSMessageConsumer.createConsumer(JMSMessageConsumer.java:318) at oracle.tip.adapter.jms.JMS.JMSMessageConsumer.init(JMSMessageConsumer.java:914) at oracle.tip.adapter.jms.inbound.JmsConsumer.init(JmsConsumer.java:864) at oracle.tip.adapter.jms.JmsEndpoint.run(JmsEndpoint.java:163) at oracle.integration.platform.blocks.executor.WorkManagerExecutor$1.run(WorkManagerExecutor.java:106) at weblogic.work.j2ee.J2EEWorkManager$WorkWithListener.run(J2EEWorkManager.java:183) at weblogic.work.DaemonWorkThread.run(DaemonWorkThread.java:30)
====================================

Similar Messages

  • Distributed topic - JMS adapter consuming duplicate messages

    We have distributed topic thats consumed by a composite (JMSadpter in mediator).
    We see for every one message sent the composite consumes the message twice. (With forwarding policy set to partitioned)
    Is this an expected behavior? and how do we make the consumer (JMS adapter) consume only once per message
    Thanks
    Vijay

    From the documentation (provided here: http://download.oracle.com/docs/cd/E21764_01/integration.1111/e10231/adptr_jms.htm)
    The JMS API specifies three types of acknowledgments that can be sent by the JMS publisher:
    - DUPS_OK_ACKNOWLEDGE, for consumers that are not concerned about duplicate messages
    - AUTO_ACKNOWLEDGE, in which the session automatically acknowledges the receipt of a message
    - CLIENT_ACKNOWLEDGE, in which the client acknowledges the message by calling the message's acknowledge method
    Could you check in the weblogic-ra.xml what acknowledge mode has been configured:
    <property>
        <name>AcknowledgeMode</name>
        <value>AUTO_ACKNOWLEDGE</value>
    </property>
    ...Note that when DUPS_OK_ACKNOWLEDGE is used it can happen that a message is consumed more than once.
    Are you also sure that the message is not produced twice?
    Seminar on Cloud Computing - http://middlewaremagic.com/weblogic/?p=7387

  • How to Set corrid using JMS adapter in ESB while inserting the data in JMS

    Hello all,
    Can any one help me in setting the corrid using JMS adapter in ESB.
    I haven't been able to find any clues.
    We can do this in BPEL but my adapter is in ESB and i have no idea how this can be done in ESB.
    Your help is highly appreciated.
    Thanks,
    Saurav
    Edited by: sauravsingla on Oct 7, 2009 10:46 AM

    hi
    you could do this from and xsl transformatuion by use of the .. function
    see :
    http://biemond.blogspot.com/2008/02/esb-adapter-failover.html
    http://kr.forums.oracle.com/forums/thread.jspa?threadID=658502 (comment of AmitSoaDev, he sets correlationid too)
    hope this helps, gl

  • Jms Adapter Consume and produce

    Hai guys,
    i don't know anything in soa. i have got a usecase which is to
    1) Read a .csv file
    2) Send it to a bpel (in bpel do nothing to payload). Again i have to send the payload to jms adapter( which i dnt knw how )
    3) From the same jms adapter passing the payload to mediator
    4) Pass the input to another jms( jms2 ). from jms2 pass the payload to another bpel
    5) from bpel to db adapter
    am using
    Oracle jDevloper 11.1.13
    Weblogic server is a 10.3.6
    my problem is how to create the same jms in two ways like consuming and producing
    Thanks in advance
    Edited by: Beckyard on Sep 26, 2012 9:49 PM

    Hi,
    Why do you need 2 JMS queues? Can't you consider following pattern?
    Read .csv --> BPEL --> JMS Q
    JMS Q --> Mediator --> BPEL (only if some payload processing required) --> Db Adapter
    Assuming the above pattern, you'll have to develop 2 processes (in your pattern 3 processes).
    - One that will enqueue the data in JMS in which the JMS Adapter will be placed in the External references and will be invoked with Produce operation.
    - Another process in which Mediator will consume the message using Consume operation from JMS and pass it to BPEL for inserting into database. In this case, JMS Adapter will be placed in Exposed Service swim-lane.
    Let us know how you proceed.
    Regards,
    Neeraj Sehgal

  • JMS Adapter - Consuming empty opaque element

    Hi All,
    In a BPEL(lets say BPEL A) using JMS Adapter I am posting an message/payload into JMS Topic as Opaque element using produce_message.
    Now in another router(Bpel B) I am listening to this topic using consume_message and trying to retrive the message.
    Problem : In the consuming side ie., BPEL B's receive I receive the message as Empty opaque element.
    ie.,
    <receiveEBMFromIntegrationTopic_InputVar>
    <part name="opaque">
    <opaqueElement/>
    </part>
    </receiveEBMFromIntegrationTopic_InputVar>
    Although in BPEL A the message that I have invoked produce_message on JMSAdapter is this :
    <PublishEBMToTopic_Produce_Message_InputVar>
    <part name="opaque">
    <opaqueElement>
    <ns2:HeaderMsg>
    <ns2:MessageID>PIMS-2012-06-22T13:12:13+05:30</ns2:MessageID>
    <ns2:MessageDate>2012-06-22T13:12:13+05:30</ns2:MessageDate>
    <ns2:MessageVersion>V2</ns2:MessageVersion>
    <ns2:MessagePriority>4</ns2:MessagePriority>
    <ns2:MessageDomain>GPRD</ns2:MessageDomain>
    <ns2:MessageRetryCount>0</ns2:MessageRetryCount>
    <ns2:CorrelationID>PIMS-2012-06-22T13:12:13+05:30</ns2:CorrelationID>
    <ns2:SourceSystemName>PIMS</ns2:SourceSystemName>
    <ns2:SystemEnvironmentCode>Dev</ns2:SystemEnvironmentCode>
    <ns2:BOName>Clinical Study</ns2:BOName>
    <ns2:BOOperation>Sync</ns2:BOOperation>
    <ns2:DownGradeVersionFlag>N</ns2:DownGradeVersionFlag>
    </ns2:HeaderMsg>
    <ns2:BodyMsg>
    <ns2:ClinicalStudyEBO>
    <ns2:StudyNumber>M13-3201</ns2:StudyNumber>
    <ns2:ProtocolTitle>XYZ</ns2:ProtocolTitle>
    <ns2:ABORecordInfo>
    <ns2:LastSourcedFrom>PIMS</ns2:LastSourcedFrom>
    <ns2:LastSourcedModifiedDate>2012-06-11T00:00:00.000+05:30</ns2:LastSourcedModifiedDate>
    </ns2:ABORecordInfo>
    </ns2:ClinicalStudyEBO>
    </ns2:BodyMsg>
    </opaqueElement>
    </part>
    </PublishEBMToTopic_Produce_Message_InputVar>
    Can someone help me in knowing why I am getting an empty element in receivving side . Thanks for helping!
    Regards,
    Sridhar.

    Hi Sridhar,
    First thing To do is certify that the published message is ok in the JMS topic.
    You can check that in the Weblogic Admin Console, you will need a durable subscriber to be able to check messages in a topic, or change temporarily to a queue that is easier to check the messages that are in.
    Cheers,
    Vlad

  • How to set password in JMS adapter

    Hi All,
    I have put a JMS adpater partner link into a BPEL process, and everything seems to work fine, except that it wants to authenticate to the App Server using oc4jadmin/welcome1 and I used a different password.
    Can anyone tell me where to set the password it uses?
    I have tried putting it in the JMS Adpater's wsdl file under the jca:address section as mcf.Password, and as properties on the adapter partner link itself. Neither of these seem to work.
    Thanks for your help,
    Mark Nelson

    Mark,
    When you say "authenticating to the app server" you mean the adapter authenticating to the JMS Provider (running in the app server), correct?
    If so, the username/password are in oc4j-ra.xml, more precisely:
    %J2EE_HOME%\application-deployments\default\JmsAdapter
    (you might have to change "default").
    Look for your adapter connector-factory. It should have:
            <config-property name="username" value="oc4jadmin"/>
         <config-property name="password" value="welcome1"/>I understand that this sounds like the previous recommendation but this really should be it. Might be confusing as they are various instances of oc4j-ra.xml.
    Let us know how this works.

  • How to set values in JMS Adapter using Adanced specific Message Attributes

    Hi Frnds,
    in my scenarios i have to add extra header information MQ Message,
    using Adanced specific Message Attributes i defined 7 parameters(Transaction,Environment,shema......) all are type Interger.But i have to set values ( Transaction type,Enviroment,shema....).
    Where i can set values ??
    help me on this...
    Regards,
    Raja Sekhar

    Hi Vijay,
    Thanks for your replay,as per your input i creted dynamic configuration method,
    i taget structure  luks like this
       <Data>
           <Mesage>
                 <gl_update>
                      <header>
                            <ean1>
                            <ean2>
                      </header>
                  <gl_update>
           <Message>
    i written UDF and mapped to header element gl_update,
    but i am getting  below error message in MONI
    SAP:Error xmlns:SAP="http://sap.com/xi/XI/Message/30" xmlns:SOAP="http://schemas.xmlsoap.org/soap/envelope/" SOAP:mustUnderstand="">
      <SAP:Category>Application</SAP:Category>
      <SAP:Code area="MAPPING">EXCEPTION_DURING_EXECUTE</SAP:Code>
      <SAP:P1>com/sap/xi/tf/_MM_ ffjms_</SAP:P1>
      <SAP:P2>com.sap.aii.mappingtool.tf7.IllegalInstanceExcepti</SAP:P2>
      <SAP:P3>on: Cannot create target element /ns0:MT_jms_ _a</SAP:P3>
      <SAP:P4>sync_out/Data/Message/ GLUpdate. Values missi~</SAP:P4>
      <SAP:AdditionalText />
      <SAP:Stack>Runtime exception occurred during application mapping com/sap/xi/tf/_MM_ ffjms_; com.sap.aii.mappingtool.tf7.IllegalInstanceException: Cannot create target element /ns0:MT_jms_ asyncout/Data/Message/ GLUpdate. Values missi~</SAP:Stack>
      <SAP:Retry>M</SAP:Retry>
      </SAP:Error>
    i want to know i mapped to UDF to GL_Update is is correct, to which element i have to map.
    i think there is no prob with UDF,its executing ,giving warning messages
    help me on this,
    Regaards
    Raj

  • How to set JMS user property in JMS Adapter.

    I am using Jdeveloper and SOA 11g. I want to filter some JMS messages from a topic based on a JMS user property. It is consumed using (JMS Adapter) consumer --> Mediator---> DBAdapter.
    My Question is how to define a JMS user property using Jdeveloper 11g.
    Thanks
    Edited by: user5108636 on 24/06/2010 16:10

    In Mediator mplan Assign Values use a property expression in the "to" side like:
    jca.jms.JMSProperty.XXX
    where XXX is the name of the property you would like to have created and populated. In source it will look like:
    <Mediator name="A03QueueWFeedMediator" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://xmlns.oracle.com/sca/1.0/mediator"
    wsdlTargetNamespace="http://www.oracle.com/integration/b2b/A03QueueWFeedFromB2B/">
    <operation name="receive" deliveryPolicy="AllOrNothing" priority="4"
    validateSchema="false">
    <switch>
    <case executionType="direct" name="A03QueueWFeedToJMS.Produce_Message">
    <action>
    <transform>
    <part name="$out.body"
    function="xslt(xsl/ADT_AXX_To_ADT_AXX.xsl, $in.body)"/>
    </transform>
    <assign>
    <copy target="$out.body/imp1:ADT_AXX/imp1:MSH/@Type"
    value="$in.property.b2b.documentDefinitionName"
    xmlns:imp1="NS_64FCBED013AA409D933F624674E67BF220070423183755"/>
    <copy target="$out.body/imp1:ADT_AXX/imp1:MSH/@ID"
    value="$in.property.b2b.fromTradingPartnerId"
    xmlns:imp1="NS_64FCBED013AA409D933F624674E67BF220070423183755"/>
    <copy target="$out.body/imp1:ADT_AXX/imp1:MSH/@Name"
    value="$in.property.b2b.toTradingPartnerId"
    xmlns:imp1="NS_64FCBED013AA409D933F624674E67BF220070423183755"/>
    <copy target="$out.property.b2b.conversationId"
    value="$in.property.b2b.conversationId"/>
    <copy target="$out.property.b2b.documentDefinitionName"
    value="$in.property.b2b.documentDefinitionName"/>
    <copy target="$out.property.b2b.documentProtocolName"
    value="$in.property.b2b.documentProtocolName"/>
    <copy target="$out.property.b2b.documentProtocolVersion"
    value="$in.property.b2b.documentProtocolVersion"/>
    <copy target="$out.property.b2b.documentTypeName"
    value="$in.property.b2b.documentTypeName"/>
    <copy target="$out.property.b2b.fromTradingPartnerId"
    value="$in.property.b2b.fromTradingPartnerId"/>
    <copy target="$out.property.b2b.fromTradingPartnerIdType"
    value="$in.property.b2b.fromTradingPartnerIdType"/>
    <copy target="$out.property.b2b.toTradingPartnerId"
    value="$in.property.b2b.toTradingPartnerId"/>
    <copy target="$out.property.b2b.toTradingPartnerIdType"
    value="$in.property.b2b.toTradingPartnerIdType"/>
    *<copy target="$out.property.jca.jms.JMSProperty.conversationId"*
    value="$in.property.b2b.conversationId"/> <copy target="$out.property.jca.jms.JMSProperty.documentDefinitionName"
    value="$in.property.b2b.documentDefinitionName"/>
    <copy target="$out.property.jca.jms.JMSProperty.documentProtocolName"
    value="$in.property.b2b.documentProtocolName"/>
    <copy target="$out.property.jca.jms.JMSProperty.documentProtocolVersion"
    value="$in.property.b2b.documentProtocolVersion"/>
    <copy target="$out.property.jca.jms.JMSProperty.documentTypeName"
    value="$in.property.b2b.documentTypeName"/>
    <copy target="$out.property.jca.jms.JMSProperty.fromTradingPartnerId"
    value="$in.property.b2b.fromTradingPartnerId"/>
    <copy target="$out.property.jca.jms.JMSProperty.fromTradingPartnerIdType"
    value="$in.property.b2b.fromTradingPartnerIdType"/>
    <copy target="$out.property.jca.jms.JMSProperty.toTradingPartnerId"
    value="$in.property.b2b.toTradingPartnerId"/>
    <copy target="$out.property.jca.jms.JMSProperty.toTradingPartnerIdType"
    value="$in.property.b2b.toTradingPartnerIdType"/>
    </assign>
    <invoke reference="A03QueueWFeedToJMS" operation="Produce_Message"/>
    </action>
    </case>
    </switch>
    </operation>
    </Mediator>
    The runtime will see something like:
    [2010-09-09T11:48:06.353+10:00] [AdminServer] [TRACE] [] [oracle.soa.adapter] [tid: weblogic.work.j2ee.J2EEWorkManager$WorkWithListener@60ddbc76] [userId: weblogic] [ecid: 0000Ifo9olH2zGWjLxmJOA1CY0sg0001jY,0] [SRC_CLASS: oracle.integration.platform.blocks.adapter.fw.log.LogManagerImpl] [APP: soa-infra] [dcid: 02d1ff4621073810:26418f01:12af379c141:-7fd3-0000000000000219] [SRC_METHOD: log] Jms Adapter A03QueueWFeed:A03QueueWFeedToJMS [ Produce_Message_ptt::Produce_Message(body) ] XMLHelper_convertJmsMessageHeadersAndPropertiesToXML: <JMSInboundHeadersAndProperties xmlns="http://xmlns.oracle.com/pcbpel/adapter/jms/">[[
    <JMSInboundHeaders>
    <JMSCorrelationID></JMSCorrelationID>
    <JMSDeliveryMode>2</JMSDeliveryMode>
    <JMSExpiration>0</JMSExpiration>
    <JMSMessageID>ID:&lt;911867.1283996886119.0></JMSMessageID>
    <JMSPriority>4</JMSPriority>
    <JMSRedelivered>false</JMSRedelivered>
    <JMSType></JMSType>
    <JMSTimestamp>1283996886119</JMSTimestamp>
    </JMSInboundHeaders>
    <JMSInboundProperties>
    <Property name="documentProtocolVersion" value="2.3"/>
    <Property name="toTradingPartnerIdType" value="Name"/>
    *<Property name="conversationId" value="C0A83C0712AF42D840E0000074BA3CCC"/>* <Property name="documentTypeName" value="ADT"/>
    <Property name="tracking_conversationId" value="C0A83C0712AF42D866F0000074BA3CD9"/>
    <Property name="tracking_ecid" value="C0A83C0712AF42D866F0000074BA3CDA"/>
    <Property name="tracking_compositeInstanceId" value="60019"/>
    <Property name="documentProtocolName" value="HL7"/>
    <Property name="documentDefinitionName" value="QH_ADT_Generic"/>
    <Property name="tracking_parentComponentInstanceId" value="mediator:45E076D0BBB411DFAF05817F5F0DD1A1"/>
    <Property name="fromTradingPartnerIdType" value="Name"/>
    <Property name="fromTradingPartnerId" value="HOMER"/>
    <Property name="toTradingPartnerId" value="Self"/>
    <Property name="JMSXDeliveryCount" type="integer" value="1"/>
    </JMSInboundProperties>
    </JMSInboundHeadersAndProperties>
    Edited by: Michael.Czapski on 8/09/2010 18:58

  • Mediator Resequencer,JMS Adapter: queue consumers increase from PS2 to PS4

    Hi,
    We have an environment using SOA Suite and Mediator Resequencer, it is using a FIFO approach. It has been running fine in SOA Suite version 11.1.1.3.
    We are using a JMS Adapter, consuming the messages from the UDD queues as we have a SOA cluster of two managed servers.
    Well we are now doing some test for upgrading to PS4 (11.1.15) and we have noticed some differences after the upgrade in terms of # consumers on the UDD queues.
    In 11.1.1.3 eache member of the UDD was showing just 1 consumer. Looks like this is the right configuration when using and mediator resequencer FIFO approach, as they say you need to have a single-threaded approach to avoid unpredictible result.
    After upgrade that, we have noticed that in 11.1.1.5 each UDD member shows 2 consumers, we have not changed anything, we just follow the upgrade guide to do that. To be honest we are not sure wheter it is a problem or not.
    Can anybody advise about that? If it is an issue, How and where can configure it to get back to 1 consumer connected to UDD member?
    Thanks a lot!

    The Bridge is configured to use the MQ CF and destination directly without the foreign JMS wrapper. Does this make any difference to the bridge's transactional behaviour with MQ?
    Even with the foreign jms wrapper, the local jndi name of the MQ CF is still mapped to com.ibm.mq.jms.MQXAQueueConnectionFactory class. So I think there is no wrapper classes are used from foreign JMS perspective. But if a bridge is configured to lookup local jndi, does it add any wrapper classes which handles the XA interactions with MQ in a different way ?
    I am trying to see if introducing a foreign server resolves the problem. Not sure if its worth to take this path.
    Thanks in advance.
    Regards,
    Atheek

  • Throttling using JMS Adapter poller threads

    Hi,
    We are trying to realize the throttling using JMS Adapter poller threads mechanism
    I came across this http://docs.oracle.com/cd/E14571_01/core.1111/e10108/adapters.htm (15.5 Oracle SOA JMS Adapter Tuning )
    adapter.jms.receive.threads
    Here is my configuration. I tried both the options listed below but none works for me.
    option 1 - here property is of type string
    <service name="JMSDelayMsgRead" ui:wsdlLocation="JMSDelayMsgRead.wsdl">
    <interface.wsdl interface="http://xmlns.oracle.com/pcbpel/adapter/jms/JMSDelayMessage/JMSDelayMessage/JMSDelayMsgRead#wsdl.interface(Consume_Message_ptt)"/>
    <binding.jca config="JMSDelayMsgRead_jms.jca">
    <property name="adapter.jms.receive.threads" type="xs:string" many="false">4</property>
    </binding.jca>
    </service>
    option 2 - Here property is of type integer
    <service name="JMSDelayMsgRead" ui:wsdlLocation="JMSDelayMsgRead.wsdl">
    <interface.wsdl interface="http://xmlns.oracle.com/pcbpel/adapter/jms/JMSDelayMessage/JMSDelayMessage/JMSDelayMsgRead#wsdl.interface(Consume_Message_ptt)"/>
    <binding.jca config="JMSDelayMsgRead_jms.jca">
    <property name="adapter.jms.receive.threads" type="xs:integer" many="true" override="may">4</property>
    </binding.jca>
    </service>
    I tried minimumDelayBetweenMessages parameter for throttling (which is based on time delay) and it works as expected but poller threads mechansim is more suitable for my situation.
    Here is my environment details
    I'm on SOA 11.1.1.4
    JMS Adapter consuming from a Topic (IBM MQ)
    Durable Subscription
    Can any one help me get throttling using poller threads working?
    Please let me know if you need further details about my configuration / logs etc.
    I posted this in two other forums but didn't get any responses on them so posting it here. I apologize for the repetition of this post in multiple forums.
    Thanks & Regards
    shashi

    Hi Raks,
    Check this note for JNDI configuration..
    802754
    "If a 3rd party JMS provider should be used then usually the "Name of JNDI initial context factory" must be adjusted. I.e. com.sap.engine.services.jndi.InitialContextFactoryImpl must be replaced by some.other.vendor.jms.jndi.InitialContextFactory In addition it is necessary to deploy the jar that contains the some.other.vendor.jms.jndi.InitialContextFactory with the aii_af_jmsproviderlib.sda SDA file. In addition, you must extend the server/provider.xml deployment descriptor in the relevant way. Refer to Chapter 11 of the XI 3.0 Configuration Guide for more information"
    You need to find out class "Name of JNDI initial context factory" for tibco  as mentoned in the note and deploy the corresponding JAR file.
    Also check this link for JNDI configuration parameters in the JMs adapter..
    http://help.sap.com/saphelp_nw04/helpdata/en/c1/739c4186c2a409e10000000a155106/content.htm
    Regards
    Anand

  • Setting JMS Message header and properties in JMS Adapter ESB Component

    Hi,
    I am new to using some of these adapters in Oracle ESB and need some help.
    I am trying to define a JMS Publisher using JMS Adapter component in JDeveloper. I would like to publish messages with message property set to a topic. I dont find a way to do that.
    I see that for consuming JMS messages, the JMS Adapter allows to specify message selector but I could not find a way for producing message with a user defined message property. I would like to use that property in the message selector to filter messages and consume.
    I am using Oracle SOA Suite 10.1.3.3.x
    Can someone help please?
    Thanks.

    Thanks for the response.
    I think I found the solution although I havent tried it out yet.
    ESB sample 110.JMStoJMSHeaders outlines the approach.
    It is my understanding that JMS Message selector can work on JMS header or JMS properties (user defined) but not on JMS body. (All the three constitue a JMS message). Hence the need to set a JMS property prior to publishing the message to a topic/queue.
    Thanks.

  • JMS Adapter setting the header data of MQ message

    Hi All,
    I need to set the properties in JMS adapter for setting the header data of MQ message.
    JMS_IBM_MQMD_Format = MQFMT_NONE.
    Thanks in advance
    Ravijeet

    Hi All,
    I am stuck in a typical XI issue.......I have a scenario where my input to XI is IDoc and output is xml message going to IBM MQ.
    The IDoc is sending some chineese character which is fine is SXMB_MONI Integration server and also fine in the payload of message monitoring, so feel the message is going fine from XI to MQ.
    But the receiver EDI system which is picking the message from MQ queue says the chinese characters are getting corrupted. They say that you need to set the additional properties in MQ header data
    JMS_IBM_MQMD_Format = MQFMT_NONE.
    How do I do this in communication channel for jms adapter ? How to I set the MQ header data in jms communication channel ?
    Thanks in advance
    Ravijeet
    Edited by: RAVIJEET DAS on May 12, 2009 8:27 AM
    Edited by: RAVIJEET DAS on May 12, 2009 8:27 AM

  • How to set property for Cluster Environment for JMS Adapter

    Hi All,
    I am moving from DEV to Prod environment which is cluster.
    Can you Please explain me what property I need to Set for Cluster Environment for JMS Adapter, so that I could avoid race condition for Dequeue/enqueue.
    I am using soa suite 10.1..3.4
    Thanks in Advance.
    Edited by: vikky123 on Jul 12, 2010 7:03 AM

    put something like this
    <activationAgents>
          <activationAgent className="oracle.tip.adapter.fw.agent.jca.JCAActivationAgent" partnerLink="PARNERLINKNAME">
            <property name="clusterGroupId">SOMEUNIQUEVALUE</property>
            <property name="portType">PARTNERLINK_PORTTYPE</property>
          </activationAgent>
        </activationAgents>

  • How to set the Correlation ID in Oracle Q from JMS Adapter

    Hi,
    I'm using a JMS Adapter on my BPEL process to push messages to an Oracle instance in another machine.
    While testing, I could see that a message is posted on the Q table, but the Correlation ID is null.
    How is the correlation ID on the Q set from the adapter? IDeally I want this ID dynamic to be unique.
    Is this something st on the Invoke activity to the jms adapter, i.e., the Correlations tab, or is that
    unrelated altogether.
    Thanks,
    Ramon

    Found the solution.
    On the Invoke activity, I set the property jca.jms.JMSCorrelationID to a variable I created.
    I set my variable to string appended with sysdate to make it unique.

  • How to set ApplIndentityData header field in JMS adapter

    Hi Guys ,
        I have one requirement for update the field in SAP JMS header. I am using transport protocol for IBM Websphere MQ in JMS adapter.
    While sending data to IBM Websphere MQ Queue via JMS Adapter, need to set the field called ApplIndentityData with the appropriate value which is populate to a MQHRF2 header of a message.
    So, regarding that where will do it? Means JMS receiver adapter or IBM MQ level. If JMS receiver adapter, I think using ASMA, So please guide me how to set this filed value in JMS adapter or share any document you have.
    Thanks & regards
    Vijaykumar S

    Hi RejaSekar,
           I reffered your blog and did the below settings in JMS module and ASMA settings. 
    1) Changed the mode for u201CJMS-Complaintu201D instead of u201CWebsphere MQ(non JMS)u201D
    2) Additional JMS message properties tab created below property name and java type.
           LocalName    --> String
           Partname      -->  String
    3) In module parameter tab added the below module name and key
        AF_Modules/DynamicConfigurationBean   -->  LocalEnterpriseBean  -->  RFH2HEADER
    4) Under parameter Tab
         RFH2HEADER       -->   key.0      -->     insert http://sap.com/XI/System/JMS  DCJMSMessageProperty0
         RFH2HEADER       -->   key.1      -->     insert http://sap.com/XI/System/JMS  DCJMSMessageProperty0
         RFH2HEADER      -->  value.0    -->    LocalName
         RFH2HEADER      -->  value.1    -->    PartnerName
    Kindly check the above settings whether this is correct or wrong. If anything wrong please let me know what we need to change JMS receiver adapter.
    Actually my requirement is need to set these parameters and set the value to that parameters and pass in to /usr folder of a WebsphereMQ message.
    Kindly check and help me out.
    Thanks & regards
    Vijayakumar S

Maybe you are looking for