Talking to WL JMS Queue via HTTP

Hi,
We have a web application running on weblogic server 6.1. We were able to talk (in our case, this involved sending it xml input) to this application through the weblogic JMS by hitting the JMS queue via a java program on the same box. What we need to do now is to talk to that same JMS queue using HTTP. In other words, be able to post an HTTP message from a different box to the JMS queue on this weblogic server.
How do we do that? Please assume I know as little as possible.
Thanks so much.
Avraham

One way to do this is to create a servlet that forwards the incoming HTTP message to the queue. In order to access a remote box you probably just need to package the JMS client library with the servlet's WAR file. In this setup, the servlet is basically a router between the HTTP side and the JMS side. You can also create a JAX-RPC web service if you want the HTTP input to follow a specific XML structure.
- Bjarne.

Similar Messages

  • [Fwd: JMS publishing via http-tunneling]

    "Jeffrey S. Hair" wrote:
    Does anyone know of way to speed up WL JMS publishing via http-tunneling?
    We have a server that is publishing messages to JMS rather frequently (1/200 millisecs). We then
    have several applications and applets subscribed for this topic. The applications work great and get
    all of the messages quite fast (using t3 protocol).
    However, the applet, running on the other side of a firewall, and connected to the server over a 28k
    modem, receives the updates rather slowly since the messages need tunneled through http. In fact, so
    many updates are being published that the applet continually falls behind. If we stopped the updates
    or slowed down the updates, the applet would eventually catch up and reflect the latest message.
    The sessions in the applet were created using AUTO_ACKNOWLEDGE. I've since changed them to use
    CLIENT_ACKNOWLEDGE and allow for 15 seconds of messages to be processed before acknowledging. This
    improved the speed but the applet still falls behind to some degree. When the publishing slows down,
    the applet now at least catches up.
    As a side note, does anyone know of a way to view the contents of the JMS queue?
    Thanx,
    jsh
    Jeffrey S. Hair
    Sr. System Architect, FNX Limited[email.eml]

    Which web server are you using?
    Both iWS6.0 SP2 or iWS Fast-track 4.1 works with iMQ.
    But earler versions of iWS6.0 do not and we have no
    control of that.

  • Getting jndi name for jms queue via jmx?

    All,
    I'm trying to write a utility that will do a 9.2-style message export against 8.1 I think I have it all figured out except that I don't know how to get the jndi name of a queue or topic via jmx. I'm using jmx to find queues and subscriptions that have messages waiting, then trying to connect to them to siphon off the messages. I can't just browse jndi for any queue I find because I also want to access the durable subscriptions, for which I need the client and subscriptions ids. Is there a way to map from the jms destination runtime mbean to the jndi name? The getDestination() method isn't supported (throws an exception.)
    thanks

    Hi John,
    You can get destination JNDI names by looking up their value in the JMX configuration mbeans rather than the runtime mbeans. The client-id and subscription-name are available on the JMSDurableSubscriberRuntime mbean.
    Regards,
    Tom

  • PI to ECC via ABAP Proxy - Outbound Queue for HTTP

    Dear Experts,
    Is there any Outbound Queue for HTTP?
    I've a interface scenario where the receiver is SAP ECC and the receiver adapter XI ABAP proxy. As I see in the communication channel the transport protocol used is HTTP. So I think could there be an outbound queue to manage HTTP connection when PI send the data to SAP ECC?
    Just like when we are sending IDocs to ECC via tRFC, we could check if the IDoc has really been sent to ECC by checking in tcode SM58 (Outbound tRFC).
    In case for ABAP Proxy via HTTP, is there any similar connection to SM58 (IDoc via tRFC)?
    Thank you,
    Suwandi C.

    Hi Kandasami,
    Thank you for the reply. I will check for it.
    Hi Jens,
    Yes, I mean somewhere after the SXMB_MONI in PI and before SXMB_MONI in ECC, is there any queue in between those two?
    Thank you,
    Suwandi C.

  • Aggregation via BPM from different JMS queue

    Hi there,
        my query is about, I need to get the messages from three different JMS queue (say 3 different interface) based on some indicator flag (say 'X') in the payload from first two queue I need to persist / hold the messages with in PI (not sure about persisting) else pass through and after receiving the message from third queue I need correlate from the persisted message based on the groupID then consolidate and pass through to ECC.
      how this can be achieved in PO version on 7.31.
    Regards,
    Sethu.

    Hello,
    My cents Enterprise Patterns in Process Orchestration – Aggregator
    I hope it help you.
    regards,
    Roberto.

  • Can you talk to WebLogic Message Queues with C/C++

              Just curious, can you talk to message queues in WebLogic with C/C++, or do you jave
              to use the JMS API to get to it?
              We have some existing C/C++ code we need to communicate with and we are considering
              using message queues to do it. We have tried it with MQSeries and it works fine,
              but could we do the same thing with WebLogic. We already have WebLogic in production
              and would like to avoid having to also buy MQSeries just to integrate to the C/C++
              code and messaging is a lot easier than dealing with JNI.
              Any advise would be greatly appreciated!!!
              

    Hi Chuck,
              Here are some options:
              www.codemesh.com provides a C++ JMS wrapper (via JNI), one customer has instead
              recommended "Jace" http://sourceforge.net/projects/jace/
              Alternatively use RMI over IIOP to invoke an EJB that in turn calls JMS (WebLogic
              understands IIOP).
              Alternatively use HTTP/WebServices/SOAP.
              Personally, I think RMI/IIOP is an interesting option, post to the rmi-iiop newsgroup.
              Tom
              Chuck wrote:
              > Just curious, can you talk to message queues in WebLogic with C/C++, or do you jave
              > to use the JMS API to get to it?
              >
              > We have some existing C/C++ code we need to communicate with and we are considering
              > using message queues to do it. We have tried it with MQSeries and it works fine,
              > but could we do the same thing with WebLogic. We already have WebLogic in production
              > and would like to avoid having to also buy MQSeries just to integrate to the C/C++
              > code and messaging is a lot easier than dealing with JNI.
              >
              > Any advise would be greatly appreciated!!!
              

  • JMS queue problem integrating with TIBCO

    Hi all!
    We have several communication channels between XI 3.0 (SP21) and TIBCO via JMS queues. All of them are working fine except  one. This problem only happens in development and quality systems with SP21, production has SP17 and doesn't have this error on the same communication channel.
    We are getting the following error in communication channel details...
    27-03-2008 16:32:21   XI message ID corresponding to the JMS message ID 'ID:EMS-QUALITY.14C46ECF3303EC:61' has the value 'null', with the ID: prefix removed+
    27-03-2008 16:32:21   XI message ID corresponding to JMS message with ID 'ID:EMS-QUALITY.14C46ECF3303EC:61' will be created with same value as JMSCorrelationID with value 'null'+
    27-03-2008 16:32:20   Error while processing message 'null';  detailed error description: com.sap.aii.adapter.jms.api.channel.filter.MessageFilterException: Error in converting Binary message <?xml version="1.0" encoding="UTF-8"?> <ns0:MT_PedCarga_GE xmlns:ns0="http://pt.galp.is-oil.ec">    <Partner>        <ZIDIF>62</ZIDIF>    </Partner>    <Controle>        <Nr_Envio>29183049</Nr_Envio>        <Dt_envio>20080229</Dt_envio>        <Tipo_Carga>CPAT</Tipo_Carga>        <Operador>230</Operador>    </Controle>    <PedCarga>        <FRETE>            <Tipo_Registo>N</Tipo_Registo>            <Inst_Carreg>ES41</Inst_Carreg>            <Data_Execucao>20080228</Data_Execucao>            <Resp_Transporte>13</Resp_Transporte>            <Transporte>          </Transporte>            <Transportador>1700</Transportador>            <Ref_Externa_head>2008022931859</Ref_Externa_head>            <Gera_Docs>X</Gera_Docs>            <Imprim_Docs>X</Imprim_Docs>            <Imprim_Ordem_Carreg>X</Imprim_Ordem_Carreg>            <Confirm_Autom>X</Confirm_Autom>            <Operador>230</Operador>        </FRETE>        <ENTREGA>            <Tipo_Destinatario>1</Tipo_Destinatario>            <Local_Entrega>14018</Local_Entrega>            <Cod_Produto>GOA []</Cod_Produto>            <Quantidade>05100</Quantidade>            <Ref_Externa_Item>01737307470601</Ref_Externa_Item>            <Regime_Fiscal>N</Regime_Fiscal>        </ENTREGA>        <ENTREGA>            <Tipo_Destinatario>1</Tipo_Destinatario>            <Local_Entrega>14018</Local_Entrega>            <Cod_Produto>GOC []</Cod_Produto>            <Quantidade>13300</Quantidade>            <Ref_Externa_Item>02737307470602</Ref_Externa_Item>            <Regime_Fiscal>R</Regime_Fiscal>        </ENTREGA>    </PedCarga> </ns0:MT_PedCarga_GE> to XI message for message: null: InvalidParamException: Invalid message id: com.sap.guid.GUIDFormatException+
    Any clues?
    Regards,
    Fernando Figueiredo

    We changed the conversation ID from Message ID to Correlation ID.

  • IDOC to JMS Queue

    Outbound from SAP  and going to external system(Seibel) via jms queue.
    JMS adapter on the receiver side
    I need to set following properties in receiver JMS Adapter in adpater module kindly guide me.
    JMS Properties to be set:
    docType - CRMML Message
    subType - account
    sender - SAP
    receiver - CuDM
    Renu.

    Hi,
    Do you want to set these properties into JMS header? If yes then do it like this...
    Under Advanced Tab Page --->Additional Parameters, add the following entries
    Name                                    Value
    JMSMessageClass                         com.ibm.jms.JMSMessage
    JMS.Message.method.setStringProperty1   java.lang.String docType, java.lang.String CRMML Message
    JMS.Message.method.setStringProperty2   java.lang.String subType, java.lang.String account
    JMS.Message.method.setStringProperty3   java.lang.String sender, java.lang.String SAP
    JMS.Message.method.setStringProperty4   java.lang.String receiver, java.lang.String CuDM
    For your info, you can read this doc (look "Additional Parameters" at the end)
    http://help.sap.com/saphelp_nw04/Helpdata/EN/10/b1b4c8575a6e47954ad63438d303e4/content.htm
    Regards,
    Sarvesh

  • Authentication problem w MDB on WL8.1 and JMS Queue on WL6.1

              Hi,
              I'm having problems with a MessageDrivenBean that is deployed on a Weblogic 8.1
              server. It listens to a JMS Queue on a Weblogic 6.1 server.
              I'm getting the following error message upon deployment:
              [java.lang.SecurityException: Authentication for user system denied in realm wl_realm
              I've made sure that both servers are installed with the user "system" and a password
              of "password".
              This worked fine for two WL6.1 servers.
              Here's my ejb-jar.xml:
              <!DOCTYPE ejb-jar PUBLIC
              '-//Sun Microsystems, Inc.//DTD Enterprise JavaBeans 2.0//EN'
              'http://java.sun.com/dtd/ejb-jar_2_0.dtd'>
              <ejb-jar>
                  <enterprise-beans>
                      <message-driven>
                          <ejb-name>WebResponseJMSBean</ejb-name>
                          <ejb-class>com.ditech.webresponse.jms.WebResponseJMSBean</ejb-class>
                          <transaction-type>Container</transaction-type>
                          <message-driven-destination>
                              <destination-type>javax.jms.Queue</destination-type>
                          </message-driven-destination>
                      </message-driven>
                  </enterprise-beans>
                  <assembly-descriptor>
                      <container-transaction>
                          <description>Transaction attributes for 'WebResponseJMSBean' methods</description>
                          <method>
                              <ejb-name>WebResponseJMSBean</ejb-name>
                              <method-name>*</method-name>
                          </method>
                          <trans-attribute>NotSupported</trans-attribute>
                      </container-transaction>
                  </assembly-descriptor>
              </ejb-jar>
              Here's my weblogic-ejb-jar.xml:
              <?xml version="1.0"?>
              <!DOCTYPE weblogic-ejb-jar PUBLIC
              '-//BEA Systems, Inc.//DTD WebLogic 6.0.0 EJB//EN'
              'http://www.bea.com/servers/wls600/dtd/weblogic-ejb-jar.dtd'>
              <weblogic-ejb-jar>
                  <weblogic-enterprise-bean>
                      <ejb-name>WebResponseJMSBean</ejb-name>
                      <message-driven-descriptor>
                          <destination-jndi-name>com.ditech.jms.CowResponseQueue</destination-jndi-name>
                          <provider-url>t3://localhost:7003</provider-url>
                          <connection-factory-jndi-name>com.ptp.jms.AppOnlineConnectionFactory</connection-factory-jndi-name>
                      </message-driven-descriptor>
                      <jndi-name>ejb/WebResponseJMSBean</jndi-name>
                  </weblogic-enterprise-bean>
              </weblogic-ejb-jar>
              Can anyone give me any suggestions?
              Thanks in advance,
              -Ben
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 

              We are facing a similar issue, between MDB's and JMS Queues on 2 separated WebLogic
              8.1 domains. What I will test next week are:
              1. In the domain where my MDB's are deployed, configure Foreign JMS Servers/Connection
              Factories/Queues, for which passwords can be specified (not possible in weblogic-ejb-jar.xml)
              2. If No.1 does not work, I will add CredentialGenerated="false" in <SecurityConfiguration>
              in config.xml in both domains
              3. If No. 2 still does not work, I will specify run-as principal and security-role
              in my MDB DD files, and specify CredentialMapping via the WebLogic admin console.
              Maybe you can try the same?
              Eric Ma
              "B Liu" <[email protected]> wrote:
              >
              >Hi,
              >
              >I'm having problems with a MessageDrivenBean that is deployed on a Weblogic
              >8.1
              >server. It listens to a JMS Queue on a Weblogic 6.1 server.
              >
              >I'm getting the following error message upon deployment:
              >
              >[java.lang.SecurityException: Authentication for user system denied in
              >realm wl_realm
              >
              >I've made sure that both servers are installed with the user "system"
              >and a password
              >of "password".
              >
              >This worked fine for two WL6.1 servers.
              >
              >Here's my ejb-jar.xml:
              >
              ><!DOCTYPE ejb-jar PUBLIC
              >
              >'-//Sun Microsystems, Inc.//DTD Enterprise JavaBeans 2.0//EN'
              >
              >'http://java.sun.com/dtd/ejb-jar_2_0.dtd'>
              >
              >
              ><ejb-jar>
              >
              >    <enterprise-beans>
              >
              >        <message-driven>
              >
              >            <ejb-name>WebResponseJMSBean</ejb-name>
              >            <ejb-class>com.ditech.webresponse.jms.WebResponseJMSBean</ejb-class>
              >            <transaction-type>Container</transaction-type>
              >            <message-driven-destination>
              >                <destination-type>javax.jms.Queue</destination-type>
              >            </message-driven-destination>
              >
              >        </message-driven>
              >
              >    </enterprise-beans>
              >
              >    <assembly-descriptor>
              >
              >        <container-transaction>
              >
              >            <description>Transaction attributes for 'WebResponseJMSBean'
              >methods</description>
              >            <method>
              >                <ejb-name>WebResponseJMSBean</ejb-name>
              >                <method-name>*</method-name>
              >            </method>
              >            <trans-attribute>NotSupported</trans-attribute>
              >
              >        </container-transaction>
              >
              >    </assembly-descriptor>
              >
              ></ejb-jar>
              >
              >Here's my weblogic-ejb-jar.xml:
              >
              ><?xml version="1.0"?>
              >
              >
              >
              ><!DOCTYPE weblogic-ejb-jar PUBLIC
              >
              >'-//BEA Systems, Inc.//DTD WebLogic 6.0.0 EJB//EN'
              >
              >'http://www.bea.com/servers/wls600/dtd/weblogic-ejb-jar.dtd'>
              >
              >
              ><weblogic-ejb-jar>
              >
              >    <weblogic-enterprise-bean>
              >
              >        <ejb-name>WebResponseJMSBean</ejb-name>
              >
              >        <message-driven-descriptor>
              >
              >            <destination-jndi-name>com.ditech.jms.CowResponseQueue</destination-jndi-name>
              >            <provider-url>t3://localhost:7003</provider-url>
              >            <connection-factory-jndi-name>com.ptp.jms.AppOnlineConnectionFactory</connection-factory-jndi-name>
              >        </message-driven-descriptor>
              >
              >        <jndi-name>ejb/WebResponseJMSBean</jndi-name>
              >
              >    </weblogic-enterprise-bean>
              >
              ></weblogic-ejb-jar>
              >
              >
              >Can anyone give me any suggestions?
              >
              >Thanks in advance,
              >-Ben
              >
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             

  • Parsing sensor data (out of JMS queue)

    Hi,
    I´m currently trying to implement sort of a monitor using sensors.
    I´ve managed to set up a JMS queue that is used by a sensor and I have casted the message i got to a com.evermind.server.jms.EvermindTextMessage. However, all I can get out of this is a string representation of the sensor action data in XML. It looks somehow like this:
    <actionData xmlns="http://xmlns.oracle.com/bpel/sensor"><header><sensor sensorName="activation" classn
    ame="oracle.tip.pc.services.reports.dca.agents.BpelActivitySensorAgent" kind="activity" target="setSwitchCondition"> <activityConfig evalTime="activation"/> </sensor><instanceId>29501</instanceId><midTierInstance>mxs2018:9700</midTierInstance><processName>SensorTest</proces
    sName><processRevision>1.0</processRevision><domain>default</domain><timestamp>2006-02-13T12:56:55.453+01:00</timestamp>
    </header><payload><activityData><activityType>assign</activityType><evalPoint>activation</evalPoint></activityData></pay
    load></actionData>
    So now, I´m searching for a simple solution to put this structure back in an java-object so I can easily get the different parts I need. I´ve found a schema dealing with sensors under OraBPELPM\integration\orabpel\system\xmllib\Sensor.xsd and have translated this via schemac to classes, but there seems to be no class for the element "actionData", as this is also not mentioned in the schemas.
    I´m currently using my own parser/handler (SAX), but this is no satisfying solution.
    I´ve searched almost everywhere, but it seems, noone has ever dealed with this.
    Any suggestions or ideas?
    Thnx in advance,
    Max
    Message was edited by:
    mxs

    Hi Clemens,
    schemac has indeed included this one (SensorAction.xsd) by itself - all classes are generated correctly (including SensorAction/SensorActionProperty/etc). Nevertheless it´s somehow useless, because those sensor schemas seem to be a definition of the sensor itself rather than the data it produces.
    As you can see in the schemas, there is no definition for either a "header", nor a "actionData" or "activityData". I could (for example) extract the node "sensor" and feed it to the proper class - same goes for inner node "activityConfig". But all those other values (providing most of the information i need) don´t have a matching structure in the schemas.
    Before I used JMS, I have tried a custom sensor class that implements com.oracle.bpel.sensor.DataPublisher. In this case I´m getting the information I need from com.oracle.bpel.sensor.schemas.ITSensorActionData and can extract the header and payload from there. This leads me to the conclusion that there is (somewhere) another XSD describing the sensor data - or did I get something completely wrong?
    Greetings,
    Max

  • JMS Queue listener vs. manual/scheduled executions

    Hello,
    We have configured interfaces, packages, scenarios, etc. that start with pulling an XML message from a JMS queue (well, JMS Queue XML data store) and can successfully process our messages in batch mode when we run our executions manually or via a scheduler. However, we'd like our agent to simply listen on the queue for new messages and kick off an execution when a new message comes in...one-by-one (rather than in a batch manual/scheduled mode).
    Can someone please help us with the proper configuration steps for this?
    Thanks!

    I am investigating this issue myself.   I have come up with two possible scenarios.
    1.  Do it in Java -- Of course this defeats the purpose of using SOA Suite.  In the book SOA Suite 11g handbook, chapter twelve he has a jms adapter publishing to a queue and a java program listening to that queue.    http://technology.amis.nl/2010/09/21/soa-suite-11g-handbook-chapter-complements/
    you can refer to the TheFinancialApplication.
    2.  If you have access to the Jms programs that publish the messages to the queue (that your programs want to listen to) and they are done in SOA Suite 11g, you could use Event Delivery Network (EDN) to create a event on the publishing side-- and then set up your listening processes to listen for that Event (which is jms under the hood).
    You could then have those processes kick off from that event.
    Anyone with a better idea?
    -- Update 8 hours later  -- I have a better idea:
    I created a composite that publishes a JMS message to a queue on weblogic using the jms adapter.  I created a second composite with a jms adapter (on the Exposed services side of the composite)  that Consumes a message, hooked it up to a mediator and then wrote the contents of the message to a file.  Uploaded both.
    Moments after the JMS publisher Composite ran, a file was created.  From this I would surmise that you could run other processes as well.
    -- Update two days later.   So much for the better idea.
    Given that the Flow Trace of the last test looked suspiciously like this one one application and not two separate applications, I decided to test it further.  I have two PCs.  On each PC I have a soa domain, Uploaded the jms publisher to one domain, and the JMS Consumer to the other separate domain on the other PC.   Ran the publisher, and the other one just sat still -- didn't start at all.
    The first test was too good to be true!
    Stuart

  • OC4J/JMS Queue Listener

    Hello,
    Have a simple test JMS client that is listening for messages posted to a JMS queue setup in the OC4J/JMS. While the messages are ending up in the proper queues [this can be verified via a queue browser] the listener does not seem to be getting any notifications. The receiver code is essentially,
    queueConnection = queueConnectionFactory.createQueueConnection();
    QueueSession queueSession = queueConnection.createQueueSession(
                             false,
                             Session.AUTO_ACKNOWLEDGE);
    QueueReceiver queueReceiver = queueSession.createReceiver(queue);
    System.out.println("Set Listener");
    queueReceiver.setMessageListener(new OracleListener());
    queueConnection.start();
    This is from a remote client for both the sender and the reciever. Any help would be much appreciated.
    Vinay Menon

    I am investigating this issue myself.   I have come up with two possible scenarios.
    1.  Do it in Java -- Of course this defeats the purpose of using SOA Suite.  In the book SOA Suite 11g handbook, chapter twelve he has a jms adapter publishing to a queue and a java program listening to that queue.    http://technology.amis.nl/2010/09/21/soa-suite-11g-handbook-chapter-complements/
    you can refer to the TheFinancialApplication.
    2.  If you have access to the Jms programs that publish the messages to the queue (that your programs want to listen to) and they are done in SOA Suite 11g, you could use Event Delivery Network (EDN) to create a event on the publishing side-- and then set up your listening processes to listen for that Event (which is jms under the hood).
    You could then have those processes kick off from that event.
    Anyone with a better idea?
    -- Update 8 hours later  -- I have a better idea:
    I created a composite that publishes a JMS message to a queue on weblogic using the jms adapter.  I created a second composite with a jms adapter (on the Exposed services side of the composite)  that Consumes a message, hooked it up to a mediator and then wrote the contents of the message to a file.  Uploaded both.
    Moments after the JMS publisher Composite ran, a file was created.  From this I would surmise that you could run other processes as well.
    -- Update two days later.   So much for the better idea.
    Given that the Flow Trace of the last test looked suspiciously like this one one application and not two separate applications, I decided to test it further.  I have two PCs.  On each PC I have a soa domain, Uploaded the jms publisher to one domain, and the JMS Consumer to the other separate domain on the other PC.   Ran the publisher, and the other one just sat still -- didn't start at all.
    The first test was too good to be true!
    Stuart

  • JMS Queue monitoring

    Hi everyone,
    is there any way to monitor a jms queue with its contained messages ? i'm talking about a tool like the jmx console in jboss - the JMS Adapter and JMS Notification in the Visual Admin only provide some properties.
    Any suggestions ?

    Hi,
    In short what you want (sending email in case message has stayed too long time in the queue), is NOT possible directly. That's not a standard feature by the JMS spec.   
    What is possible is the is so-called dead messages, once the acknowledgment fails the predefined number of times then the messages will be redirected to a special queue. From there the messages can be exported by telnet.
    Check SAP note 777930 for more info. Btw, it might be a good idea to get familiar with that note, otherwise if the external server let's say always throws an exception while processing the message, it will be moved to this special queue and unless someone issues the appropriate telnet commands, nobody will understand about this.
    However if you disable this  feature, that will mean that the message will be delivered endlessly, causing CPU load. Not nice if you have doubts in your external listeners.                                                                               
    Now about the queue monitoring :
    You could create manually a periodic task (EJB timers in J2EE 1.4 which is covered in the prerelease of the next server version, or if you are using Netweaver 04s or 04s than perhaps java.util.Timer) that will periodically open a JMS browser, check the  messages in the queue, if they have stayed too long time (>100 seconds for example ?) or if the queue is too big (>100 messages) you can send manually the email alert that something has went wrong. By usage of the JAVA API that should be simple
    Another thing you can do is that inside your external listeners and the onMessage method, you could check manually the number of times the message is redelivered, if it is above some threshold (i.e . if it is 3, that means the SAP server has delivered the message 3 times , since the listener have rejected it 2 times already),then you can send the email via the standard java API. The delivery count can be retrieved by using the standard optional property JMSXDeliveryCount from the message.                                                      
    HTH
    Peter

  • MDB,MDB container or JMS adapter stops processing messages from JMS queue

    Hi guys,
    we have created a component using Enterprise Java Beans, let's say a product catalog, deployed it on a Glassfish v2 instance, and connected it to a legacy system using JMS and Sun MQ v4.1 as messaging system. The catalog component thus starts one MDB that listens on a JMS queue, let's say a queue named catalog_business_events_in, and waits for incoming messages, i.e. in our case update events. The problem is, that in general this approach works well, but sometimes the MDBs/JMS adapter stops for some reason fetching and processing messages from the JMS queue. We don't know why - no exceptions, etc.. Seems to be a Glassfish EJB container, JMS adapter or Sun MQ configuration issue. It seems to be that our component is not the problem.
    The messages are compressed/uncompressed by Sun MQ automatically. We actually have 2 Sun MQ instances in clustered mode running to have some kind of failover - no HA cluster, yet. Sun MQ instances are accessed from Glassfish instances running in different Glassfish clusters - so we have a dedicated Sun MQ cluster not a Sun MQ instance per Glassfish instance. Each Glassfish instance is configured such that it knows both Sun MQ instances to allow automatic failover.
    Has someone an idea, why the MDBs/ MDB container/ JMS adapter - stops processing messages? We are kind of puzzled as it happens more often now and apparently when traffic is (very) low not high!
    Thanks for your help.
    Cheers,
    Martin
    Edited by: east1979 on Jan 13, 2009 8:06 AM

    Hi Manoj,
    I have a very similar if not identical issue,
    Error while running realtime jobs that read from JMS tables via JMS MQ adapter:
    15/11/12 09:10:08  JMS GET OPERATION ERROR : TIMEOUT.UNABLE TO RECEIVE RESPONSE FROM THE INVOKED DATA SERVICES SERVICE.ADAPTER OPERA
    TION TO CONTINUE.
    15/11/12 09:10:15  Communication Error. See real time job log for details.
    Dump available:
    https://sapmats.wdf.sap.corp/download/download.cgi?id=5C0KZAHA3RSXBJW3ABLMUUT2P5UUKWO2TM3EJDM5W2HGDZUDID
    Version of DS:14.0.3.273
    Any comments?
    Thansk and kind Regards,
    Kenneth

  • Specifying message delivery time for a JMS queue

              Guys,
              Can anyone tell me as to if it possible to specify message delivery from a JMS
              queue to a listening MDB at a specified interval in weblogic . I mean I need
              to post messages to the JMS queue but I need the messages to be delivered to the
              MDB's after lets say 30 seconds .
              How can I do it using the weblogic console ?? Which property do i need to change
              Please advise.
              Thanks
              Kar
              

    Hi,
              Message delivery time can be set programmatically,
              or through a console override. In your case, set it via
              the console with the value "30000".
              This feature has been available since 6.1, and is a
              JMS extension.
              Here is the link to the 8.1 documentation:
              http://edocs.bea.com/wls/docs81/jms/implement.html#1235262
              And for a full list of WL JMS features, see here:
              http://edocs.bea.com/wls/docs81/jms/intro.html#jms_features
              Tom
              kar piyush wrote:
              > Guys,
              >
              > Can anyone tell me as to if it possible to specify message delivery from a JMS
              > queue to a listening MDB at a specified interval in weblogic . I mean I need
              > to post messages to the JMS queue but I need the messages to be delivered to the
              > MDB's after lets say 30 seconds .
              >
              > How can I do it using the weblogic console ?? Which property do i need to change
              > ?
              >
              > Please advise.
              >
              > Thanks
              >
              > Kar
              >
              >
              

Maybe you are looking for

  • User exit/ enhancement for billdoc creation using external billdoc number

    good day experts, my requirement is to allow assignment of external billing document. we have no problem with sales document and outbound delivery number. but for billing document, it seems no possible without user exit. I want to know the user exit

  • Oracle not working in the Secondary Server

    Hai All, I have two servers with Linux OS clustering. 2 months back we detach the secondry server from the clustering for some urgent. Later we plug the server to the Clustering and check the oracle connectivity etc. But a problem has occured that in

  • Set default audio track for playback in Source monitor

    So I'm an editor that is somewhat new to the profession and I am working on a project right now with close to 100 video clips in my project. Most of the clips have their audio recorded to track 2 but when I load the clips into the source window to fi

  • GDM/X Issue

    AMD Athlon 64 3000+ (2 GHz) 768 MB RAM nVidia GeForce 7600 GT (256 MB VRAM) Arch 64 + NV Driver I'm having a pretty major problem with my video card.  Since I upgraded to it, almost every distro I've tried has had a problem.  Ubuntu seems to handle t

  • Urgent - Cannot find instances

    Hi, I am facing below given error and am not sure whats really wrong. This happens when I try to log on to BPEL Console. If I restart the server, the error goes off and comes back after some time. I am running BPEL PM 10.1.3.3 on Jboss server and my