JMS receive in JTA doesn't return message

Hi
I am using Websphere Application server 6.1 (the one provided with RAD 7.0.0)and WebSphere MQ 6.0 as JMS provider.
I have a problem receiving message from queue when JTA transaction is active.
I configured Connection Factory as following:
Scope cells:ejbhostname:nodes:ejb:servers:server1
Name MQQueueConnectionFactory
JNDI Name foo/bar
Description empty
Category empty
Component-managed Authentication Alias none
Container-managed Authentication Alias none
Mapping-Configuration Alias DefaultPrincipalMapping
Queue Manager QMGR
Host 192.168.2.100
Port 1415
Channel CLIENT_CHANNEL
Transport Type CLIENT
Model Queue Definition empty
Client ID empty
CCSID empty
Message Retention enabled
XA Enabled enabled.
Everything seems to work fine but message reception time-out occurs when i try to synchronous receive message from queue.
Below is a code of my stateless session EJB method.
public void receiveMessage()
    throws NamingException,
    JMSException{
          Connection connection = null;
         Session session = null;
         MessageConsumer consumer = null;
         try {
             logger.log(myLevel, "Getting Initial Context");
             InitialContext context = new InitialContext();
             ConnectionFactory factory = (ConnectionFactory) context.lookup("java:comp/env/jms/JMSExampleConnectionFactoryRef");           
             Destination dest = (Destination) context.lookup("java:comp/env/jms/JMSExampleQueue2Ref");           
             connection = factory.createConnection();         
             session = connection.createSession(true, Session.AUTO_ACKNOWLEDGE);         
             consumer = session.createConsumer(dest);
             connection.start();
             Message msg = consumer.receive(1000);
             if(msg == null){
                  System.out.println(":(");
             }else{
                  System.out.println("got it " + msg);
         catch (NamingException e) {
             mySessionCtx.setRollbackOnly();
             throw e;
         catch (JMSException e) {
             logger.log(myLevel, e.getLocalizedMessage(), e);
             mySessionCtx.setRollbackOnly();
             Exception linked = e.getLinkedException();
             mySessionCtx.setRollbackOnly();
             throw e;
         finally {          
             consumer.close();          
             session.close();         
             connection.close();
    }The weird thing is that it only happens (time-out obviously) if i
i have "XA enabled" checkbox checked (in connection factory settings)AND if i run the method presented above in JTA transaction (setting transaction type for a Ejb to container or set it to Bean and manually start JTA transaction)
If i do not have "XA enabled" checked the code above work great even inside JTA transaction.
I tried creating transacted JMS session and not transacted but as far as i know it is ignored in JTA.
Can someone explain me what is going on ??
Is it impossible to synchronous receive message in JTA transaction while working with XA connection factory??
Is it Websphere MQ problem, or sth else ??

Hi
I am using Websphere Application server 6.1 (the one provided with RAD 7.0.0)and WebSphere MQ 6.0 as JMS provider.
I have a problem receiving message from queue when JTA transaction is active.
I configured Connection Factory as following:
Scope cells:ejbhostname:nodes:ejb:servers:server1
Name MQQueueConnectionFactory
JNDI Name foo/bar
Description empty
Category empty
Component-managed Authentication Alias none
Container-managed Authentication Alias none
Mapping-Configuration Alias DefaultPrincipalMapping
Queue Manager QMGR
Host 192.168.2.100
Port 1415
Channel CLIENT_CHANNEL
Transport Type CLIENT
Model Queue Definition empty
Client ID empty
CCSID empty
Message Retention enabled
XA Enabled enabled.
Everything seems to work fine but message reception time-out occurs when i try to synchronous receive message from queue.
Below is a code of my stateless session EJB method.
public void receiveMessage()
    throws NamingException,
    JMSException{
          Connection connection = null;
         Session session = null;
         MessageConsumer consumer = null;
         try {
             logger.log(myLevel, "Getting Initial Context");
             InitialContext context = new InitialContext();
             ConnectionFactory factory = (ConnectionFactory) context.lookup("java:comp/env/jms/JMSExampleConnectionFactoryRef");           
             Destination dest = (Destination) context.lookup("java:comp/env/jms/JMSExampleQueue2Ref");           
             connection = factory.createConnection();         
             session = connection.createSession(true, Session.AUTO_ACKNOWLEDGE);         
             consumer = session.createConsumer(dest);
             connection.start();
             Message msg = consumer.receive(1000);
             if(msg == null){
                  System.out.println(":(");
             }else{
                  System.out.println("got it " + msg);
         catch (NamingException e) {
             mySessionCtx.setRollbackOnly();
             throw e;
         catch (JMSException e) {
             logger.log(myLevel, e.getLocalizedMessage(), e);
             mySessionCtx.setRollbackOnly();
             Exception linked = e.getLinkedException();
             mySessionCtx.setRollbackOnly();
             throw e;
         finally {          
             consumer.close();          
             session.close();         
             connection.close();
    }The weird thing is that it only happens (time-out obviously) if i
i have "XA enabled" checkbox checked (in connection factory settings)AND if i run the method presented above in JTA transaction (setting transaction type for a Ejb to container or set it to Bean and manually start JTA transaction)
If i do not have "XA enabled" checked the code above work great even inside JTA transaction.
I tried creating transacted JMS session and not transacted but as far as i know it is ignored in JTA.
Can someone explain me what is going on ??
Is it impossible to synchronous receive message in JTA transaction while working with XA connection factory??
Is it Websphere MQ problem, or sth else ??

Similar Messages

  • JMS Receiver - set DCJMSMessageProperty value dynamically from message

    Hi,
    I have a JMS Receiver where I want to set a DCJMSMessageProperty value to a value from the message contents
    For example:
    Scenario 1:
    Message content field <EANCode>123456</EANCode>
    DCJMSMessageProperty6 should be set to 123456 in this instance
    Scenario 2:
    Message content field <EANCode>99999</EANCode>
    DCJMSMessageProperty6 should be set to 99999 in this instance
    I know how to set this property to a fixed value using the module DynamicConfigurationBean but do not know how to make this value to use message content.

    Hi,
    As stated earlier, I need to set DCJMSMessageProperty on the communication channel to a value held in the content not a fixed value.
    I will use a UDF to do this now as there are only certain dynamic values you can use using the DynamicConfigurationBean such as message ID, interface name etc. I want to use something in the content so a UDF should be able to do this.
    Cheers
    Colin.

  • How can a remote jms receiver detect loss of connection to Messaging server

    Plan:
    Messaging server (like JbossMQ /SonicMQ) is hosted on one machine.
    A JMS receiver (MDB/core java program) on another machine receives messages from the messaging server.
    Secnario:
    The JMS receiver is now continuously listening or occasionally reading messages from a certain queue of the server using a JMS connection.
    Now the messaging server has this receiver in its list of receivers for that particular queue.
    For some reason the messaging server is down and then restarted.
    The JMS connection of the receiver is now invalid.
    When the messaging servers comes up again its list of receivers is empty.
    Required Solution:
    Can you please help me on how the JMS receiver can detect the above scenario and re-establish the connetion to the messaging server, the next time the server is up.
    Observations:
    When I create a message consumer or queue receiver in a j2se program, and take messages from JbossMQ I have some additional threads running on my JVM. These threads are not directly created by the program and servers only for receiving messages. One of these threads is catching an exception and printing a stack trace when it detects that the connection is lost. This will also result in the closing of JMS connection. The problem is that the exception is not thrown for the programmer to catch and handle it at some level. I also tried ExceptionListener and waited for ping interval. Is there a concept of receiver listening to the periodic heart beat of the server. Please give me guidance, solutions or corrections.
    For comments on this, Thanks in advance

    Hi Leendert,
    do you want to use the JMS API directly? In this case you have to create the connection factory on system X. From system Y, you access the JNDI on system X and look up the connection factory. Since you are accessing the JNDI on system X from outside, you need to set some properties to create the InitialContext:
        Properties env = new Properties();
        env.put(Context.INITIAL_CONTEXT_FACTORY, "com.sap.engine.services.jndi.InitialContextFactoryImpl");
        env.put(Context.PROVIDER_URL, <system X>:<p4 port>); // replace with your settings
        env.put(Context.SECURITY_PRINCIPAL, <user name>); // replace with your settings
        env.put(Context.SECURITY_CREDENTIALS, <password>); // replace with your settings
        naming = new InitialContext(env);
    Hope that helps.
    Regards,
    Sabine

  • JMS Receiver Adapter to MQ - additional message property error

    Hi,
    I'm trying to add addional message properties to a Receiver JMS message for MQ Server queue. Creating the message in the MQ queue only works when I don't try to
    add additional message properties. As soon as I try to add additional message properties the XI-Monitor says it's OK but there is no message in the queue.
    Our system constellation is a bit odd cause we implemented the JMS/MQ classes of release 5.3 in XI/J2EE.
    Our actual used MQ Server is on release 5.1 due to compatibilty reasons of other productive software.
    Is there a need to use a MQ server of release 5.3 ?
    Has anybody a step by step description for implementing a JMS receiver Adapter for MQ with with additional message property (f.ex. mesType = salesOrder) in the MQ header?
    Thanx a lot in advance
    Hans

    Hi,
    You also might want to look at sap note 856346...for this ..
    2.6) I am connecting to a JMS provider using JNDI mode. How do I add pass an extra name,value property pair while setting up the JNDI initial context?
    Answer: Assuming that your property value is a string, please add the following name, value pair in "JMS Additional properties" table of your channel configuration:
    JNDI.InitialContext.property.X=java.lang.String propertyName, java.lang.String propertyValue
    where X is a number, the LHS part needs to be put in the name column and the RHS part in the value column of the table respectively.
    This note covers frequently asked questions that arise during the installation, configuration or administration of the XI JMS Adapter from the Adapter Framework (AF).
    Other terms
    JMS - Java Message Service
    AF - Adapter Framework
    AE - Adapter Engine
    SP - Service Pack
    Reason and Prerequisites
    This note clarifies the frequently asked questions on the XI/PI JMS adapter for released 3.0, 7.0 and 7.1 in the form of an FAQ. References to external information is provided at the end.
    Solution
    1. Documentation
    1.1) Where do I find the JMS adapter documentation?
    Answer: In the SAP online help. Go to http://help.sap.com and select  SAP Netweaver-> SAP Netweaver 7.1 or SAP NetWeaver 7.0 (2004s) or SAP Netweaver 2004. This opens up SAP Library topic page for that release.
    For releases 3.0 and 7.0:
    Select SAP Netweaver Library -> SAP Netweaver by Key capability-> Process Integration by Key Capability -> SAP Netweaver Exchange Infrastructure -> Runtime -> Connectivity -> Adapters -> JMS Adapter.
    For releases 7.1:
    Select SAP Netweaver Process Integration 7.1 -> SAP Netweaver Process Integration Library -> Function Oriented View > Advanced Adapter Engine.
    In the topic page click on the JMS Adapter link.
    Alternatively, you may simply enter the search string "JMS adapter" and navigate to the documentation page directly from the relevant search results. This is much faster.
    1.2) Which JMS providers are supported?
    Answer: The JMS Adapter supports JMS 1.02b and 1.1. JMS providers that also claim to be compatible with JMS 1.02b or 1.1 can be accessed using the JMS Adapter.
    Furthermore, SAP makes no assertions as to whether a particular JMS provider is tested or can be recommended, because SAP has not set up a certification or testing process.
    2. Functions and architecture
    2.1) Does the JMS Adapter support JMS topics (publish&subscribe)?
    Answer: No. Currently the JMS Adapter works with JMS queues because 100% Exactly Once (In Order) service quality can only be guaranteed with  JMS queues. However, this capability might be planned for introduction at a future release. (no planned time estimate)
    2.2) I have JMS message properties that are of significant. How do I get this data into XI? How do I get this data out of XI?
    Answer:
    A feature generically referred to as XI adapter-specific message properties was introduced in the adapter framework. This allowed additional adapter information to be attached to a XI message which can be used the routing, mapping and BPE. The message properties of different adapters are differentiated by namespaces.
    If you are on XI 3.0 support pack 18 onwards, the JMS adapter allows you to copy JMS message properties into these XI adapter specific message properties (at the sender JMS channel), and to copy the values of XI adapter specific message properties back into JMS message properties (at the receiver JMS channel).
    The JMS adapter currently supports upto 10 JMS message properties to be copied into the XI message properties with the name DCJMSMessageProperty0 to DCJMSMessageProperty9. The configuration details of how to achieve this are explained in the sub-topic pages of the JMS adapter documentation. (See sub topics: "Configuring the Sender JMS adapter", "Configuring the Receiver JMS adapter")
    JMS Message properties can have values belonging to types: boolean, byte, short, int, long, float, double, and String (defined in the specification). These are all normalized to strings when converted to the their respective XI message properties at the sender JMS channel.
    However, in the receiver JMS channel configuration, you can enter specific JMS message property types, such that these normalized XI message properties may be coerced back into their original types (or any compatible JMS message property type) when translating a XI message into a JMS message.
    Transfer of custom JMS Message properties from/to XI adapters-specific message attributes is only supported for JMS compliant messages, i.e. this feature will not work for Websphere MQ in legacy mode.
    Deprecated Information on this feature
    Between support pack 14 to support pack 18, the JMS adapter allowed the allowed you append only up to two JMS string properties to the XI message in the sender channel, which could then be analyzed in XI routing, mapping and BPE. In the JMS receiver channel, the XI adapter-specific message attributes could be read, and up to two JMS string properties could be set. The names of the (now deprecated) XI message properties were DCJMSStringProperty1 and DCJMSStringProperty2.
    Regards
    Ravi Raman

  • Error in JMS receiver channel

    Hi,
    I have a JMS receiver channel which is connected to message queue of TIBCO which is working fine.
    But if I use the same channel after a day it goes into error and after restart of the channel it again works fine.
    Error: Message process failed. Cause: com.sap.engine.interfaces.messaging.api.exception.MessagingException: Unable to write newJMS Message body for message: 343241-......... Connector Exception: ... session ended..
    Thanks,
    Aravind

    Hello Aravind,
    I have made similar experiences while accessing JMS queues.
    Maybe the JMS queue was not available for a short time. So the receiver channel could not connect.
    Best regards,
    André

  • Send Idoc flat file message in JMS receiver adapter

    Hello,
    I am working on a scenario where we send Delvry 03 idoc from ECC to external system. To external system, we send the whole Idoc in flat file structure through JMS queue. I have used Idoc to flat file program in my interface mapping and have configured JMS receiver adapter with just default Module configs but, I am getting an error in communication channel monitoring for the messages.
    Please note that Idoc xml to flat file structure conversion is already done in the mapping, I need to just pass this idoc flat structure in the jms adapter. Hence ther eis no content conversion i nthe adapter..
    Please give some inputs..Here are the modules in my receiver adapter and nothing else..
    SAP XI JMS Adapter/ConvertMessageToBinary
    SAP XI JMS Adapter/SendBinarytoXIJMSService
    The error I get is in audit log
    Message processing failed. Cause: com.sap.aii.af.ra.ms.api.RecoverableException: No transition found from state: ERROR, on event: process_commence for DFA: CC_JMS_R:ca336a6689f837da8bd3387140fc4447
    in turn the message has this error if I open the message
    Whitespace is not allowed at this location. Error processing resource 'http://host:port/mdt/messageconten...
    and it shows one of the lines from idoc..flat file
    Any idea is greatly appreciated..Thank you..Thanujja

    The difference in what I suggest is that it is way simpler.
    Maybe you did not understand this, so will try to explain it better. Its not the best thing to do, but if JMS adapter doesn't budge then you can give it a shot.
    1. You continue to use the ABAP mapping in your interface mapping to map the Idoc xml to Idoc flat.
    2. Write a Java Map that will take the output of the ABAP mapping ; and then create a XML output which would be something like,
    <Root>
    <Idoc_Flat>
    <Data>ABAP Mapping Output<Data>
    </Idoc_Flat>
    </Root>
    3. Now use the simple content conversion in the JMS adapter to convert this to flat file.
    Regards
    Bhavesh

  • Adapter-specific message attributes for the JMS Receiver adapter

    Dear SAP Community,
    We are trying to activate some parameters at message level when SAP XI sent an interface (XML data) to IBM Websphere MQ. Programmaticaly, this is done the following way:
           TextMessage outMessage = session.createTextMessage();
           MQQueue replyToQ = new MQQueue("TESTQM01","SYSTEM.ADMIN.ACTIVITY.QUEUE");
           Destination replyTo = (Destination) replyToQ;
           outMessage.setJMSReplyTo(replyTo);
           outMessage.setIntProperty("JMS_IBM_Report_Exception", MQC.MQRO_EXCEPTION);
           outMessage.setIntProperty("JMS_IBM_Report_Expiration", MQC.MQRO_EXPIRATION);;
           outMessage.setIntProperty("JMS_IBM_Report_COA", MQC.MQRO_COA);
           outMessage.setIntProperty("JMS_IBM_Report_COD", MQC.MQRO_COD);
           outMessage.setIntProperty("JMS_IBM_Report_Discard_Msg", MQC.MQRO_DISCARD_MSG);
    This code is working fine.
    Since the documentation about this feature (Adapter-specific message attributes) is very light, We am not sure about the interpretation we made.
    First, we defined the following attributes: MS_IBM_Report_Exception, JMS_IBM_Report_Expiration, JMS_IBM_Report_COA, JMS_IBM_Report_COD, JMS_IBM_Report_Discard_Msg. All of them are with type int.
    Then we changed the mapping (XSL) to pass the value to the dynamic configuration, using the technical names (DCJMSMessageProperty0, ..., DCJMSMessageProperty4) and the value of the constants. We also specified a value in the Reply To Queue parameter of the adapter. As a test, We also change another parameter via the mapping (the correlation ID, to use the idoc number) and according to the log of the processed message, every thing is finde. According to the trace of the JMS adapter, everything is fine to. However, this has no impact on the message, only the correlation ID is changed.
    The JMS server is IBM Websphere MQ (v6.0.2.1). It is already in production and working fine. This is a change we have been asked to implement.
    Has anyone experience with the JMS receiver adapter-specific message attrbitutes ? What have we done wrong ?
    Any help is greatly appreciated.
    Regards,
    Gregory PFISTER
    SAP XI Analyst - Holcim

    Hi Neha,
    pls do chk the below links for SOAP adapter message attributes
    http://help.sap.com/saphelp_nwpi71/helpdata/en/fc/5ad93f130f9215e10000000a155106/frameset.htm
    http://help.sap.com/saphelp_nw04/helpdata/en/43/0a7d1be4e622f3e10000000a1553f7/content.htm
    http://publib.boulder.ibm.com/infocenter/wbihelp/v6rxmx/index.jsp?topic=/com.ibm.wbia_adapters.doc/doc/sap_xi/sapximst38.htm
    http://publib.boulder.ibm.com/infocenter/wbihelp/v6rxmx/index.jsp?topic=/com.ibm.wbia_adapters.doc/doc/webservices/webservices16.htm
    Regards
    Sampath

  • Message to JMS Receiver

    Hi All,
    I have an XML output and I want to send it to a queue so that a JMS receiver listens to the queue and grabs the message. I am wondering as how to send the XML output tho.Any ideas?/
    Thanks.

    Hi All,
    I have an XML output and I want to send it to a queue so that a JMS receiver listens to the queue and grabs the message. I am wondering as how to send the XML output tho.Any ideas?/
    Thanks.

  • TS3992 How can I back up an iphone when I haven't set the phone up for back ups & the touch screen doesn't work? The phone can receive calls (not answer) & the pictures & messages can be seen but touch screen doesn't work to unlock the phone or select any

    How can I back up an iphone when I haven't set the phone up for back ups & the touch screen doesn't work? The phone can receive calls (not answer) & the pictures & messages can be seen but the touch screen doesn't work to unlock the phone or select anything. We want to save/transfer pictures, contacts, and music to the replacement phone.

    Try backing it up to your computer with iTunes.  Connect it to your computer, open iTunes, click on the name of the phone in iTunes, go to the Summary tab of your iTunes sync settings and click Back Up Now.  Also go to File>Devices>Transfer Purchases to transfer you apps and other purchased media to your iTunes library.

  • Cannot send XML request message - TREX doesn't return FQDN

    Hello all,
    is there any way to configure TREX, so that it always returns it's FQDN?
    I get the following error message from our SAP XECO (Shop) Java System.
    Full Message Text
    Object with category com.sap.isa.catalog.trex.TrexCatalogServerEngine could not be instantiated. Reason: cannot send XML request to http://saptx3:30305/TREX; reason: saptx3 (Errorcode 7262)
    The problem is, that TREX doesn't return it's FQDN.
    The TREX service as such is correctly configured in TREX Service "nameserver.address", "tcpip://hostname.domain:30301".
    I added the line
    SAPGLOBALHOST=saptx3.domain
    to the sapprofile.ini file. This didn't do the trick, unfortunately.
    Thanks a lot for your advice !
    Best Rgs,
    Thorsten

    HI Thorsten,
    Please ensure that your setting match that of note: 1479923 -  TREX: Queue server missing in KM TREX Monitor
    and also please check the following:
    Also do you have any proxy or firwall between TREX and the portal?
    It can to be that the problem is related to the proxy configuration in
    the Portal. Could you please check if you specified proxy in the
    System Administration -> System Configuration ->Service Configuration->
    Applications (Content Catalog) -> com.sap.portal.ivs.httpservice ->
    Services -> Proxy
    If a proxy server is entered there, you have to enter the TREX host in
    the http - bypass Proxy Servers.
    many thanks
    Orla.

  • Jms receive timeout problem

    Hi guys,
    I want to receive messages on a timeout basis. However, my code always stuck at a certain point. Here is my source code:
    import javax.jms.*;
    import javax.naming.Context;
    import javax.naming.NamingException;
    import javax.naming.spi.NamingManager;
    import java.util.Hashtable;
    public class JmsRecv {
        public static void main(String[] args) throws JMSException, NamingException {
            Context JndiContext = createContextForWeblogic(args[0]);
            QueueConnectionFactory TheQueueConnectionFactory = (QueueConnectionFactory) JndiContext.lookup("weblogic.jms.ConnectionFactory");
            Queue q = (Queue) JndiContext.lookup("Queue_A");
            QueueConnection qc = TheQueueConnectionFactory.createQueueConnection();
            qc.start();
            QueueSession qs = qc.createQueueSession(false, Session.AUTO_ACKNOWLEDGE);
            QueueReceiver qr = qs.createReceiver(q, null);
            Message mrecv = null;
            long elapsed = 0;
            int index = 1;
            while (mrecv == null && elapsed < 200) {
                long start = System.currentTimeMillis();
                mrecv = qr.receive(10);
                elapsed = System.currentTimeMillis() - start;
                System.out.println("index=" + index++ + " elapsed=" + elapsed);
            qr.close();
            qs.close();
            qc.close();
        static Context createContextForWeblogic(String connectionURL) {
            Context ctx = null;
            Hashtable env = new Hashtable();
            env.put(Context.INITIAL_CONTEXT_FACTORY, "weblogic.jndi.WLInitialContextFactory");
            env.put(Context.PROVIDER_URL, connectionURL);
            try {
                ctx = NamingManager.getInitialContext(env);
            } catch (Exception e) {
                e.printStackTrace();
                MSFException msfException = new MSFException(e.getMessage());
                msfException.initCause(e);
                throw msfException;
            return ctx;
    }And the result is always:
    index=1 elapsed=31
    index=2 elapsed=16
    index=3 elapsed=15
    index=139 elapsed=16
    index=140 elapsed=15
    index=141 elapsed=9391
    It always stops at index 141. Why the jms receive with timeout works initially then doesn't work as expected? Any ideas?? I have a similar problem with send too. Send works quickly initially but at a certain point sending takes too much time. Thanks.
    Gurkan

    try moving
    long start = System.currentTimeMillis();
    outside your while loop. That is your starting point and it should change after you start. But having it in the loop resets it.

  • IDoc Transport Acknowledge doesn't return to PI 7.0 automatically

    Hi all,
    I realized an Integration scenario in which PI 7.0 generates custom IDocs messages (like MBGMCR) and send them to a SAP system (4.6 C). In particular there are the scenario steps:
    1. BPM -> IDoc msg
    2. IDoc msg transport ACK -> BPM
    3. BPM -> JDBC updating
    When SAP receive IDocs must send back to PI the related Transport Acknoledgement in order to complete the Integration Scenario with JDBC updating.
    So I observe that, if I don't refresh IDoc messages on SXMB_MONI, the Transport ACK doesn't return back from SAP to PI and the BPM remains pending.
    Any ideas?
    Thanks in advance,
    GB

    Hi Gaurav,
    could you please tell me which are these parameters:
    - partner number (for the receiver)
    - partner type (for the receiver)
    - partner role  (for the receiver)
    In my scenario PI 7.0 sends IDocs to R/3 so the receiver (written in the point 3 of the link you sent me) should be R/3.
    It's right?
    I'm unable to find the Parner Role. In which transaction can I found it?
    Thanks,
    GB

  • JMS receiver adapter configuration error

    Hi All,
    I am facing an issue with JMS receiver adapter. My Configuration parameters for receiver adapter are as follows.
    1.Transport protocol:WebspherMQ (MQSeries) JMS provied
    2.Message porotocol:JMS 1.x
    3.Adapter Enigen: Integration Server
    4.QueueConnecation Factory Java Class:com.ibm.mq.jms.MQQueueConnectionFactory
    5.Queue Java Class:com.ibm.mq.jms.MQQueue
    6.IP Address or server name:<Host Name>
    7.Server port:1414
    8.Queue Mannager Name:TestQM
    9.channal name:Recv_Channel
    10.JMS queue:SAP_PI
    11.Transport/netwrok protocol:TCP/IP
    12.JMS compliant:WebSpherMQ(non jms)
    13.Delivery mode of message Producer:Persist JMS Messages in the JMS provider
    14.Mapping of message:Message Payload=JMS Payload
    In adapter monitor, the adapter status shows below error.
    <b>Receiver channel. Details: (No detail information set.)</b>
    I have already installed the external drivers for JMS adapter. Can someone help me if I am missing some parameter in the above configuration.
    Thanks in advance
    Regards,
    Ashish

    Hi,
    I am getting the below error in Audit Log.
    Error - Exception caught by adapter framework: The JMSSender returned no JMSTextMessage to use. Must abort send process.
    Error - Delivery of the message to the application using connection AFW failed, due to: The JMSSender returned no JMSTextMessage to use. Must abort send process..
    Can someone please help me in resolving this issue...
    Thanks in advance.
    Regards,
    Ashish

  • JMS Receiver error: Null pointer received from QueueConnectionFactory JNDI

    Hello gurus,
    I need integrate PI 7.1 with EMS Tibco.
    I deployed the jar files:
    tibrvjms.jar
    tibjmsufo.jar
    tibjmsapps.jar
    tibjmsadmin.jar
    tibjms.jar
    tibemsd_sec.jar
    slf4j-simple-1.4.2.jar
    slf4j-api-1.4.2.jar
    jms.jar
    (and then restard the j2ee engine).
    Hi,
    I put the following parameters at the JMS Receiver Communication Channel in Integration Directory :
    Transport Protocol : Access JMS Provider with JNDI
    JNDI Lookup Name of QueueConnectionFactory : QueueConnectionFactory (and I try too with GenericConnectionFactory)
    JNDI Lookup Name of jms queue : SAPToTibcoQueue
    Name of JNDI initial context factory : com.tibco.tibjms.naming.TibjmsInitialContextFactory
    JNDI server address : tibjmsnaming://172.18.xxx.xx:7222
    In the RWB the JMS Channel is red with the following error message :
    "Receiver channel. Details: Null pointer received from QueueConnectionFactory JNDI lookup."
    Can someone help me?
    Thanks in Advanced!!

    HI,
    Can you try these below options.
    1) Can you please check whether you have deployed all the below jar files.
    crimson.jar
    jaxp.jar
    jcert.jar
    jms.jar
    jndi.jar
    jnet.jar
    jsse.jar
    jta-spec1_0_1.jar
    tibcrypt.jar
    tibjms.jar
    tibjmsadmin.jar
    tibjmsapps.jar
    tibrvjms.jar
    2) there is a service which is called either Classloader Viewer or Classpath Resolver on the server node in the J2EE Visual Admin. In that service you see a list of all deployed sdas, so you can check for jmsproviderlib. Then if you click on that to open, it should show you all the jar files that came in with the deployment.
    JMS Configuration - Tibco JMS ?
    Regards,
    Raju

  • JMS Type in JMS Receiver

    Experts
    I need to send JMS Type to the JMS Receiver.
    The following UDF was used.
    DynamicConfiguration conf = (DynamicConfiguration) container.getTransformationParameters().get(StreamTransformationConstants.DYNAMIC_CONFIGURATION);
    DynamicConfigurationKey keyHeader1 = DynamicConfigurationKey.create("http://sap.com/xi/XI/System/JMS","DCJMSType");
    String a="341";
    conf.put(keyHeader1,a);
    return "";
    Selected ASMA in the Receiver channel. Anything else needs to be done ?
    Thanks and regards,
    J Augastine

    Abhishek
    Modified the UDF.
    Also
    In the  JMS Receiver channel did the following
    - Checked the box for 'Use Adapter Specific Message Attributes'
    - Checked the box for 'Fail if Adapter Specific Message Attributes missing'
    - Checked the box for 'Specify Additional JMS Message Properties'
    - Defined  property in the table and set the Java type
    DCJMSMessageProperty0      String
    Under the Module tab,
    - Added the module AF_Modules/DynamicConfigurationBean in position 1 with module key HEADER
    - Added module configuration as follows:
    Module key HEADER
    Parameter name key.0
    Parameter value write http://sap.com/xi/XI/System/JMS DCJMSMessageProperty0
    Module key HEADER
    Parameter name value.0
    Parameter value JMS DCJMSMessageProperty0
    What change needs to be done ???

Maybe you are looking for