JMS Sender reconnect

Hi,
I´m using the JMS adapter as a Sender and want to know how the connection to the MQ is done. If i.ex. the external MQ is shut down for maintenance - how does the the JMS adapter in SAP XI reconnect when the MQ is up again?
Do we need to deactivate and activate the Communication Channel (i hope not!) or how is it done?
/Jakob

Hi Jakob,
SAP XI will try to reconnect when the next message is sent, e.g. if normally connects to the queue at activation or restart on SAP XI. It will only check again once it gets an error during sending to the queue.
We are using WebsphereMQ and no issue at all with MQ being down, SAP will try 3 times and then the message stays in the RWB and you can submit it again once MQ is up and running. If you know there is a maintenance coming in MQ I would disable the adapters as it is easier to resubmit them in the ABAP Stack with SXMB_MONI then RWB. My choice.
Cheers
Stefan

Similar Messages

  • Reconnect issue with JMS sender Communicatio channel

    Hi All,
       We need help for JMS sender channel.from last two days we are getting issue with JMS channels.they are looking green but not picking data from Mq ssue to this lot of messages got stuck in MQ queue and its stop writting messsages .
       Problem from PI side is JMS communication channels are not showing any issue.even they do not pick data or lost connection with MQ server they are looking green. so its very difficult for PI team to find out correct Comunication channels which stop picking up the data.when we start/stop that CC its start picking data.
    Do anybody face this issue.please do let us know permenent solution instead of doing start/stop when user report issue.
    Thanks in advance
    Best Regards
    Monica Bhosale
    Edited by: monica bhosale on Mar 8, 2012 8:56 AM

    we are using PI 7.11 and this issue was fixed in SP06
    until then one of the work around we were using was to schedule the adapter to stop and start every 3 hour or so

  • JMS Send Transaction Failing, due to resources could not be assigned

    I am trying to get a transaction of a JMS send to work where the origination of the send occurs in domain A and the message queue is hosted in domain B. I have been able to get this to work; however, this issue has shown up in recent tests. I haven't changed anything other than the version of the Oracle database client that is being used. I don't see any relationship between that and the persistent store.
    Both domains are hosted on the same computer and both domains are simple development domains. Trust is established between the domains using 'global trust'.
    I'm running Weblogic Server 10.3.4..
    I'm not sure how to get around this issue. I can't find any documentation...
    My suspicion is that there needs to be some special configuration for the transaction, since I'm using the default persistence store. The warnings seem to indicate the problem. The AdminServer is hosted on domain A and the AuditAdminServer on domain B...
    Any assistance will be greatly appreciated!
    Thanks in advance...
    Here is the stacktrace:
    <Apr 11, 2013 11:17:05 AM MDT> <Warning> <JTA> <BEA-110405> <Resource WLStore_audit_domain__WLS_AuditAdminServer was not assigned to any of these servers: AdminServer AuditAdminServer >
    <Apr 11, 2013 11:17:25 AM MDT> <Warning> <JTA> <BEA-110405> <Resource WLStore_audit_domain__WLS_AuditAdminServer was not assigned to any of these servers: AdminServer AuditAdminServer >
    <Apr 11, 2013 11:19:47 AM MDT> <Error> <EJB> <BEA-010026> <Exception occurred during commit of transaction Name=[EJB gov.va.med.datasharing.core.ServiceBusImpl.processInbound(java.lang.String,java.lang.Object)],Xid=BEA1-003FA101855115C0DB45(13340960),Status=Rolling Back. [Reason=javax.transaction.SystemException: Aborting prepare because the following resources could not be assigned: WLStore_audit_domain__WLS_AuditAdminServer],numRepliesOwedMe=0,numRepliesOwedOthers=0,seconds since begin=183,seconds left=22,XAServerResourceInfo[DefaultXADataSource_vhie_domain]=(ServerResourceInfo[DefaultXADataSource_vhie_domain]=(state=rolledback,assigned=AdminServer),xar=DefaultXADataSource,re-Registered = false),XAServerResourceInfo[WLStore_audit_domain__WLS_AuditAdminServer]=(ServerResourceInfo[WLStore_audit_domain__WLS_AuditAdminServer]=(state=new,assigned=none),xar=null,re-Registered = false),XAServerResourceInfo[WLStore_vhie_domain_VhieFileStore]=(ServerResourceInfo[WLStore_vhie_domain_VhieFileStore]=(state=rolledback,assigned=AdminServer),xar=WLStore_vhie_domain_VhieFileStore1316539,re-Registered = false),SCInfo[vhie_domain+AdminServer]=(state=rolledback),SCInfo[audit_domain+AuditAdminServer]=(state=rolling-back),properties=({weblogic.transaction.name=[EJB gov.va.med.datasharing.core.ServiceBusImpl.processInbound(java.lang.String,java.lang.Object)]}),local properties=({weblogic.jdbc.jta.DefaultXADataSource=[ No XAConnection is attached to this TxInfo ]}),OwnerTransactionManager=ServerTM[ServerCoordinatorDescriptor=(CoordinatorURL=AdminServer+192.168.1.120:7001+vhie_domain+t3+, XAResources={WLStore_vhie_domain_VhieFileStore, SDSDataSource_vhie_domain, DefaultXADataSource_vhie_domain, eis/jms/WLSConnectionFactoryJNDIXA, WSATGatewayRM_AdminServer_vhie_domain},NonXAResources={})],CoordinatorURL=AdminServer+192.168.1.120:7001+vhie_domain+t3+): weblogic.transaction.RollbackException: Aborting prepare because the following resources could not be assigned: WLStore_audit_domain__WLS_AuditAdminServer
         at weblogic.transaction.internal.TransactionImpl.throwRollbackException(TransactionImpl.java:1881)
         at weblogic.transaction.internal.ServerTransactionImpl.internalCommit(ServerTransactionImpl.java:345)
         at weblogic.transaction.internal.ServerTransactionImpl.commit(ServerTransactionImpl.java:239)
         at weblogic.ejb.container.internal.BaseRemoteObject.postInvoke1(BaseRemoteObject.java:625)
         at weblogic.ejb.container.internal.StatelessRemoteObject.postInvoke1(StatelessRemoteObject.java:49)
         at weblogic.ejb.container.internal.BaseRemoteObject.__WL_postInvokeTxRetry(BaseRemoteObject.java:444)
         at weblogic.ejb.container.internal.SessionRemoteMethodInvoker.invoke(SessionRemoteMethodInvoker.java:53)
         at gov.va.med.datasharing.core.ServiceBus_r6xnti_ServiceBusImpl.processInbound(Unknown Source)
         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
         at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
         at java.lang.reflect.Method.invoke(Method.java:597)
         at weblogic.ejb.container.internal.RemoteBusinessIntfProxy.invoke(RemoteBusinessIntfProxy.java:85)
         at $Proxy89.processInbound(Unknown Source)
         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
         at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
         at java.lang.reflect.Method.invoke(Method.java:597)
         at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:317)
         at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:198)
         at $Proxy91.processInbound(Unknown Source)
         at gov.va.med.datasharing.web.ServiceBusDelegate.processInbound(ServiceBusDelegate.java:43)
         at gov.va.med.datasharing.web.adc.PatientServiceImpl.changeADCStatus(PatientServiceImpl.java:58)
         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
         at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
         at java.lang.reflect.Method.invoke(Method.java:597)
         at org.springframework.expression.spel.support.ReflectiveMethodExecutor.execute(ReflectiveMethodExecutor.java:69)
         at org.springframework.expression.spel.ast.MethodReference$MethodValueRef.getValue(MethodReference.java:97)
         at org.springframework.expression.spel.ast.CompoundExpression.getValueInternal(CompoundExpression.java:81)
         at org.springframework.expression.spel.ast.SpelNodeImpl.getTypedValue(SpelNodeImpl.java:102)
         at org.springframework.expression.spel.standard.SpelExpression.getValue(SpelExpression.java:98)
         at org.springframework.binding.expression.spel.SpringELExpression.getValue(SpringELExpression.java:84)
         at org.springframework.webflow.action.EvaluateAction.doExecute(EvaluateAction.java:75)
         at org.springframework.webflow.action.AbstractAction.execute(AbstractAction.java:188)
         at org.springframework.webflow.execution.AnnotatedAction.execute(AnnotatedAction.java:145)
         at org.springframework.webflow.execution.ActionExecutor.execute(ActionExecutor.java:51)
         at org.springframework.webflow.engine.support.ActionTransitionCriteria.test(ActionTransitionCriteria.java:82)
         at org.springframework.webflow.engine.support.TransitionCriteriaChain.test(TransitionCriteriaChain.java:71)
         at org.springframework.webflow.engine.Transition.canExecute(Transition.java:195)
         at org.springframework.webflow.engine.Transition.execute(Transition.java:211)
         at org.springframework.webflow.engine.impl.FlowExecutionImpl.execute(FlowExecutionImpl.java:393)
         at org.springframework.webflow.engine.impl.RequestControlContextImpl.execute(RequestControlContextImpl.java:214)
         at org.springframework.webflow.engine.TransitionableState.handleEvent(TransitionableState.java:119)
         at org.springframework.webflow.engine.Flow.handleEvent(Flow.java:555)
         at org.springframework.webflow.engine.impl.FlowExecutionImpl.handleEvent(FlowExecutionImpl.java:388)
         at org.springframework.webflow.engine.impl.RequestControlContextImpl.handleEvent(RequestControlContextImpl.java:210)
         at org.springframework.webflow.engine.ViewState.handleEvent(ViewState.java:232)
         at org.springframework.webflow.engine.ViewState.resume(ViewState.java:196)
         at org.springframework.webflow.engine.Flow.resume(Flow.java:545)
         at org.springframework.webflow.engine.impl.FlowExecutionImpl.resume(FlowExecutionImpl.java:258)
         at org.springframework.webflow.executor.FlowExecutorImpl.resumeExecution(FlowExecutorImpl.java:169)
         at org.springframework.webflow.mvc.servlet.FlowHandlerAdapter.handle(FlowHandlerAdapter.java:183)
         at org.springframework.webflow.mvc.servlet.FlowController.handleRequest(FlowController.java:174)
         at org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter.handle(SimpleControllerHandlerAdapter.java:48)
         at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:925)
         at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:856)
         at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:915)
         at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:822)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:727)
         at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:796)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
         at weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:227)
         at weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:125)
         at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:300)
         at weblogic.servlet.internal.TailFilter.doFilter(TailFilter.java:26)
         at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
         at org.springframework.orm.jpa.support.OpenEntityManagerInViewFilter.doFilterInternal(OpenEntityManagerInViewFilter.java:180)
         at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
         at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
         at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.wrapRun(WebAppServletContext.java:3715)
         at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:3681)
         at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
         at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:120)
         at weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2277)
         at weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:2183)
         at weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1454)
         at weblogic.work.ExecuteThread.execute(ExecuteThread.java:207)
         at weblogic.work.ExecuteThread.run(ExecuteThread.java:176)
    Caused by: javax.transaction.SystemException: Aborting prepare because the following resources could not be assigned: WLStore_audit_domain__WLS_AuditAdminServer
         at weblogic.transaction.internal.TransactionImpl.abort(TransactionImpl.java:1153)
         at weblogic.transaction.internal.ServerTransactionImpl.globalPrepare(ServerTransactionImpl.java:2200)
         at weblogic.transaction.internal.ServerTransactionImpl.internalCommit(ServerTransactionImpl.java:279)
         ... 77 more
    .>

    It turns out that those packages are, indeed, in extra.
    I didn't think to look there, since I assumed that everything needed by base would be in [core].
    I assumed wrong.

  • Ignore record in JMS sender content conversion

    Hi,
    I am using JMS sender adapter with content conversion.
    In the input text file, I have to ignore the first record.
    for this, in Module tab I have given parameter like this:
    Plain2XML -> documentOffset -> 1
    so that it will not read the first record in the text file.
    But it is not working
    Please suggest the right way.
    Regards,
    Anil.

    It should be:
    xml.documentSkipFirstRows
    Regards
    Stefan

  • Need help about setting up a JMS sender channel

    I just started to play with PI for a few weeks and I'm trying to setup a simple JMS sender channel to read stuff from a WebSphere MQ.
    I've someone installed JMS adaptor for me, but we never know it is correctly installed or not. First question is "Is there any way we can verify JMS adapter is correctly installed or not?"
    In the Design: integration builder, I've a very defined a very simple data type(src_dt) which is a string and a message type(src_mt) which uses resp_dt. Finally I created a message interface (test_mia_out) that contains src_mt. At this point of time, I don't need message mapping so I didn't configurate this section.
    Then I went to Configuration: Integration builder and created a new communcation channel with the following setting:
    Parameter section:
    Adapter Type: JMS
    Transport Protocol: WebSphereMQ (Non-JMS)  <- if i don't use this option, i can't enter MQ connection detail in the Source section.
    Message Protocol: JMS 1.x
    Adapter Engine: Integration Server
    Source section:
    QueueConnectionFactory Java Class: com.ibm.mq.jms.MQQueueConnectionFactory
    Queue Java Class: com.ibm.mq.jms.MQQueue
    ...MQ connection detail...(IP, Port, Queue Manager, Channel and Queue Name )
    Transport Protocol: TCP/IP  <- this is consists to server side setting
    JMS-Compliant: JMS-Compliant
    Since I only want a very simple working sample, again I didn't change the content in receiver determination, interface determaintion and sender agreement.
    Now when I active this change and I saw the following error in the channel monitor:
    Short Log - Channel has internal error
    Admin Info - Exception: Channel with Status Unknown or Not Registered
    I did stop and start the service, refresh CPA cache and even restart the entire PI server, I always see this message and cannot find any more detail description about what is causing this problem.
    My PI Server version is 7.0 and MQ version is 5.3
    There's very limited resource about how to setup to read MQ message in PI and I'm stuck now. Therefore, I need a help from some experienced people to tell me if I have did something wrong or missed some steps?
    And if possible, could people mind to post a step by step go through how you setup it up?
    Edited by: Robert Fu on Jan 10, 2008 6:51 AM

    Before you use the JMS, you need to deploy some drivers related to specific MQseries, Kindly ensure that proper driver are deployed....
    If you use MQSeries 53x.xxx, you must enter the following JAR files in aii_af_jmsproviderlib.sda.
    com.ibm.mq.jar, com.ibm.mqbind.jar, com.ibm.mqjms.jar, connector.jar (use the JAR file from the J2EE client directory)
    check this link it will give you more inofmration
    http://help.sap.com/saphelp_nw04/helpdata/en/cd/d85a9d6fab7d4dbb7ae421f710626c/content.htm
    check this to get the condifuration the JMS
    How to use conversion modules in JMS - https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/docs/library/uuid/f02d12a7-0201-0010-5780-8bfc7d12f891
    Ref How To Use the Content Conversion Module in JMS Adapter - https://websmp106.sap-ag.de/~form/sapnet?_SHORTKEY=01100035870000582377&

  • JMS Sender Communication  Channel problem

    Hi XI gurus!!
    I have a JMS Sender Communication Channel that cannot get information from JMS TIBCO queue.
    In defaultTrace.XX.trc I see the following information and errors:
    #1.#00144F249F1500C70000087D00002D8300044A22A193A198#1207412506993#com.sap.aii.adapter.jms.core.connector.ConnectorImpl#sap.com/com.sap.xi.mdt#com.sap.aii.adapter.jms.core.connector.ConnectorImpl.buildConnection()#EFFIGUEIREDO#7191##sappix02_X02_21291150#XIAPPLUSER#81664000032811ddaadc00144f249f15#SAPEngine_Application_Thread[impl:3]_52##0#0#Path##Plain###Exiting method#
    #1.#00144F249F1500C70000087E00002D8300044A22A193A201#1207412506993#com.sap.aii.adapter.jms.core.connector.ConnectorImpl#sap.com/com.sap.xi.mdt#com.sap.aii.adapter.jms.core.connector.ConnectorImpl.buildSessions()#EFFIGUEIREDO#7191##sappix02_X02_21291150#XIAPPLUSER#81664000032811ddaadc00144f249f15#SAPEngine_Application_Thread[impl:3]_52##0#0#Path##Plain###Entering method#
    #1.#00144F249F1500C70000087F00002D8300044A22A193A552#1207412506993#System.err#sap.com/com.sap.xi.mdt#System.err#EFFIGUEIREDO#7191##sappix02_X02_21291150#XIAPPLUSER#81664000032811ddaadc00144f249f15#SAPEngine_Application_Thread[impl:3]_52##0#0#Error##Plain###2008-04-05 17:21:46 [161906789 SAPEngine_Application_Thread[impl:3]_52] [TIBCO EMS]: createQueueSession qsess=198151 qconn=45502 tran=true ackmode=1#
    #1.#00144F249F1500C70000088000002D8300044A22A193A670#1207412506994#com.sap.aii.adapter.jms.core.connector.ConnectorImpl#sap.com/com.sap.xi.mdt#com.sap.aii.adapter.jms.core.connector.ConnectorImpl.buildSessions()#EFFIGUEIREDO#7191##sappix02_X02_21291150#XIAPPLUSER#81664000032811ddaadc00144f249f15#SAPEngine_Application_Thread[impl:3]_52##0#0#Info##Java###Sucessfully created session {0} for profile {1}#2#com.tibco.tibjms.TibjmsQueueSession@3a5f233#
    {GenericConnectionProfileImpl
    {Description=ConnectionProfile of channel: JMS_Sender_loginCheckReq_001on node: 21291150 having object id: 7e7ee107bc2031d2bc79fa2fce15bbed,
    JmsMessageSelector=,
    ConnectionFactoryConstructor=null,
    ConnectionFactoryFactoryInvocation=null,
    ConnectionFactoryInvocations=[],
    DestinationConstructor=
    {ConstructorInvocation
    {className=null,
    invokeParams=[]
    DestinationInvocations=[],
    MessageInvocations=[],
    DestinationName=null,
    User=,
    Password=,
    isJmsSessionTransacted=true,
    InitialContextEnvironment={java.naming.provider.url=190.10.0.133:9222, java.naming.factory.initial=com.tibco.tibjms.naming.TibjmsInitialContextFactory},
    LookupConnectionFactory=QueueConnectionFactory,
    LookupDestination=GALP.PRD.TIGERC.LOGIN.REQ,
    SerializedConnectionFactoryPath=null,
    SerializedDestinationPath=null,
    Flags=0000000000000000000000000000000000000000000000000000100000000010
    #1.#00144F249F1500C70000088100002D8300044A22A193A7EE#1207412506994#com.sap.aii.adapter.jms.core.connector.ConnectorImpl#sap.com/com.sap.xi.mdt#com.sap.aii.adapter.jms.core.connector.ConnectorImpl.buildSessions()#EFFIGUEIREDO#7191##sappix02_X02_21291150#XIAPPLUSER#81664000032811ddaadc00144f249f15#SAPEngine_Application_Thread[impl:3]_52##0#0#Path##Plain###Exiting method#
    #1.#00144F249F1500C70000088200002D8300044A22A193A85F#1207412506994#com.sap.aii.adapter.jms.core.connector.JndiConnectorImpl#sap.com/com.sap.xi.mdt#com.sap.aii.adapter.jms.core.connector.JndiConnectorImpl.createDestination()#EFFIGUEIREDO#7191##sappix02_X02_21291150#XIAPPLUSER#81664000032811ddaadc00144f249f15#SAPEngine_Application_Thread[impl:3]_52##0#0#Path##Plain###Entering method#
    #1.#00144F249F1500C70000088300002D8300044A22A193B153#1207412506997#System.err#sap.com/com.sap.xi.mdt#System.err#EFFIGUEIREDO#7191##sappix02_X02_21291150#XIAPPLUSER#81664000032811ddaadc00144f249f15#SAPEngine_Application_Thread[impl:3]_52##0#0#Error##Plain###2008-04-05 17:21:46 [161906789 SAPEngine_Application_Thread[impl:3]_52] [TIBCO EMS]: createQueueConnection qconn=45503 qconfac=QueueConnectionFactory[url=tcp://190.10.0.133:9222;clientID=null;Properties={}] user=null#
    #1.#00144F249F1500C70000088400002D8300044A22A193E3CF#1207412507009#com.sap.aii.adapter.jms.core.connector.JndiConnectorImpl#sap.com/com.sap.xi.mdt#com.sap.aii.adapter.jms.core.connector.JndiConnectorImpl.createDestination()#EFFIGUEIREDO#7191##sappix02_X02_21291150#XIAPPLUSER#81664000032811ddaadc00144f249f15#SAPEngine_Application_Thread[impl:3]_52##0#0#Path##Plain###Exiting method#
    #1.#00144F249F1500C70000088500002D8300044A22A193E571#1207412507010#com.sap.aii.adapter.jms.core.connector.ConnectorImpl#sap.com/com.sap.xi.mdt#com.sap.aii.adapter.jms.core.connector.ConnectorImpl.executeDestinationInvocations#EFFIGUEIREDO#7191##sappix02_X02_21291150#XIAPPLUSER#81664000032811ddaadc00144f249f15#SAPEngine_Application_Thread[impl:3]_52##0#0#Path##Plain###Entering method#
    #1.#00144F249F1500C70000088600002D8300044A22A193E64B#1207412507010#com.sap.aii.adapter.jms.core.connector.ConnectorImpl#sap.com/com.sap.xi.mdt#com.sap.aii.adapter.jms.core.connector.ConnectorImpl.executeDestinationInvocations#EFFIGUEIREDO#7191##sappix02_X02_21291150#XIAPPLUSER#81664000032811ddaadc00144f249f15#SAPEngine_Application_Thread[impl:3]_52##0#0#Path##Plain###Exiting method#
    #1.#00144F249F1500C70000088700002D8300044A22A193E714#1207412507010#com.sap.aii.adapter.jms.core.connector.ConnectorImpl#sap.com/com.sap.xi.mdt#com.sap.aii.adapter.jms.core.connector.ConnectorImpl.buildMessageProducers()#EFFIGUEIREDO#7191##sappix02_X02_21291150#XIAPPLUSER#81664000032811ddaadc00144f249f15#SAPEngine_Application_Thread[impl:3]_52##0#0#Path##Plain###Entering method#
    #1.#00144F249F1508770000000000002D8300044A22A83A6308#1207412618584#System.err#sap.com/com.sap.xi.mdt#System.err#EFFIGUEIREDO#7191##sappix02_X02_21291150#XIAPPLUSER#81664000032811ddaadc00144f249f15#Thread[TIBCO EMS TCPLink Reader (45502),5,SAPEngine_Application_Thread[impl:3]_Group]##0#0#Error##Plain###2008-04-05 17:23:38 [2092826462 TIBCO EMS TCPLink Reader (45502)] [TIBCO EMS]: received msg from daemon conn=45502 seqid=40664365 msgid=ID:EMS-SERVER.91446ECB042B480:12545#
    #1.#00144F249F1508770000000100002D8300044A22A83A650C#1207412618585#System.err#sap.com/com.sap.xi.mdt#System.err#EFFIGUEIREDO#7191##sappix02_X02_21291150#XIAPPLUSER#81664000032811ddaadc00144f249f15#Thread[TIBCO EMS TCPLink Reader (45502),5,SAPEngine_Application_Thread[impl:3]_Group]##0#0#Error##Plain###2008-04-05 17:23:38 [2092826462 TIBCO EMS TCPLink Reader (45502)] [TIBCO EMS]: post msg to session sess=198151 cons=261547 seqid=40664365 msgid=ID:EMS-SERVER.91446ECB042B480:12545#
    In the last two lines we can see that SAP XI do a connection to TIBCO and is getting an unknown error, even in debug (note 856346) I cannot get any information.
    Actually we are running SAP XI 3.0 SP21, but this was working fine in SAP XI 3.0 SP17. We have more than 100 Communication Channels working fine and only is having this strange behavior.
    BTW if we put manually information in TIBCO QUEUE it works fine, but automatically doesn't pick the message.
    Thanks

    HI,
    As per the trace details given please consider few of the below options....
    What do u see in adapter monitoring tool for JMS adapter?
    http://hostname:5XX00/mdt/amtServlet
    Did you follow the document on correlation of JMS messages?
    In communication channel You have to set
    Correlation ID -> XI conversationID
    XI message ID->GUID
    XI Conversation ID -> JMS correlation ID.
    Now in the custom J2EE application you should set
    jmscorrelationid of message before sending in to queue to jms correlation id of message before receiving from the queue.
    This thread deals with the issue..
    JMS Queue monitoring
    Check  if the JMS Sender adapter EOIO is with serialized messages 
    Thanks
    Swarup

  • JMS sender communication channel content conversion

    Hi,
    I struck with the content conversion in the JMS Sender communication channel.
    I have configured the communication channel with the filed fixed lengths. (Simple type)
    The field fixed lengths i have given are 10,2,3,11
    The contents in the file 1000000072  230 111
    but, in the input xml after conversion iam getting 100000007 in the first field and 2 in the second field 23 in the third field.
    I have configured the sender communication channel as in the document in SDN.
    Even, i configured several communication channels. I didn't get this strange error any time.
    I have gone through SDN to fix this issue, but i didn't get solution.
    If anyone got rectified this kind of error, please answer your solution to me
    Thanking you,
    Regards,
    Krishnaraju.

    Hi,
    Thanks for all your support. The issue got resolved.
    The issue is due to the file, In the file the special characters are appearing. We are not able to see these characters in the notepad, wordpad, text editor.
    But, these characters are appearing in th syn text editor. So, we removed those characters and processessed the file. Now, it is successfull.
    Regards,
    Krishnaraju.

  • JMS (Sender Communication Channel) and MQ in Mainframe (Legacy) System

    Hi All,
    Can we use JMS Sender Communication Channel in XI that runs on Windows 2003 server to DIRECTLY poll messages from MQ in Mainframe (Legacy) system??
    I understand that we can install MQ on XI server and have mainframe push the messages to XI MQ so that JMS can poll but wanted to see if there is a way to do this without having MQ on XI server.
    If you know of any documentation regarding this, can you please post it?
    Thanks,
    Jay

    Jung,
    Are you looking for this help:
    /people/william.li/blog/2006/11/13/how-to-use-saps-webas-j2ees-jms-queue-in-exchange-infrastructure
    Also check this sap help:
    http://help.sap.com/saphelp_nw04/helpdata/en/cd/d85a9d6fab7d4dbb7ae421f710626c/content.htm
    http://help.sap.com/saphelp_nw04/helpdata/en/f4/2d6189f0e27a4894ad517961762db7/content.htm
    ---Satish

  • Problem in JMS Sender Adapter

    Hi All,
      I am trying to Pick two different XML types of Messages from a Single Queue.
    For Example :- Despatch Advice and Replishment Proposal.
    Queue Name is : - JMS_XI_Sender
    SAP XI is not allowing me to create two different sender agreements for the same communication channel.
    Service :- BS_JMS
    Interface : - Despatch_Advice_OB
    CC :- JMS_SENDER
    and
    Service :- BS_JMS
    Interface : - Replishment_Proposal_OB
    CC :- JMS_SENDER
    Can any one tell how can SAP XI will differentiate these two messages and sends to two different receivers.

    Hi Rama,
    I am using XML Despatch Advice and Replishment Proposal types .
    Basically I do have one sender which will post Two types of XML messages in to one single MQ Queue.
    SAP XI/PI has to pick that message and then needs to check what is the Value in the "Message Type" Tag .
    I do also have two different Interfaces and Mappings and Two different Receivers.
    Depending on the value in Message Type SAP XI/PI has to check for the Particular Interface and Mapping, finally needs post the message to Particular Receiver
    You need to have defined two different sender agreements with two different Communication channels.
    In the JMS adapter Sender configuration you can mention the Queue name to pick the message . After picking the message the JMS sender adapter need to map it to the correct message type - it is defined by message interface defined in the sender agreement .
    Please let us know if you need any further calrification.
    Regards,
    kishore

  • JMS Sender Adapter EOIO with different messages in Queue to RFC

    Dear Colleague,
    In one of my scenarios i am using JMS Sender Adapter and Websphere MQ series.
    In my MQ Series Queue i get different Messages with Different Structures.
    for e.g in my MQ Series Queue Q1 i have M1, M2, M3 coming in Order.
    Now i need to doa  Mapping of M1 to a Standard BAPI  B1 call through RFC at the reciever side.
    Now i need to doa  Mapping of M2 to a Standard BAPI B2 call through RFC at the reciever side.
    Now i need to doa  Mapping of M3 to a Standard BAPI B3 call through RFC at the reciever side.
    We are aware that on Receiver side we can have multiple Recievr Determinations.so i can send it to 3 different BAPIs.
    Question:
    But how do i split the Messges which are coming out of MQ series Q from JMS to 3 different Mapping Structures as we knwo that we do not 'Multiple Sender Interface Determinations' from Determined based on the Message which is coming in.
    Hope i have been clear in making myself understand about the problem given above.
    I have alos given below the same in a bit Graphical Form.
    MQ Series --> M3, M2, M1(Messages) --> JMS Adapte(EOIO) --> M1(Message) -> RFC -> B1(Bapi)
                                                             --> JMS Adapte(EOIO) --> M2(Message) -> RFC -> B2(Bapi)
                                                             --> JMS Adapte(EOIO) --> M3(Message) -> RFC -> B3(Bapi)
    Is it possible to achieve the above result. Answers fo the solution are most welcome. These can be also from the new Netweaver Release Versions. If we have the solution to these in New version we will implment the New Netweaver Releases.
    Thanks & Warm Regards
    Venugopal

    Dear Kai,
    if i have 3 MQ series Queues then how are we going to maintain the flow of the Messages in the same order in which has come into MQ series queues.
    this mesans to say that all the Message come in Parallel out from JMS or MQ side and will be mapped onto Reciever side.
    But in my case i wil need to have M1 first M2 second and M3 third.
    This means to say that M1 recived and acknowledged then M2 should come and acknowledged and then M3 should be acknowledged.
    How this will be possible with your solution of making 3 MQ series Queues.
    Please do let me know.
    Thanks
    Venugopal

  • Content conversion in XI using JMS Sender Adapter.

    Hi,
    I have scenario where i will get fixed length flat file from MQ and i need to create an IDOC.
    The flat file structure is like below.
    HEADER001002003 (Occurs once)
    DELIVERY0000111112222  (Min - 1 and Max - Unbounded)
          Detail33333344444455555  (Min - 1 and Max - Unbounded)
    NOTE -- Detail record is sub level record of DELIVERY.
    I would like to do content conversion in JMS SENDER ADAPTER.
    Did anybody worked on similar scenario?
    I would appreciate ,if anybody provides info on how to do it.
    Regds,
    Jagdish.

    Hi
    Please have a look at these threads..u get an idea abt the content conversion.
    JMS Adapter: Content Conversion
    https://forumsn.sdn.sap.com/click.jspa?searchID=2171243&messageID=3319704
    JMS Adapter Content Conversion
    JMS Content Converrsion
    Hope these help you!

  • JMS sender adapter is not picking up message from MQ

    Hi Experts,
    I have configured the JMS sender adapter for getting message from Websphere MQ. In RWB the adapter and the communicaiton channel all looking good. The trace file tells me the connection to the queue has been established.
    But the problem is this JMS sender adapter is not picking up message from the Queue defined on the MQ site.
    Any Idea what could be wrong?
    Thanks!
    Jason
    Jason

    Hi,
    1) Can you activate the JMS adapter again ( edit save and activate it )
    2) Check whether the right Queue is addressed.
    Regards
    Agasthuri Doss

  • Content conversion at JMS sender communication channel

    Hi friends,
                    I have to convert fixed length flat structure to xml message.Therefor i have to do content conversion at the JMS sender comm channel.Can someone please explainthe procedure?
    data in the queue would be like as follows.
    9999000000124646q12233appej500rc11147822zord

    Hi Manikandan,
    The structure conversion can handle files containing rows with different structures. In
    each row there is a key field to identify the structure. The rows with identical key fields of
    course have identical structures.
    Let us assume that we have a sample file with four rows. Each row has a two-byte key
    field; the first row has a second field with ten bytes; the structure of the second and third
    rows is the same and comprises two additional fields with three bytes each; the last row
    has a second field with five bytes:
    AA1234567890
    BBABCABC
    BBXYZXYZ
    CC12345
    The configuration for the conversion could look like this:
    Module Configuration
    Module Key Parameter Name Parameter Value
    Plain2XML Transform.Class com.sap.aii.messaging.adapter.Conversion
    Plain2XML Transform.ContentType text/xml;charset=utf-8
    Plain2XML xml.conversionType StructPlain2XML
    Plain2XML xml.processFieldNames fromConfiguration
    Plain2XML xml.documentName MyDocument
    Plain2XML xml.documentNamespace http://xi.com/test
    Plain2XML xml.recordsetName MyRecordset
    Plain2XML xml.recordsetStructure NameA,1,NameB,*,NameC,1
    Plain2XML xml.keyFieldName MyKey
    Plain2XML xml.keyFieldType CaseSensitiveString
    Plain2XML xml.NameA.fieldNames MyKey,field-nameA
    Plain2XML xml.NameA.fieldFixedLengths 2,10
    Plain2XML xml.NameA.keyFieldValue AA
    Plain2XML xml.NameB.fieldNames MyKey,field-nameB1,field-nameB2
    Plain2XML xml.NameB.fieldFixedLengths 2,3,3
    Plain2XML xml.NameB.keyFieldValue BB
    Plain2XML xml.NameC.fieldNames MyKey,field-nameC
    Plain2XML xml.NameC.fieldFixedLengths 2,5
    Plain2XML xml.NameC.keyFieldValue CC
    In xml.recordsetStructure, you add a name for each different structure followed by the
    number of occurrences or an asterisk for unbounded occurrences. For each structure
    name, you configure the structure separately in a separate namespace such as
    xml.NameA.fieldNames and so on.
    If your source file is a CSV file, replace each xml.XXX.fieldFixedLengths with
    xml.XXX.fieldSeparator.
    the result of this conversion looks like this:
    <ns:MyDocument xmlns:ns="http://xi.com/test">
    <MyRecordset>
    <NameA>
    <MyKey>AA</MyKey>
    <field-nameA>1234567890</field-nameA>
    </NameA>
    <NameB>
    <MyKey>BB</MyKey>
    <field-nameB1>ABC</field-nameB1>
    <field-nameB2>ABC</field-nameB2>
    </NameB>
    <NameB>
    <MyKey>BB</MyKey>
    <field-nameB1>XYZ</field-nameB1>
    <field-nameB2>XYZ</field-nameB2>
    </NameB>
    <NameC>
    <MyKey>CC</MyKey>
    <field-nameC>12345</field-nameC>
    </NameC>
    </MyRecordset>
    </ns:MyDocument>
    Regards,
    Vinod.

  • Question on endSeparator in JMS sender Adapter

    Hi,
    My scenario is -  JMS(Sender) to IDOC(Receiver). So I am picking data from MQ and populating IDOC via XI.
    My source structure is below.
    RecordSet( 1 : Unbounded)
    Header (Occurs only one time)
    Delivery (1 : Unbounded)
    RecordSet can occur multiple times. Under RecordSet I have Header which occurs only one time and Delivery which can occur multiple times.
    Below is the data I am getting from MQ
    123456789#987654321#789456123
    12345678 – Header record
    -- Separator between Header and Delivery record
    987654321 – First Delivery record
    - Separator between two delivery Records.
    789456123 – Second Delivery Record
    I have no issues in Content conversion.
    I have declared end separator like below for Header and Delivery Record.
    ml.Header.endSeparator        #
    xml.Delivery.endSeparator     #
    When I declare like above it is not working .
    Any body has any idea on how to take care of  endseparator (#)?
    Thank you,
    Surya

    Surya,
    The '#' is between fields, why you are using <b><i>endSeparator</i></b>, instead try to use <b><i>fieldSeparator</i></b>.
    Let me know the results.
    Best Regards,
    raj.

  • EOIO JMS Sender Channel in Error

    Hi All,
    We have a error on JMS sender channels in Pre-Production environment.
    Let me explain you the problem.
    On Dev and QA there is no cluster environment. On Pre-production we have 3 clusters. We tested this Sender JMS channel on Dev and QA without giving a Cluster ID and it worked.
    Now on Pre prod, we had not mentioned the cluster ID and when messages were picked from the Queue, the channel went into a error mode stating the " Channel is locked due to EOIO".
    Then when we added the cluster ID to the channel, in RWB the channel goes into inactive mode. The status is " The EOIO channel has been made inactive on Node 206485150"
    The node mentioned in channel is 251902150. This means that the other node has been made inactive. That sounds logical as it is not supposed to process the message.
    But the node which is mentioned in the channel has also gone into error mode.
    " Error creating JMS connection. failed to create MQManager for ' Hostname:Channel name'". An MQException occured: Completion code 2, Reason 2009
    MQJE016: MQ queue managerclosed channel immediatly during connect. Closure reason= 2009, and erro code as MQJMS2005
    After this all other sender JMS channels have gone into the same error mode on this node.
    We have stopped the JMS service and started it. We also restarted the XI server but no change was encountered.
    Please let us know whether JMS sender with EOIO works with cluster ID as I'm not able to find any document which says that JMS with EOIO works succesfully.
    Please also let us know how to overcome the error on this node.
    Thank you.
    Regards,
    Sarvesh Desai

    Check if there is any unprocessed message stuck in the queue:
    /people/stefan.grube/blog/2006/04/27/how-to-deal-with-stuck-eoio-messages-in-the-xi-30-adapter-framework

Maybe you are looking for