JMS Adapter to remote JMS Server in ESB??

Has anyone successfully setup a JMS adapter in the ESB to talk to a JMS server on a remote host?
We are using OC4J JMS and so I followed the instructions in section 5.2.1.7 in the Adapters guide on this. I updated the oc4j-ra.xml file. The guide didn't state which version of oc4j-ra.xml to update, but I've been told to use the one in:
$ORACLE_HOME/j2ee/<oc4j>/application-deployments/default/
So, I added the XML block as specified in this section and made the JMS Connection JNDI name match that of my JMS Adapter. However, the Adapters guide then states the following:
In addition, you must have the file META-INF/application-client.xml in the
classpath. The contents of the file can be the following:
<application-client/>
To put this file in the classpath, put the specified contents into the file at Oracle_
Home\bpel\system\classes\META-INF\application-client.xml and
restart Oracle BPEL Server.
This is a problem for me because I have an advanced installation with ESB and OWSM on top of OC4J, but I do not have BPEL installed in this location. As such, the file $ORACLE_HOME/bpel/system/classes/META-INF/application-client.xml does not exist. I did a search and did find an application-client.xml at the following location:
$ORACLE_HOME/j2ee/oc4j_esbdt/connectors/JmsAdapter/JmsAdapter/META-INF
But at this point, I don't know what to do with it to ensure it is in the classpath. The Adapters guilde says to cycle the BPEL Server, so I cycled the ESB for good measure, then deployed my project, but no luck! It is still listening to the local jms server and not the remote one.
Has anyone successfully set this up? What am I missing or doing wrong?

The above classpath requirement should only ensure that BPEL module can access the JMS adapter. Otherwise it should be OK.
I would reccommend to try to establish the JMS connection and see if some parts of the Oracle AS will throw any exception or something. It might start working as well.
As I understand, you are trying to access OC4J JMS from another server. As JMS is purely TCP level protocol there should be no problem accessing it from anywhere. Only the addresses and ports must be reviewed and ensure that they point to correct place, that usernames and passwords are correct and that there is a JNDI connectivity available as you use JNDI to get the connection factories.
Rein

Similar Messages

  • JMS Adapter Configuration (Access JMS Provider Generically)

    Hi Exports,
    How can i configure JMS adapter Using Access JMS Provider Generically, where can we mentioned target server. there is Quename and username and password but there is no target server details field. could you please give me suggetion how to configure this.

    Hi,
    This will help you
    JMS Adapter
    /people/kan.th/blog/2007/02/05/exploring-jms-and-sap-xi-jms-adaper
    http://help.sap.com/saphelp_nw2004s/helpdata/en/cd/d85a9d6fab7d4dbb7ae421f710626c/content.htm
    Sender Jms Adapter
    http://help.sap.com/saphelp_nw2004s/helpdata/en/f4/2d6189f0e27a4894ad517961762db7/content.htm
    Receiver Jms Adapter
    http://help.sap.com/saphelp_nw2004s/helpdata/en/10/b1b4c8575a6e47954ad63438d303e4/content.htm
    Regards
    Agasthuri Doss

  • PI 7.11 JMS adapter using JNDI weblogic server issue

    Hi SAP experts,
    I have a scenario to integrate to a application using JMS adapters. we use SAP PI 7.11 version.
    We have deployed JMS drivers successfully and We face issue here to connect to weblogic server
    We are using JMS adapter using JNDI to connect to weblogic server version 10.3.
    Can anyone help with the exact format to be used in JMS properties table and additional parameters table in JMS communication channel. Your quick help will be appreciated.
    A channel error occurred. The detailed error (if any) : com.sap.aii.adapter.jms.api.connector.ConnectorException: Error looking up destination: AccrualDetailsQueue for profile:  ConnectionProfile of channel: CC_SND_JMS on node: 3010950 having object id: 673696a9fe8c39fdab32213f0930afb3: javax.naming.NameNotFoundException: Unable to resolve 'AccrualDetailsQueue'. Resolved ''<br> at com.sap.aii.adapter.jms.core.connector.JndiConnectorImpl.createDestination(JndiConnectorImpl.java:168)<br

    Hi Padmini,
    Refer to the following link:
    http://help.sap.com/saphelp_nw04/helpdata/en/24/4cad3baabd4737bab64d0201bc0c6c/content.htm
    It was very helpful to me, for configuring the additional parameters in the communication Channel JMS.
    I leave you some screenshots of the settings that I did.
    I seize the opportunity to ask you, where do I can get the drivers (.Jar) for Weblogic?
    Regards.
    Rodrigo.

  • JMS Adapter - Set Additional JMS Parameters or Replace Default Settings

    Hi colleagues,
    We are using PI/XI 7.0 (SP 12).
    In trying to set up a Communication Channel using JMS Adapter to connect to Oracle AQ, I do not see the checkbox "Set Additional JMS Parameters or Replace Default Settings" , nor is the table for the parameters / value visible.
    We have deployed the driver file as described in the How-to- guide: How To Install and Configure External Drivers for JDBC & JMS Adapters
    [http://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/f04ce027-934d-2a10-5a8f-fa0b1ed4d88f?quicklink=index&overridelayout=true]
    In setting up the Communication Channel so far:
    Type: Sender
    Transport Protocol: Access JMS Provider Generically
    Message Protocol:  JMS 1.x
    Adapter Engine:      Integration Server
    After this I expect to see the checkbox  "Set Additional JMS Parameters or Replace Default Settings", but it is not there.
    Therefore I am not able to select it in order to enter parameters like:
    JMS.QueueConnectionFactoryImpl.classname
    JMS.QueueConnectionFactoryImpl.method.setHostName
    JMS.QueueImpl.classname
    JMS.QueueImpl.constructor.... etc
    Can someone please share if this because we are on too low SP or do we need to do something additional before it becomes visible?  Is this a feature that only became available as of PI/XI 7.0 SP 13 or 14 ?
    I checked both Sender and Receiver channel type, and it does not appear for both.
    Thanks & Cheers,
    Jodie

    Hi experts,
    We are using PI 7.1 and I've set up a communication Channel using JMS Adapter to send
    messages to a Sonic MQ queue.
    I need to send some values as JMS parameters, two of which are constants and two are values
    from the Sender message. I tried defining and setting up the parameters with constants values
    in the Communication Channel under the Advanced tab by selecting the check-box
    set Adapter-specific Message Attributes as follows:
    Name     TYPE
    ContentType     String
    ReturnValue     boolean
    Name     VAlue
    Contenttype     CompanyCode
    ReturnValute     true
    This however lead to an error in the Adapter Engine (RWB).
    My problem is:
    1. Can anyone please instruct me as to how to go about defining and setting up
       additional JMS parameters?
    2. How to go about defining/setting up variables that will get their values from
       the sender message?
    Thanks & Cheers,
    Joe

  • Scenarios using Sender JMS adapter and Reciver JMS adapter

    Hi All,
    I am not able to find god step by step blog on senderJMS adapter and Receiver JMS adapter.
    also please explain when we use JMS.What does a messng system means?please provide some examples.
    Thanks and regards

    Hi  Goyal,
    Messaging System :
    Messaging system allows separate, uncoupled applications to reliably communicate asynchronously. The messaging system architecture generally replaces the client/server model with a peer-to-peer relationship between individual components, where each peer can send and receive messages to and from other peers.
    Go thru this you will get better idea :
    http://java.sun.com/developer/technicalArticles/Networking/messaging/
    JMS adapter (Java Message Service) enables you to connect messaging systems to the Integration Engine or the PCK.
    regards
    Ganga

  • Sender JMS Adapter error: The JMS provider gave the error message as Not permitted, and the error code is null

    I am trying to connect tibcoems with PI using a Sender jms adapter.After successfully installing the drivers , the sender adapter goes into error.
    "The JMS Provider gave the error message as Not permitted, and the error code is null"
    The Transport protocol is 'Access JMS Provider with JNDI' and i have been given the required parameters from the tibco guys.
    Your input are highly appreciated.
    Shyam

    Hi AQmit,
    Thanks for the reply.
    Please find the screenshots of what i am trying to do.
    Also, Can u direct me how to check the right logs?

  • JMS adapter IBM MQ Server integration with SSL

    Hello,
    We have a integration between PI and IBM Websphere MQ,normally we can able to do this with JMS adapter.
    But MQ Server side is using SSL and they will send us a certificate, so we need to communicate JMS and MQ queue and JMS does not support SSL directly.
    i have done some searches in sdn but i can't find a good guide or explained solve.
    i will be very appriciated for any help or idea about this issue.
    Our PI system:  SAP PI 7.1 EHP1
    Integration flow like this;
    ERP -> PI -> IBM MQ Queue (SSL),
    IBM MQ Queue (SSL) -> PI -> ERP

    Hi all,
    We have integrated PI and IBM Websphere MQ with JMS adapter and this is working any problems.
    Now we want apply the note 1869690
    https://websmp130.sap-ag.de/sap(bD1lbiZjPTAwMQ==)/bc/bsp/sno/ui_entry/entry.htm?param=69765F6D6F64653D3030312669765F7361706E6F7465735F6E756D6265723D3138363936393026
    and securize the interface.
    We have SAP PI 7.1 EHP 1 SP12 , it's possible aply this note? or we need to develop adapter module?
    Can you help us?
    Thanks and regards

  • Initiate fails in BPEL Console for BPEL process connecting to JMS Adapter

    We have a BPEL process picking up data from JMS Queue of TIBCO EMS server. When we try to run this process from BPEL Console Initiate tab, we get following error dump :
    Oracle BPEL Process Manager Full Cycle
    An unexpected error has occurred while executing your request. This is most likely related to a defect in the Oracle BPEL Process Manager product. We apologize you can post the error to the OTN forum and we will get back to you as soon as possible.
    Attachments:
    Build Information:
    Oracle BPEL Server version 10.1.3.1.0
    Build: 0
    Build time: Mon May 15 06:39:46 PDT 2006
    Build type: release
    Source tag: PCBPEL_SOABETA_GENERIC_060515.0600
    Exception Message:
    [javax.servlet.ServletException]
    The system encounters errors while running as the authenticated identity.
    Exception Trace:
    javax.servlet.ServletException: The system encounters errors while running as the authenticated identity.
         at oracle.security.jazn.oc4j.JAZNFilter.doFilter(JAZNFilter.java:416)
         at com.evermind.server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:622)
         at com.evermind.server.http.ServletRequestDispatcher.unprivileged_include(ServletRequestDispatcher.java:161)
         at com.evermind.server.http.ServletRequestDispatcher.access$000(ServletRequestDispatcher.java:50)
         at com.evermind.server.http.ServletRequestDispatcher$1.oc4jRun(ServletRequestDispatcher.java:98)
         at oracle.oc4j.security.OC4JSecurity.doPrivileged(OC4JSecurity.java:283)
         at com.evermind.server.http.ServletRequestDispatcher.include(ServletRequestDispatcher.java:103)
         at com.evermind.server.http.EvermindPageContext.include(EvermindPageContext.java:395)
         at displayProcess.jspService(_displayProcess.java:857)
         at com.orionserver.http.OrionHttpJspPage.service(OrionHttpJspPage.java:59)
         at oracle.jsp.runtimev2.JspPageTable.service(JspPageTable.java:453)
         at oracle.jsp.runtimev2.JspServlet.internalService(JspServlet.java:590)
         at oracle.jsp.runtimev2.JspServlet.service(JspServlet.java:514)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
         at com.evermind.server.http.ResourceFilterChain.doFilter(ResourceFilterChain.java:64)
         at oracle.security.jazn.oc4j.JAZNFilter$1.run(JAZNFilter.java:392)
         at java.security.AccessController.doPrivileged(Native Method)
         at javax.security.auth.Subject.doAsPrivileged(Subject.java:517)
         at oracle.security.jazn.oc4j.JAZNFilter.doFilter(JAZNFilter.java:406)
         at com.evermind.server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:622)
         at com.evermind.server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:369)
         at com.evermind.server.http.ServletRequestDispatcher.unprivileged_forward(ServletRequestDispatcher.java:260)
         at com.evermind.server.http.ServletRequestDispatcher.access$100(ServletRequestDispatcher.java:50)
         at com.evermind.server.http.ServletRequestDispatcher$2.oc4jRun(ServletRequestDispatcher.java:194)
         at oracle.oc4j.security.OC4JSecurity.doPrivileged(OC4JSecurity.java:283)
         at com.evermind.server.http.ServletRequestDispatcher.forward(ServletRequestDispatcher.java:199)
         at com.collaxa.cube.fe.DomainFilter.doFilter(DomainFilter.java:131)
         at com.evermind.server.http.EvermindFilterChain.doFilter(EvermindFilterChain.java:15)
         at oracle.security.jazn.oc4j.JAZNFilter$1.run(JAZNFilter.java:392)
         at java.security.AccessController.doPrivileged(Native Method)
         at javax.security.auth.Subject.doAsPrivileged(Subject.java:517)
         at oracle.security.jazn.oc4j.JAZNFilter.doFilter(JAZNFilter.java:406)
         at com.evermind.server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:620)
         at com.evermind.server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:369)
         at com.evermind.server.http.HttpRequestHandler.doProcessRequest(HttpRequestHandler.java:869)
         at com.evermind.server.http.HttpRequestHandler.processRequest(HttpRequestHandler.java:449)
         at com.evermind.server.http.HttpRequestHandler.serveOneRequest(HttpRequestHandler.java:216)
         at com.evermind.server.http.HttpRequestHandler.run(HttpRequestHandler.java:117)
         at com.evermind.server.http.HttpRequestHandler.run(HttpRequestHandler.java:110)
         at oracle.oc4j.network.ServerSocketReadHandler$SafeRunnable.run(ServerSocketReadHandler.java:260)
         at oracle.oc4j.network.ServerSocketAcceptHandler.procClientSocket(ServerSocketAcceptHandler.java:233)
         at oracle.oc4j.network.ServerSocketAcceptHandler.access$800(ServerSocketAcceptHandler.java:33)
         at oracle.oc4j.network.ServerSocketAcceptHandler$AcceptHandlerHorse.run(ServerSocketAcceptHandler.java:847)
         at com.evermind.util.ReleasableResourcePooledExecutor$MyWorker.run(ReleasableResourcePooledExecutor.java:303)
         at java.lang.Thread.run(Thread.java:595)
    Also the BPEL process containing JMS adapter is not able to pick up data from JMS queue.
    The same adapter was used in ESB service as well, which is working fine. There are no issues in ESB JMS Adapter connecting to JMS Queue of TIBCO EMS server.
    Your help is appriciated.

    Try the BPEL / SOA forum, you'll get more help there.
    -steve-

  • Sender JMS Adapter - NOT Working

    Hello Everybody - We are on SP13, also installed JMS Driver files on the system. We are running, Central Adapter Engine.
    We configured the Sender JMS Adapter for WBI MQ->XI->SAP scenario. We need to JMS Adapter to be configured to connect to WBI from XI. Everything looks great in configuration but in the Adpater Monitoring, JMS Adapter is with Error Status and Message says "Sender channel. Details: (No detail information set.)".
    Does anybody has any idea about this error ?
    I checked SAP Help link as well on this. Based on this link http://help.sap.com/saphelp_nw04/helpdata/en/ca/e7673c86d19b35e10000000a11402f/frameset.htm. Do we need to configure this JMS Adapter somewhere on teh server as well ? If yes, then where ? Pls respond if you have any clue about it.
    Thanks in anticipation...

    Hello Stefan - Thanks for response.
    Here are the Parameters.......
    Adapter Type: JMS
    Sender Type Clicked
    Transport protocol:WebSphereMQ (non-JMS)
    Message protocol:JMS 1.x
    Adapter Engine:Integration Server
    Queue ConnectionFactory Java Class:com.ibm.mq.jms.MQQueueConnectionFactory
    Queue Java Class:com.ibm.mq.jms.MQQueue
    IP Address or Server Name:10.9.48.154
    Server Port:1414
    Queue Manager Name:WBIDEV
    Channel Name:WBI.XI.SVRCONN
    JMS Queue:XI_REQUEST
    Transport/Network Protocol:TCP/IP
    JMS-Compliant:JMS-Compliant
    Transactional JMS Session:Check box Set
    JMS Queue User:XIUSER
    JMS Queue Password:********
    Set XI message ID(MessageID) to:GUID(recommended value)
    Set XI cenversation ID(conversationID) to:No value
    Mapping of Message:Message Payload=JMS Payload
    Quality of Service:Exactly Once
    Time Period for duplicate check for EO(IO)(secs):86400
    Wait After Message Error(msecs):1000
    Wait before Reconnect(msecs):1000
    Status:Active
    The Error Message I see in the Adapter Monitor is "Sender Channel. Details: (No detail information set.)
    Pls advice If I am missing anything ?
    Thanks....
    Amrish.

  • How  to Set JMS property and Read JMS property in BPEL using JMS adapter

    Does any one know how to set or read more than one JMS property in BPEL using JMS adapter. My queue server is Oracle JMS server.
    Any help and sample is well appreciated

    Hi Van
    I have noted that only the attribute "type" is missing. It seems that when you create a "string" property, the attribute "type" is droped from the XML. If you use another type (as "integer" or "double") it stays there.
    If you try to read your properties, except for the "type" attribute, you should be successful, as I am. If you need, please tell me your email, I can send you my code.
    Source Code:
    in ASSIGN activity (process which SENDS the JMS message):
    <assign name="TESTES">
    <copy>
         <from expression="'string'"/>
         <to variable="HeaderJms" part="outboundHeader"
         query="/ns5:JMSOutboundHeadersAndProperties/ns5:JMSOutboundProperties/ns5:Property[1]/@type"/>
    </copy>
    <copy>
         <from expression="'name'"/>
         <to variable="HeaderJms" part="outboundHeader"
         query="/ns5:JMSOutboundHeadersAndProperties/ns5:JMSOutboundProperties/ns5:Property[1]/@name"/>
    </copy>
    <copy>
         <from expression="'value1'"/>
         <to variable="HeaderJms" part="outboundHeader"
         query="/ns5:JMSOutboundHeadersAndProperties/ns5:JMSOutboundProperties/ns5:Property[1]/@value"/>
    </copy>
    <bpelx:append>
         <bpelx:from>
         <Property name="" type="" value=""
              xmlns="http://xmlns.oracle.com/pcbpel/adapter/jms/"/>
         </bpelx:from>
         <bpelx:to variable="HeaderJms" part="outboundHeader"
              query="/ns5:JMSOutboundHeadersAndProperties/ns5:JMSOutboundProperties"/>
    </bpelx:append>
    <copy>
         <from expression="'string'"/>
         <to variable="HeaderJms" part="outboundHeader"
         query="/ns5:JMSOutboundHeadersAndProperties/ns5:JMSOutboundProperties/ns5:Property[2]/@type"/>
    </copy>
    <copy>
         <from expression="'name2'"/>
         <to variable="HeaderJms" part="outboundHeader"
         query="/ns5:JMSOutboundHeadersAndProperties/ns5:JMSOutboundProperties/ns5:Property[2]/@name"/>
    </copy>
    <copy>
         <from expression="'value2'"/>
         <to variable="HeaderJms" part="outboundHeader"
         query="/ns5:JMSOutboundHeadersAndProperties/ns5:JMSOutboundProperties/ns5:Property[2]/@value"/>
    </copy>
    </assign>
    in ASSIGN activity (process which READS the JMS message)
    <assign name="Assign_1">
    <copy>
    <from variable="Variable_1" part="inboundHeader"
    query="/ns3:JMSInboundHeadersAndProperties/ns3:JMSInboundProperties/ns3:Property[10]/@name"/>
    <to variable="temp"/>
    </copy>
    <copy>
    <from variable="Variable_1" part="inboundHeader"
    query="/ns3:JMSInboundHeadersAndProperties/ns3:JMSInboundProperties/ns3:Property[10]/@value"/>
    <to variable="temp"/>
    </copy>
    <copy>
    <from variable="Variable_1" part="inboundHeader"
    query="/ns3:JMSInboundHeadersAndProperties/ns3:JMSInboundProperties/ns3:Property[12]/@name"/>
    <to variable="temp"/>
    </copy>
    <copy>
    <from variable="Variable_1" part="inboundHeader"
    query="/ns3:JMSInboundHeadersAndProperties/ns3:JMSInboundProperties/ns3:Property[12]/@value"/>
    <to variable="temp"/>
    </copy>
    </assign>
    Note that I do not try to read the "type" attribute, otherwise it will fail.
    Here is the JMS Header Message received:
    <inboundHeader>
    <JMSInboundHeadersAndProperties xmlns="http://xmlns.oracle.com/pcbpel/adapter/jms/">
    <JMSInboundHeaders>
    <JMSCorrelationID>
    bpel://localhost/pi_lms-c001e/BpelPiAtualizacaoC001E~1.0/3200025-BpInv0-BpSeq1.6-2
    </JMSCorrelationID>
    <JMSDeliveryMode>2</JMSDeliveryMode>
    <JMSExpiration>0</JMSExpiration>
    <JMSMessageID>ID:467DFA1FA1ED459EBF37F51F596C3F12</JMSMessageID>
    <JMSPriority>4</JMSPriority>
    <JMSRedelivered>false</JMSRedelivered>
    <JMSType>com.mercurio.lms.integration.c001eip.c001EIntegrationPoint</JMSType>
    <JMSTimestamp>1201552046253</JMSTimestamp>
    </JMSInboundHeaders>
    - <JMSInboundProperties>
    <Property name="JMSXDeliveryCount" type="integer" value="1"/>
    <Property name="JMSXRecvTimestamp" type="long" value="1201552046698"/>
    <Property name="JMSXUserID" value="lms_dev_int_v1_user"/>
    <Property name="JMS_OracleDeliveryMode" value="2"/>
    <Property name="JMS_OracleTimestamp" type="long" value="1201552046253"/>
    <Property name="JMS_OracleDelay" type="long" value="0"/>
    <Property name="JMSXState" type="integer" value="0"/>
    <Property name="IAS_VERSION" value="10.1.3"/>
    <Property name="JMS_OracleDeliveryMode" value="2"/>
    <Property name="name" value="value1"/> ("type" attribute was droped!!!)
    <Property name="JMS_OracleTimestamp" type="long" value="1201552046253"/>
    <Property name="name2" value="value2"/> ("type" attribute was droped!!!)
    </JMSInboundProperties>
    </JMSInboundHeadersAndProperties>
    </inboundHeader>
    Regards
    Marcelo

  • JMS adapter error in MQSeries connection

    Dear All,
    i am getting the below error in Communicatin Channel Monitoring for my sender JMS adapter:
    Error during channel initialization; exception trace: javax.jms.JMSException: MQJMS2005: failed to create MQQueueManager for '<IP_ADRESS>:<MQ_QUEUE_MANAGER>'
         at com.ibm.mq.jms.services.ConfigEnvironment.newException(ConfigEnvironment.java:546)
         at com.ibm.mq.jms.MQConnection.createQM(MQConnection.java:1137)
         at com.ibm.mq.jms.MQConnection.createQMNonXA(MQConnection.java:799)
    com.ibm.mq.MQException:  Message catalog not found
         at com.ibm.mq.MQManagedConnectionJ11.&lt;init&gt;(MQManagedConnectionJ11.java:171)
         at com.ibm.mq.MQClientManagedConnectionFactoryJ11._createManagedConnection(MQClientManagedConnectionFactoryJ11.java:228)
    i have written '<IP_ADRESS>:<MQ_QUEUE_MANAGER>' just to hide the data - i am getting <IP_ADRESS> as IP Adress i gave in JMS adapter and <MQ_QUEUE_MANAGER> as Queue Manager i gave in JMS adapter.
    i am using the correct IP and 1414 port of MQSeries server. I have used a MQQueueManager defined in MQSeries. i have deployed JMS adapter properly in XI server.
    So can anybody suggest what could be the possible reason of this error and how to rectify it. It is slightly urgent.
    Thanks and Regards,
    Rajeev Gupta
    Edited by: RAJEEV GUPTA on Jan 29, 2008 2:32 PM
    Edited by: RAJEEV GUPTA on Jan 29, 2008 2:39 PM

    Hi,
    Check this as well [http://publib.boulder.ibm.com/infocenter/wmqv7/v7r0/index.jsp?topic=%2Fcom.ibm.mq.csqzaw.doc%2Fjm35210_.htm]
    Regards,
    Venkata S Pagolu

  • SAP XI JMS Adapter

    Gud Mrng , can any one provide me the information about JMS Adapter in SAP-XI,
    with screen shots.....Plz

    Hi,
    Please refer into this blog to use the J2EE WAS JMS Service of XI,
    /people/william.li/blog/2006/11/13/how-to-use-saps-webas-j2ees-jms-queue-in-exchange-infrastructure
    To connect XI to any other JMS adapters / service, you would need to install the driver of the JMS adapter on your XI server. Please look into this for the same,
    https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/3867a582-0401-0010-6cbf-9644e49f1a10
    Also, the SAP Library help on JMS adapters is quite good,
    http://help.sap.com/saphelp_nw04/helpdata/en/cd/d85a9d6fab7d4dbb7ae421f710626c/content.htm
    Regards
    Bhavesh

  • Configuring message redelivery with jmcjca (sun-jms-adapter) in Glassfish

    I use Glassfish v2 server and its OpenMQ as JMS Provider.
    My MDB is configured to use sun-jms-adapter for accessing JMS Provider.
    ra.xml of adapter wasn't change so all configuration is done through the sun-ejb-jar.xml of my MDB.
    Type of destination my MDB listens to is javax.jms.Topic.
    At the same time, I have defined the following redelivery strategy in the sun-ejb-jar.xml
    <activation-config-property>
    <activation-config-property-name>RedeliveryHandling</activation-config-property-name>
    <activation-config-property-value>2:1000; 3:move(queue:*psdmqqueue*)</activation-config-property-value>
    </activation-config-property>
    psdmqqueue is an administred server Destination of type javax.jms.Queue. So a target destination of MDB is topic and redelivery should be performed to queue
    The problem is that application deplyment failes with this configuration with the following exception:
    #|2008-11-22T18:38:48.152+0300|WARNING|sun-appserver9.1|com.stc.jmsjca.core.Activation|_ThreadID=169;_ThreadName=JMSJCA connect;_RequestID=ed86af75-1577-4548-ac57-60ca127a28a2;|JMSJCA-E016: [sync-Durable TopicSubscriber(provisioning_subscription)(lookup://targetTopic) @ [mq://localhost:7676/jms]]: message delivery initiation failed (attempt #85); will retry in 10 seconds. The error was: java.lang.ClassCastException: com.sun.messaging.jmq.jmsclient.XATopicSessionImpl
    java.lang.ClassCastException: com.sun.messaging.jmq.jmsclient.XATopicSessionImpl
    at com.stc.jmsjca.core.RAJMSObjectFactory.createDestination(RAJMSObjectFactory.java:423)
    at com.stc.jmsjca.core.Delivery.createDLQDest(Delivery.java:626)
    at com.stc.jmsjca.core.SyncDelivery.start(SyncDelivery.java:204)
    at com.stc.jmsjca.core.Activation.asyncStart(Activation.java:535)
    at com.stc.jmsjca.core.Activation.access$000(Activation.java:80)
    at com.stc.jmsjca.core.Activation$1.run(Activation.java:343)
    at java.lang.Thread.run(Thread.java:595)
    Could you please help me to figure out what is wrong with my configuration?
    Part of sun-ejb-jar.xml related to ra activation spec:
    <mdb-resource-adapter>
    <resource-adapter-mid>sun-jms-adapter</resource-adapter-mid>
    <activation-config>
    <activation-config-property>
    <activation-config-property-name>ConnectionURL</activation-config-property-name>
    <activation-config-property-value>lookup://targetConnFactory</activation-config-property-value>
    </activation-config-property>
    <activation-config-property>
    <activation-config-property-name>Destination</activation-config-property-name>
    <activation-config-property-value>lookup://targetTopic</activation-config-property-value>
    </activation-config-property>
    <activation-config-property>
    <activation-config-property-name>DestinationType</activation-config-property-name>
    <activation-config-property-value>javax.jms.Topic</activation-config-property-value>
    </activation-config-property>
    <activation-config-property>
    <activation-config-property-name>RedeliveryHandling</activation-config-property-name>
    <activation-config-property-value>2:1000; 3:move(queue:psdmqqueue)</activation-config-property-value>
    </activation-config-property>
    <!--subscription properties-->
    </activation-config>
    </mdb-resource-adapter>
    </ejb>
    </enterprise-beans>
    </sun-ejb-jar>

    Hi Alexej,
    I looked at the problem and found out what the issue is. We recently added some functionality that will test if the dead letter destination is in fact a valid destination -- we thought it's better to find that out upfront, rather than if an error occurs. This is especially important with dead letter destinations being looked up in JNDI: mistakes are easily be made there.
    In any case, this new functionality introduced a problem where messages are sent from a queue, and the dead letter destination is a topic, or vice versa, where messages are received from a topic, and the dead letter destination is a queue.
    In case you're wondering why: we still need to support JMS 1.0.2 servers. For these servers, the queues and topics are strictly segregated. We do have automated tests that test functionality across domains, but as it turns out, these tests also test some other functionality at the same time that fool the dead-letter-destination-validation into thinking it is the same messaging domain.
    In any case, I've have created a fix for this, and I'm testing it right now.
    I'll send you an updated RAR by email in case you don't want to wait until the updated bits are available for download. What you also could do, as a workaround, is doing the same trick that fooled the automated test: you can specify the redelivery handling in the MDB code, e.g.
    public void onMessage(Message message) {
    message.setStringProperty("JMS_Sun_JMSJCA_RedeliveryHandling", "2:1000; 3:move(queue:*psdmqqueue*)");
    // do stuff
    HTH, Frank Kieviet

  • Dynamic configuration bean in JMS Adapter

    Hello Experts,
    My scenario is JMS(Active MQ) to File.Its just Passthrough scenario and no mapping involved.
    Filename will be coming in one of the JMS Property (say businessId) and I need to set this filename to file adapter.
    I have refered the stefan's blog and used the Dynamic configuration bean module in sender JMS adapter.
    getFilename key.1 write http://sap.com/xi/System/JMS DCJMSMessageProperty4
    getFilename value.1 module.filename
    setFilename key.1 read http://sap.com/xi/System/File FileName
    setFilename value.1 module.filename
    But required filename is not populated in the target File.Any other configuration is missing here?

    Hi Karthiga
    Did you set the ASMA properties in both your sender JMS channel and receiver File channel?
    For the JMS adapter, as shown below, you will need to enter the DCJMSMessageProperty4 into the table
    Configuring the Sender JMS Adapter - Configuring the JMS Adapter in the Integration Directory/PCK - SAP Library
    If you want to set additional JMS message attributes, select Specify Additional JMS Message Properties (Maximum of 10).
    In the table, enter the names of the JMS message properties whose values are to be included in the message header of the PI message.
    The technical names of the additional attributes are DCJMSMessageProperty0, DCJMSMessageProperty1, ..., DCJMSMessageProperty9.
    For the File adapter, you need to check the ASMA FileName attribute.
    Once you have this configured, in your message, you should be able to see that the value is in the DynamicConfiguration section of the SOAP header.
    Rgds
    Eng Swee

  • Content Conversion in JMS Adapter

    Hi All,
    I am having a scenario JMS - XI - JDBC.
    Now I have to do the content conversion in the incming records.
    The sample incoming data is as follows:-
    <Field1>,<Field2>, ...,<Fieldn>        -->Row1
    {<Field1A>,<Field2A>, ...,<FieldnA>}   -->Row2
    {<Field1A>,<Field2A>, ...,<FieldnA>}   -->Row3
    <Field1B>,<Field2B>, ...,<FieldnB>     -->Row4
    {<Field1C>,<Field2C>, ...,<FieldnC>}   -->Row5
    {<Field1C>,<Field2C>, ...,<FieldnC>}   -->Row6
    {<Field1C>,<Field2C>, ...,<FieldnC>}   -->Row7
    Now at the target, we have 3 oracle tables, in which the data from the Row1 &4 will go to Table 1, Row2&3 --> Table2 and Row5,6 &7 --> Table3.
    The source data type that i m using is of the structure:-
    <TC>
      <GT>
        <Field1>
        <GS>
          <Field1A>
        </GS>
        <Field1B>
        <Field2B>
        <GDS>
          <Field1C>
        </GDS>
      </GT>
    </TC>
    Please help me out in the modules configuraton, how this can be handled.
    Thanks in advance, hope to receive some solution at the earliest.
    Rocky.

    Hi Rocky,
    Please have a look at these threads..
    JMS Adapter: Content Conversion
    JMS Adapter Content Conversion
    JMS Content Converrsion
    Hope these help you!
    cheers,
    Prashanth

Maybe you are looking for

  • Mirage Server Failure

    Hello Everyone, Here is my query " In a single Mirage server environment consider server failure occurs and mirage admins doesn't knows the cause for the server failure and he cannot estimate the time that will take to fix the server. We know that th

  • Using IDVD to author menus

    Is it possible to author the DVD menu, sub menus, etc. in iDVD and export it as a Disk Image into Compressor for compressing and burning to either DVD or BD?

  • What anti virus protection software is best compatible while running firefox?

    I get a message that not all of the software with Kasperksy is compatible with Firefox, and I am in the timeframe that I will be updating or adding a new anti virus software to my desktop xp system. Wondering what anti virus protection software is co

  • Export to QT - Transition VS Hyperlinks

    Hi, I've been banging my head on concrete with this problem : ) I have a keynote presentation that need to be exported to Quicktime. The keynote have hyperlinks jumping from slides to slides, not in order. Further to that, every slide open with in tr

  • Web page asks to install Flash Player again

    Hello everybody, I have a friend who has a recurrent well-known problem when she tries to watch a video with IE and Youtube. Web page asks her to install Flash Player again and it is not possible to view the video. No problem with Google Chrome and M