JMS has messages pending in the queue

Hi, I created a JMS queue to hold some messages, then two message driven bean each take a message from the queue and use JavaMail API 1.2 to send an email out. But somehow, after a while, say, a couple of weeks, there will be about 20 messages pending the queue causing the queue hanging forever. Does anybody know what cause this JMS queue pending? Or is there anything wrong with this design? Thank you very much.

No, Acknowledgement is sending successfully, no excpeption is raising, in finally it is got acknowledged.
here is code block,
public void sendObject(Serializable message) throws JMSException
try {
HelperMethods.logDebugMessage("begin sendObject " + System.currentTimeMillis(),
this.getClass().getName(), "sendObject");
ObjectMessage objectMessage = getQueueSession().createObjectMessage();
objectMessage.clearBody();
objectMessage.setObject(message);
getQueueSender().send(objectMessage);
HelperMethods.logDebugMessage("sent sendObject " +System.currentTimeMillis(),
this.getClass().getName(), "sendObject");
getQueueSession().commit();
catch (Exception e) {
HelperMethods.logDebugMessage("Exception" + e.getMessage(),
this.getClass().getName(), "sendObject");
throw new JMSException(e.getMessage());
public void onMessage(Message message) {
ObjectMessage objectMessage = (ObjectMessage) message;
AttachmentFileUtil attachUtil = new AttachmentFileUtil();
try {
HelperMethods.logDebugMessage("received write sendObject msg " +
System.currentTimeMillis(),
this.getClass().getName(), "onMessage");
if (message instanceof ObjectMessage) {
HelperMethods.logDebugMessage("about to process write sendObject msg " +
System.currentTimeMillis(),
this.getClass().getName(), "onMessage");
AttachmentInfoBean attachment = (AttachmentInfoBean)
objectMessage.getObject();
HelperMethods.logDebugMessage("processed the write sendObject msg " +
System.currentTimeMillis(),
this.getClass().getName(), "onMessage");
HelperMethods.logDebugMessage("writing the sendObject msg to disk " +
System.currentTimeMillis(),
this.getClass().getName(), "onMessage");
// Here we are calling attachment bean, which uploads the file into file server
     attachUtil.writeContents(attachment);
     HelperMethods.logDebugMessage("After writing the sendObject msg to disk ",
                                                       this.getClass().getName(), "onMessage");
          HelperMethods.logDebugMessage("After Commiting Session " +
                    System.currentTimeMillis(),
                    this.getClass().getName(), "onMessage");
HelperMethods.logDebugMessage(
"finished writing the sendObject msg to disk " +
System.currentTimeMillis(), this.getClass().getName(), "onMessage");
else {
HelperMethods.logDebugMessage(
"oops! no ObjectMessage was received" +
message.getClass(), this.getClass().getName(), "onMessage");
throw new NowException("not an ObjectMessage was received" +
message.getClass());
catch (Exception ex) {
ex.printStackTrace();
HelperMethods.logDebugMessage("Exception" + ex.getMessage(),
this.getClass().getName(), "onMessage");
finally {
try {
HelperMethods.logDebugMessage("acknowledging the message",
this.getClass().getName(), "onMessage");
objectMessage.acknowledge();
catch (JMSException ex) {
ex.printStackTrace();
HelperMethods.logDebugMessage("JMSException" + ex.getMessage(),
this.getClass().getName(), "onMessage");
This is my production problem, please suggest me ASAP.
Regards,
Murthy Patnaik

Similar Messages

  • Enforce to send the messages pending, after the Time To Deliver is changed

    JMS Queue is being used to send data from our database to the headquarters’ database.
              Our organization considers using "Time To Deliver Override" during the scheduled downtime of the headquarters’ database. For example, when our admin is informed by the headquarters' admin that downtime is scheduled, our admin can change "Time To Deliver Override" from -1 to 1200000 (20 hrs) in WebLogic Consol. Then, when the database is back, our admin will reset the value to -1.
              It is simple and quick. However, I realized that the messages pending will not processed for the “Time To Deliver” which was configured when the message was added.
              Can WebLogic enforce to send the messages pending, after the "Time To Deliver Override" is changed back to -1?

    A few related points:
              - I think 9.x may provide mbean/JMX/administrative options to change time-to-deliver in existing messages - but, even if it does, this seems unwieldy.
              - 9.x also provides options for adminstratrively pausing delivery of a destinations messages, and/or pausing MDBs.
              - I think the "time-to-deliver override" also supports setting absolute times via cron like schedules (eg - you can configure it so messages are born at a specific time.)
              - Another option is to introduce an intermediate destination and configure a "messaging bridge" to forward messages between them. When messaging needs to be pause, administratively stop the bridge.
              Tom

  • QueueBrowser doesn't work when messages are in the queue

    We are attempting to list off the messages in a JMQ 2.0 queue while our application is running. The code currently creates a new Connection & Session and then a new QueueBrowser on each queue. Following that, we get an Enumeration of the messages in the queue and print them out.
    When no messages are in the queue, this approach works fine and prints out all the relevent information. However, when a message is in the queue, the QueueBrowser just hangs. I've tried on transacted and non transacted QueueSessions and the same thing happens.
    Is this known behavior and is it possible to work around it?
    Thanks,
    Mike

    Try restarting the Mac with the ethernet cable plugged in and with a live device attached ('live device' = another Mac, a modem, a printer, or a hub/switch/router, which has been powered on).

  • Messages stuck in the queue... how do I make them to be processed again?

    Hi,
    I'm new to SAP PI and kinda confused with queues.
    I have file -> bpm -> file scenario and there was an error in mapping within bpm process.
    When I went to qRFC Monitor (smq2), I see that in XBQO$PE_WS90000002 queue,
    there's an error, 'Permanent error in BPE inbound processing'... which is expected.
    Now, I run the interface scenario again several times but they don't get processed
    but stuck in the same queue. At this stage, I didn't know what to do...
    I thought by deleting the error message, other messages will be processed...
    I deleted the error message but the other messages are still in the queue...
    I have two questoins.
    1. What is the best way to handle an error in the queue... can I just delete it? or is there a better way to handle an error in the queue?
    2. After deleting the queue, what should I do to make the other messages to be processed again...
    Thank you.
    -Won

    Hi Won,
    There are programs for restarting the LUW entries:
    programs
    · RSARFCRD: tRFC Monitor (transaction SM58)
    · RSARFCSE: Restart an LUW (background job)
    · RSARFCEX: Restart tRFC LUWs (background job)
    · RSQOWKEX: Restart QOUT qRFC LUWs
    · RSQIWKEX: Restart QIN qRFC LUWs
    · RSARFCSE: Delete an LUW (background job)
    · RSARFCER: Delete various LUWs
    Also, check the url:
    http://help.sap.com/saphelp_nw04/helpdata/en/25/bcfa40badbf46fe10000000a1550b0/content.htm
    Hope this helps.
    Regards,
    Sushama

  • Message processing in the queue for long time

    Hello All,
    We are executing a file to Idoc scenario. The mapping is very complex.
    The file to be processed is of size 125kb size. Which generates around 450 Idocs.
    The file is picked by the adapter engine in hardly a minute.
    But I see the message taking 6 hours to process in the Queue.
    (SMQ2)
    Is there a way I can improve and speed up the Queue processing.

    Hi,
    >message taking 6 hours to process in the Queue.
    It should not happen,
    Check whether all the Queue are Registered.
    /people/sap.india5/blog/2006/01/03/xi-asynchronous-message-processing-understanding-xi-queues-part-i
    https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/59e837d3-0201-0010-c096-dc1869733413
    Regards
    Agasthuri Doss

  • Messages waiting in the queue for long time.

    Hi Experts,
    We are having some Production issue - messages were waiting in the queue for long time and we found the errors in defaultTrace.12.trc file -
    Please help how to solve this issue its production and we need to move forward and solve this issue asap.
    XI AF API call failed. Module exception: (No information available). Cause Ex
    ception: 'JDBC Adapter configuration not initialized: null'.
    Thrown:
    com.sap.aii.af.service.api.AFException: XI AF API call failed. Module exception: (No information available). Cause Exception: 'JDBC Adapter configuration not
    initialized: null'.
            at com.sap.aii.af.service.api.AdapterAccess.sendMsg(AdapterAccess.java:214)
            at com.sap.aii.af.service.api.AdapterAccess.call(AdapterAccess.java:99)
            at com.sap.aii.ibrun.server.lookup.AdapterProxyLocal.process(AdapterProxyLocal.java:87)
            at com.sap.aii.ibrun.server.lookup.SystemAccessorInternal.call(SystemAccessorInternal.java:47)
            at com.sap.aii.mapping.lookup.SystemAccessor.call(SystemAccessor.java:115)
            at com.sony.pi.sp.StoredProceduresHandler.runScalarStoredProcedure(StoredProceduresHandler.java:86)
            at com.sap.xi.tf._MyPage_Invoice_SAP_to_Loyalty_MM_.invokePROC_CUSTOMER_DEDUP$(_MyPage_Invoice_SAP_to_Loyalty_MM_.java:1272)
            at sun.reflect.GeneratedMethodAccessor384.invoke(Unknown Source)
            at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
            at java.lang.reflect.Method.invoke(Method.java:324)
            at com.sap.aii.mappingtool.tf3.rt.C2CFunctionWrapper.cacheContext(C2CFunctionWrapper.java:91)
            at com.sap.aii.mappingtool.tf3.rt.C2CFunctionWrapper.gotoNextContext(C2CFunctionWrapper.java:44)
            at com.sap.aii.mappingtool.tf3.rt.Q2QFunctionWrapper.cacheQueue(Q2QFunctionWrapper.java:86)
            at com.sap.aii.mappingtool.tf3.rt.Q2QFunctionWrapper.gotoNextContext(Q2QFunctionWrapper.java:41)
            at com.sap.aii.mappingtool.tf3.rt.Q2QFunctionWrapper.cacheQueue(Q2QFunctionWrapper.java:74)
            at com.sap.aii.mappingtool.tf3.rt.Q2QFunctionWrapper.gotoNextContext(Q2QFunctionWrapper.java:41)
            at com.sap.aii.mappingtool.flib3.CollapseContexts.gotoNextValue(CollapseContexts.java:52)
            at com.sap.aii.mappingtool.flib3.CollapseContexts.gotoNextContext(CollapseContexts.java:37)
            at com.sap.aii.mappingtool.tf3.rt.AResIterator.gotoNextContext(AResIterator.java:37)
            at com.sap.aii.mappingtool.tf3.rt.FunctionWrapper.gotoNextContext(FunctionWrapper.java:37)
            at com.sap.aii.mappingtool.flib3.IfWithoutElse.gotoNextContext(IfWithoutElse.java:58)
            at com.sap.aii.mappingtool.tf3.AMappingProgram.processNode(AMappingProgram.java:266)
            at com.sap.aii.mappingtool.tf3.AMappingProgram.processNode(AMappingProgram.java:326)
            at com.sap.aii.mappingtool.tf3.AMappingProgram.processNode(AMappingProgram.java:326)
            at com.sap.aii.mappingtool.tf3.AMappingProgram.start(AMappingProgram.java:415)
            at com.sap.aii.mappingtool.tf3.Transformer.start(Transformer.java:142)
            at com.sap.aii.mappingtool.tf3.AMappingProgram.execute(AMappingProgram.java:118)
            at com.sap.aii.ibrun.server.mapping.JavaMapping.executeStep(JavaMapping.java:64)
            at com.sap.aii.ibrun.server.mapping.Mapping.execute(Mapping.java:92)
            at com.sap.aii.ibrun.server.mapping.MappingHandler.run(MappingHandler.java:90)
            at com.sap.aii.ibrun.sbeans.mapping.MappingRequestHandler.handleMappingRequest(MappingRequestHandler.java:95)
            at com.sap.aii.ibrun.sbeans.mapping.MappingRequestHandler.handleRequest(MappingRequestHandler.java:68)

    Hi All,
    CPACache refresh worked for one day and the same problem repeated again next day, but need to have parmanent fix and should know the root cause of the problem so that the problem can not be repeated again.
    Is there any solution other than  CPACache refresh and JDBC adapter stop and start to fix the issue.
    And also found some entries in SM12 lock entry list during the same schedule time when the messages was triggered and remains for long time. Let me know whether we can delete those locks ?
    user PIAFUSER
    Lock mode E
    and table SXMSPMAST
    with lock argument ......
    Any suggestions and tips help us alot in fixing this issue.
    Thanks in advance
    Gary.

  • Need to raise an Alert for huge Volume of messages struck in the queue

    Dear All,
    I have a query which is mentioned below.
    The Partners send huge number of volume of messages at a time to PI Server and due to this reason,the messages are getting struck up in the inbound/outbound queue.Everytime the user manually check for the struck up messages and reprocess it.
    Example: One Partner sends  50,000 number of ORDERS at a time.
    Now an alert needs to be raised for those messages which  got struck up ( i.e. messages on hold and "not failed") in the queue.
    Please share your inputs /suggestion.
    Warm Regards
    B.Dheepa

    Hi,
    Else you can implement the Logic in this blog
    XI :  How to Re-Process failed XI Messages Automatically
    You can Schedule the Strandard Reports to release  automatically the Strucked messages in Queues
    Regards
    Seshagiri

  • Re: 1000 messages left in the queue

    Sounds like your producer is doing a transactional lock on the write, like it is waiting for a session.commit() on it. What is the structure (environment) of your producer?

    Ok... these are the instance variables & imports of mention...
    import com.sun.messaging.jms.Session;
    import javax.jms.*;
    import javax.naming.NamingException;
    import java.io.IOException;
    import java.io.Serializable;
    import java.util.Enumeration;
    private Queue queue;
    private QueueSender sender;
    private QueueReceiver receiver;
    private QueueConnection connection;
    private QueueSession session;

  • Send JMS rollbacked message to del letter queue

              Hi,
              I have one MDB, which calls an EJB Stateless. This EJB belongs to a container
              managed transaction and it can make a Rollback (setRollbackOnly()).
              My problem is that if the MDB belongs to the container-managed transaction, when
              a rollback is sent, the received JMS message is put back in the JMS queue. But,
              I want to send it in a del letter queue.
              And if the MDB does not belong to the transaction, I could not know that the transaction
              is rollbacked!
              Do you know how can I resolve this problem?
              Thanks
              Charles
              

    Charles,
              Search the JMS newsgroup with Google and you should find the answer.
              There is a setting (I know it exists but I've never used it and don't
              know the exact details on how to use it) that you can change and after a
              few tries the message is put into another queue.
              --dejan
              Charles Desmoulins wrote:
              >Hi,
              >
              >I have one MDB, which calls an EJB Stateless. This EJB belongs to a container
              >managed transaction and it can make a Rollback (setRollbackOnly()).
              >
              >My problem is that if the MDB belongs to the container-managed transaction, when
              >a rollback is sent, the received JMS message is put back in the JMS queue. But,
              >I want to send it in a del letter queue.
              >
              >And if the MDB does not belong to the transaction, I could not know that the transaction
              >is rollbacked!
              >
              >Do you know how can I resolve this problem?
              >
              >Thanks
              >Charles
              >
              >
              >
              

  • JMS Messages getting stuck in queues

    Hi,
    I am facing this peculiar issue with queue messages not getting picked up.
    Application Architecture: There is 1 JMS queue ( which resides in WLDomain1 with in a Unix Box) and there are 2 windows boxes having 2 weblogic domains each with 3 instances of MDB deployed on each of the domains. So total of 12 consumers (2 Box * 2 Domain * 3 Instances of MDB) listens to the JMS queue.
    Issue: After bringing everything up I am able to see 12 consumer count listening to the queue. But when I run the application which writes total of 13 messages in the queue only 7 of them are getting processed and 6 messages are always getting stuck in the queues. Interestingly this 7 messages are mostly getting processed by consumers with in the same windows box. And the selection of windows box is completely random. To confirm whether both the windows boxes are configured fine I tried to test them individually and it works fine individually, the problem happens only if I bring up both the boxes together.
    Another observation is, if I bring down the non working domains, the pending messages start getting processed by the working domains. It gives an impression that the non working domains seem to lock the messages for processing but doesn't actually process it. Only when I bring down the domains it releases this lock.
    Below is the JMS Life cycle events I captured from log files :
    1. Start domain1 in WIN Box1
    ####<Nov 24, 2009 7:54:00 PM CST> <> <> <1259114040304> <783400> <> <> <JMSModule!Queue> <ConsumerCreate> <<anonymous>> <MC:CA(/<IP_BOX1>):OAMI(server.jms.connection59.session60.consumer62)> <> <>
    ####<Nov 24, 2009 7:54:00 PM CST> <> <> <1259114040309> <239900> <> <> <JMSModule!Queue> <ConsumerCreate> <<anonymous>> <MC:CA(/<IP_BOX1>):OAMI(server.jms.connection59.session63.consumer65)> <> <>
    ####<Nov 24, 2009 7:54:00 PM CST> <> <> <1259114040313> <2100> <> <> <JMSModule!Queue> <ConsumerCreate> <<anonymous>> <MC:CA(/<IP_BOX1>):OAMI(server.jms.connection59.session66.consumer68)> <> <>
    2. Start domain2 in WIN Box 1
    ####<Nov 24, 2009 7:54:55 PM CST> <> <> <1259114095403> <38600> <> <> <JMSModule!Queue> <ConsumerCreate> <<anonymous>> <MC:CA(/<IP_BOX1>):OAMI(server.jms.connection69.session70.consumer72)> <> <>
    ####<Nov 24, 2009 7:54:55 PM CST> <> <> <1259114095407> <335400> <> <> <JMSModule!Queue> <ConsumerCreate> <<anonymous>> <MC:CA(/<IP_BOX1>):OAMI(server.jms.connection69.session73.consumer75)> <> <>
    ####<Nov 24, 2009 7:54:55 PM CST> <> <> <1259114095410> <997700> <> <> <JMSModule!Queue> <ConsumerCreate> <<anonymous>> <MC:CA(/<IP_BOX1>):OAMI(server.jms.connection69.session76.consumer78)> <> <>
    3. Start domain1 in WIN Box 2
    ####<Nov 24, 2009 7:56:12 PM CST> <> <> <1259114172061> <316500> <> <> <JMSModule!Queue> <ConsumerCreate> <<anonymous>> <MC:CA(/<IP_BOX2>):OAMI(server.jms.connection79.session80.consumer82)> <> <>
    ####<Nov 24, 2009 7:56:12 PM CST> <> <> <1259114172066> <324300> <> <> <JMSModule!Queue> <ConsumerCreate> <<anonymous>> <MC:CA(/<IP_BOX2>):OAMI(server.jms.connection79.session83.consumer85)> <> <>
    ####<Nov 24, 2009 7:56:12 PM CST> <> <> <1259114172072> <757000> <> <> <JMSModule!Queue> <ConsumerCreate> <<anonymous>> <MC:CA(/<IP_BOX2>):OAMI(server.jms.connection79.session86.consumer88)> <> <>
    4. Start domain2 in WIN Box 2
    ####<Nov 24, 2009 7:56:54 PM CST> <> <> <1259114214000> <142800> <> <> <JMSModule!Queue> <ConsumerCreate> <<anonymous>> <MC:CA(/<IP_BOX2>):OAMI(server.jms.connection89.session90.consumer92)> <> <>
    ####<Nov 24, 2009 7:56:54 PM CST> <> <> <1259114214005> <38200> <> <> <JMSModule!Queue> <ConsumerCreate> <<anonymous>> <MC:CA(/<IP_BOX2>):OAMI(server.jms.connection89.session93.consumer95)> <> <>
    ####<Nov 24, 2009 7:56:54 PM CST> <> <> <1259114214009> <22400> <> <> <JMSModule!Queue> <ConsumerCreate> <<anonymous>> <MC:CA(/<IP_BOX2>):OAMI(server.jms.connection89.session96.consumer98)> <> <>
    At this point console shows 12 consumers listening the queue which is absolutely fine.
    5. Run application
    --Message Production
    This produces 13 messages ( I have not pasted the complete log)
    -- Message Consumption ( Only 7 messages are consumed)
    ####<Nov 24, 2009 8:00:05 PM CST> <> <> <1259114405953> <576400> <ID:<1047832.1259114392542.0>> <> <JMSModule!Queue> <Consumed> <<anonymous>> <MC:CA(/<IP_BOX1>):OAMI(server.jms.connection59.session63.consumer65)> <&lt;?xml version="1.0" encoding="UTF-8"?&gt;
    &lt;mes:WLJMSMessage xmlns:mes="http://www.bea.com/WLS/JMS/Message"&gt;&lt;mes:Header&gt;&lt;mes:JMSTimestamp&gt;1259114392542&lt;/mes:JMSTimestamp&gt;&lt;mes:Properties/&gt;&lt;/mes:Header&gt;&lt;/mes:WLJMSMessage&gt;> <>
    ####<Nov 24, 2009 8:00:10 PM CST> <> <> <1259114410091> <310100> <ID:<1047832.1259114393181.0>> <> <JMSModule!Queue> <Consumed> <<anonymous>> <MC:CA(/<IP_BOX1>):OAMI(server.jms.connection59.session66.consumer68)> <&lt;?xml version="1.0" encoding="UTF-8"?&gt;
    &lt;mes:WLJMSMessage xmlns:mes="http://www.bea.com/WLS/JMS/Message"&gt;&lt;mes:Header&gt;&lt;mes:JMSTimestamp&gt;1259114393181&lt;/mes:JMSTimestamp&gt;&lt;mes:Properties/&gt;&lt;/mes:Header&gt;&lt;/mes:WLJMSMessage&gt;> <>
    ####<Nov 24, 2009 8:00:10 PM CST> <> <> <1259114410130> <364600> <ID:<1047832.1259114400626.0>> <> <JMSModule!Queue> <Consumed> <<anonymous>> <MC:CA(/<IP_BOX1>):OAMI(server.jms.connection59.session63.consumer65)> <&lt;?xml version="1.0" encoding="UTF-8"?&gt;
    &lt;mes:WLJMSMessage xmlns:mes="http://www.bea.com/WLS/JMS/Message"&gt;&lt;mes:Header&gt;&lt;mes:JMSTimestamp&gt;1259114400626&lt;/mes:JMSTimestamp&gt;&lt;mes:Properties/&gt;&lt;/mes:Header&gt;&lt;/mes:WLJMSMessage&gt;> <>
    ####<Nov 24, 2009 8:00:10 PM CST> <> <> <1259114410134> <540700> <ID:<1047832.1259114393125.0>> <> <JMSModule!Queue> <Consumed> <<anonymous>> <MC:CA(/<IP_BOX1>):OAMI(server.jms.connection69.session76.consumer78)> <&lt;?xml version="1.0" encoding="UTF-8"?&gt;
    &lt;mes:WLJMSMessage xmlns:mes="http://www.bea.com/WLS/JMS/Message"&gt;&lt;mes:Header&gt;&lt;mes:JMSTimestamp&gt;1259114393125&lt;/mes:JMSTimestamp&gt;&lt;mes:Properties/&gt;&lt;/mes:Header&gt;&lt;/mes:WLJMSMessage&gt;> <>
    ####<Nov 24, 2009 8:00:10 PM CST> <> <> <1259114410137> <632400> <ID:<1047832.1259114393128.0>> <> <JMSModule!Queue> <Consumed> <<anonymous>> <MC:CA(/<IP_BOX1>):OAMI(server.jms.connection69.session73.consumer75)> <&lt;?xml version="1.0" encoding="UTF-8"?&gt;
    &lt;mes:WLJMSMessage xmlns:mes="http://www.bea.com/WLS/JMS/Message"&gt;&lt;mes:Header&gt;&lt;mes:JMSTimestamp&gt;1259114393128&lt;/mes:JMSTimestamp&gt;&lt;mes:Properties/&gt;&lt;/mes:Header&gt;&lt;/mes:WLJMSMessage&gt;> <>
    ####<Nov 24, 2009 8:00:12 PM CST> <> <> <1259114412026> <984200> <ID:<1047832.1259114393123.0>> <> <JMSModule!Queue> <Consumed> <<anonymous>> <MC:CA(/<IP_BOX1>):OAMI(server.jms.connection59.session60.consumer62)> <&lt;?xml version="1.0" encoding="UTF-8"?&gt;
    &lt;mes:WLJMSMessage xmlns:mes="http://www.bea.com/WLS/JMS/Message"&gt;&lt;mes:Header&gt;&lt;mes:JMSTimestamp&gt;1259114393123&lt;/mes:JMSTimestamp&gt;&lt;mes:Properties/&gt;&lt;/mes:Header&gt;&lt;/mes:WLJMSMessage&gt;> <>
    ####<Nov 24, 2009 8:00:16 PM CST> <> <> <1259114416045> <41800> <ID:<1047832.1259114400005.0>> <> <JMSModule!Queue> <Consumed> <<anonymous>> <MC:CA(/<IP_BOX1>):OAMI(server.jms.connection69.session70.consumer72)> <&lt;?xml version="1.0" encoding="UTF-8"?&gt;
    &lt;mes:WLJMSMessage xmlns:mes="http://www.bea.com/WLS/JMS/Message"&gt;&lt;mes:Header&gt;&lt;mes:JMSTimestamp&gt;1259114400005&lt;/mes:JMSTimestamp&gt;&lt;mes:Properties/&gt;&lt;/mes:Header&gt;&lt;/mes:WLJMSMessage&gt;> <>
    6. At this point Admin Consol shows 6 messages pending in the queue
    and From consumer numbers it is evident that consumers in WIN Box2 domains have not processed any messages
    Now if I stop server in WIN Box2 Domain1, WIN Box1 picks up the messages instantely
    ####<Nov 24, 2009 8:13:22 PM CST> <> <> <1259115202343> <897600> <> <> <JMSModule!Queue> <ConsumerDestroy> <<anonymous>> <MC:CA(/<IP_BOX2>):OAMI(server.jms.connection79.session80.consumer82)> <> <>
    ####<Nov 24, 2009 8:13:22 PM CST> <> <> <1259115202346> <421900> <> <> <JMSModule!Queue> <ConsumerDestroy> <<anonymous>> <MC:CA(/<IP_BOX2>):OAMI(server.jms.connection79.session83.consumer85)> <> <>
    ####<Nov 24, 2009 8:13:22 PM CST> <> <> <1259115202379> <582300> <> <> <JMSModule!Queue> <ConsumerDestroy> <<anonymous>> <MC:CA(/<IP_BOX2>):OAMI(server.jms.connection79.session86.consumer88)> <> <>
    ####<Nov 24, 2009 8:13:24 PM CST> <> <> <1259115204888> <4600> <ID:<1047832.1259114400029.0>> <> <JMSModule!Queue> <Consumed> <<anonymous>> <MC:CA(/<IP_BOX1>):OAMI(server.jms.connection69.session76.consumer78)> <&lt;?xml version="1.0" encoding="UTF-8"?&gt;
    &lt;mes:WLJMSMessage xmlns:mes="http://www.bea.com/WLS/JMS/Message"&gt;&lt;mes:Header&gt;&lt;mes:JMSTimestamp&gt;1259114400029&lt;/mes:JMSTimestamp&gt;&lt;mes:Properties/&gt;&lt;/mes:Header&gt;&lt;/mes:WLJMSMessage&gt;> <>
    ####<Nov 24, 2009 8:13:32 PM CST> <> <> <1259115212820> <256700> <ID:<1047832.1259114400258.0>> <> <JMSModule!Queue> <Consumed> <<anonymous>> <MC:CA(/<IP_BOX1>):OAMI(server.jms.connection59.session66.consumer68)> <&lt;?xml version="1.0" encoding="UTF-8"?&gt;
    &lt;mes:WLJMSMessage xmlns:mes="http://www.bea.com/WLS/JMS/Message"&gt;&lt;mes:Header&gt;&lt;mes:JMSTimestamp&gt;1259114400258&lt;/mes:JMSTimestamp&gt;&lt;mes:Properties/&gt;&lt;/mes:Header&gt;&lt;/mes:WLJMSMessage&gt;> <>
    ####<Nov 24, 2009 8:13:43 PM CST> <> <> <1259115223579> <280600> <ID:<1047832.1259114400032.0>> <> <JMSModule!Queue> <Consumed> <<anonymous>> <MC:CA(/<IP_BOX1>):OAMI(server.jms.connection59.session60.consumer62)> <&lt;?xml version="1.0" encoding="UTF-8"?&gt;
    &lt;mes:WLJMSMessage xmlns:mes="http://www.bea.com/WLS/JMS/Message"&gt;&lt;mes:Header&gt;&lt;mes:JMSTimestamp&gt;1259114400032&lt;/mes:JMSTimestamp&gt;&lt;mes:Properties/&gt;&lt;/mes:Header&gt;&lt;/mes:WLJMSMessage&gt;> <>
    7. At this poing Admin Consol shows 3 messages pending in the queue
    Now if I stop server in WIN Box2 Domain2, the remaining 3 gets processed
    ####<Nov 24, 2009 8:16:08 PM CST> <> <> <1259115368998> <193400> <> <> <JMSModule!Queue> <ConsumerDestroy> <<anonymous>> <MC:CA(/<IP_BOX2>):OAMI(server.jms.connection89.session90.consumer92)> <> <>
    ####<Nov 24, 2009 8:16:08 PM CST> <> <> <1259115369000> <885500> <> <> <JMSModule!Queue> <ConsumerDestroy> <<anonymous>> <MC:CA(/<IP_BOX2>):OAMI(server.jms.connection89.session93.consumer95)> <> <>
    ####<Nov 24, 2009 8:16:09 PM CST> <> <> <1259115369002> <902500> <> <> <JMSModule!Queue> <ConsumerDestroy> <<anonymous>> <MC:CA(/<IP_BOX2>):OAMI(server.jms.connection89.session96.consumer98)> <> <>
    ####<Nov 24, 2009 8:16:25 PM CST> <> <> <1259115385151> <123700> <ID:<1047832.1259114400324.0>> <> <JMSModule!Queue> <Consumed> <<anonymous>> <MC:CA(/<IP_BOX1>):OAMI(server.jms.connection69.session70.consumer72)> <&lt;?xml version="1.0" encoding="UTF-8"?&gt;
    &lt;mes:WLJMSMessage xmlns:mes="http://www.bea.com/WLS/JMS/Message"&gt;&lt;mes:Header&gt;&lt;mes:JMSTimestamp&gt;1259114400324&lt;/mes:JMSTimestamp&gt;&lt;mes:Properties/&gt;&lt;/mes:Header&gt;&lt;/mes:WLJMSMessage&gt;> <>
    ####<Nov 24, 2009 8:16:29 PM CST> <> <> <1259115389660> <836600> <ID:<1047832.1259114400535.0>> <> <JMSModule!Queue> <Consumed> <<anonymous>> <MC:CA(/<IP_BOX1>):OAMI(server.jms.connection59.session63.consumer65)> <&lt;?xml version="1.0" encoding="UTF-8"?&gt;
    &lt;mes:WLJMSMessage xmlns:mes="http://www.bea.com/WLS/JMS/Message"&gt;&lt;mes:Header&gt;&lt;mes:JMSTimestamp&gt;1259114400535&lt;/mes:JMSTimestamp&gt;&lt;mes:Properties/&gt;&lt;/mes:Header&gt;&lt;/mes:WLJMSMessage&gt;> <>
    ####<Nov 24, 2009 8:16:37 PM CST> <> <> <1259115397823> <610200> <ID:<1047832.1259114400432.0>> <> <JMSModule!Queue> <Consumed> <<anonymous>> <MC:CA(/<IP_BOX1>):OAMI(server.jms.connection69.session73.consumer75)> <&lt;?xml version="1.0" encoding="UTF-8"?&gt;
    &lt;mes:WLJMSMessage xmlns:mes="http://www.bea.com/WLS/JMS/Message"&gt;&lt;mes:Header&gt;&lt;mes:JMSTimestamp&gt;1259114400432&lt;/mes:JMSTimestamp&gt;&lt;mes:Properties/&gt;&lt;/mes:Header&gt;&lt;/mes:WLJMSMessage&gt;> <>
    Kindly throw some light on this issue. Also do let me know if you need any more specific details about this.
    Thanks,
    Abhijeet
    Edited by: user5240164 on Nov 25, 2009 11:35 AM
    Edited by: user5240164 on Nov 28, 2009 1:21 PM

    Hi,
    The problem may be conflicting names in your configuration. To ensure proper operation of WL Security, JMS, JTA, and JDBC, make sure that (A) each domain has a unique name, and (B) no two WebLogic servers have the same name (even if in two different domains).
    To ensure a more even distribution of messages, either simply send more than a token amount messages (eg, a hundred or so, rather than just 12), or configure a custom connection factory on the domain that hosts the queue, reduce MessagesMaximum on the connection factory to 1, and then modify each MDB to refer to the custom connection factory. The MessagesMaximum setting controls the number of messages that can be pre-pushed (pipelined) to a single asynchronous consumer.
    For more information see "Best Practices for JMS Beginners and Advanced Users" in the latest versions of the JMS admin guide, and "JMS Performance & Tuning Check List" in the WebLogic Performance and Tuning guide.
    Tom

  • Backing Up and Restoring the Message Store v.s. the queue

    Hello,
    We are running iPlanet 5.2 Messaging Server and need to migrate to another (duplicate) 5.2 Messaging Server. We have all the software installed and the LDAP user accounts created. Now we just need to move the existing mail from one server to the other.
    I found the Backing Up and Restoring the Message Store section in the Admin Guide says to back up and restore your data, Messaging Server provides the imsbackup and imsrestore utilities.
    However I am wondering about the Queue?
    Under <instance>/imta/queue
    What is the difference between the Message Store
    and the Queue? Can I just backup and restore the Queue using tar or cpio?
    Thanks in advance for any advice.
    Regards,
    Tim

    Hello,
    We are running iPlanet 5.2 Messaging Server and need
    to migrate to another (duplicate) 5.2 Messaging
    Server. We have all the software installed and the
    LDAP user accounts created. Now we just need to move
    the existing mail from one server to the other.
    I found the Backing Up and Restoring the Message
    Store section in the Admin Guide says to back up and
    restore your data, Messaging Server provides the
    imsbackup and imsrestore utilities.
    However I am wondering about the Queue?
    Under <instance>/imta/queue
    What is the difference between the Message Store
    and the Queue? The Message Store is where messages get delivered to, so you can read them.'
    The queue is where messages are temporarily stored, pending delivery to wherever they go.
    You can use tar, cpio, or what have you for the queue. Stop the server first. . .
    You then just restore the files to the new server. No need to restart or anything like that. Just dump the files in, and run
    imsimta cache -sync
    to tell the MTA to re-read the queue.
    Can I just backup and restore the
    Queue using tar or cpio?
    Thanks in advance for any advice.
    Regards,
    Tim

  • MQ Adapter does not clear the rejected message from the queue

    Hi All,
    I'm using a MQ Adapter to fetch the message from the queue without any Backout queue configured. However, whenever there is any bad structured message found in the queue, MQ adapter rejects the message and moves the message to the rejmsg folder but does not clear it off the queue, as a result of which it keeps retrying the same hence, filling the logs and the physical memory. Somehow we do not have any backout queue configured so I can move the message to blackout queue. I have tried configuring the jca retry properties and global jca retry as well but to no avail.
    - Is it not the default behaviour of MQ Adapter to remove the rejected message from the queue irrespective of Backout queue is configured or not? The same behaviour working well with the JMS and File Adapter though.
    - Is there any way I can make MQ Adapter delete the message from that queue once it is rejected?
    Regards,
    Neeraj Sehgal

    Hi Jayson,
    Check this URL which answers a problem with com.sap.engine.boot.loader.ResourceMultiParentClassLoader problem:
    http://209.85.175.132/search?q=cache:RnFZ9viwuKkJ:https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/pcd!3aportal_content!2fcom.sap.sdn.folder.sdn!2fcom.sap.sdn.folder.application!2fcom.sap.sdn.folder.roles!2fcom.sap.sdn.folder.navigationroles!2fcom.sap.sdn.role.anonymous!2fcom.sap.sdn.tln.workset.forums!2fforumtest!2fcom.sap.sdn.app.iview.forumthread%3FQuickLink%3Dthread%26tstart%3D45%26threadID%3D1020700+com.sap.engine.boot.loader.ResourceMultiParentClassLoader&hl=en&ct=clnk&cd=3&gl=in&client=firefox-a
    Please check that the JDK compliance level is at 5.0
    Window->Preferences->Java->Compiler->Compiler compliance level set this to 5.0
    Set the installed JRE to the one you have mentioned JDK 5.0 update 16
    Window->Preferences->Java->Installed JRE's->
    Click on the add button to select the path of your JDK.
    once completed click on the check box next to it.
    regards,
    AKD

  • Messages Current and Messages pending in JMS

    Hello All,
    I would like to know the difference between Messages Current and Messages Pending in the JMS monitoring tab.
    I did read the official documentation but to be honest I am not sure I am undestanding it right !
    Could someone explain to me (in simple terms :-) the difference between the two ?
    Many thanks.

    Hi,
    Can you please tell me what fields in the Message Header indicate about the source and/ or target systems? For example the Directory header parameter, of Sender FILE channel, tells me from where the file was picked up.
    Likewise what does the field JMSDestination stands for?
    The screenshot which I have shows the JMS Message Header Details (the ASMA characters).
    Tried searching for fields like JMSDestination, but there is no information on SDN abou it.
    Thank you,
    Pankaj.

  • Static information to be added in  message header of the XI message  in JMS

    Hi Friends ,
    Is it possible to add some customer specific internal information to message header of the XI message in PI 7.1 level.. If so how ?
    customer wants to add some info and to verify whether it would be handled in PI itself or not..
    Business case :  SAP -
    > PI7.1 -
    > IBM MQ
    All inputs will be appreciated .
    Thanks.,
    V.Rangarajan

    Hi preetak ,
    Thanks for your info .Since i have not worked on JMS adapter
    As per the Link it says as follows
    If you want to set additional JMS message attributes, select Specify Additional JMS Message Properties (10 Maximum).
    ·        In the table, enter the Name and Java Type of the JMS message properties whose values are to be included in the message header of the XI message.
    Under Java Type, you define the JMS Java message type for the attribute in the created JMS message. The following are possible entries:
    boolean , init , String etc.,
    Question
    1. How to pass the value to this parameter  will it be XML file with parameter name and value ?
    2. Any other blogs to refer ?
    Thanks .,
    V.Rangarajan

  • What is the consequence if I delete the BDoc Messages from the Queue?

    Hi,
    What is the consequence if I delete the BDoc Message (SMW01) from the queue with any state (e.g. intermediate)?
    Regards,
    Alex.

    Hi Alex.
    I had a similar issue with Bdoc. We have had a lot of errors comming through as our CRM & ECC syste were out of sync.
    You need to look into the exact error message before you delete a Bdoc. I would suggest that you do not delete any Bdoc message unless you are sure of the error is and it is fixed.
    Hope this helps
    Mohammed.
    Edited by: Mohammed Faisal on Jun 2, 2010 4:43 PM

Maybe you are looking for