Orion JMS onMessage() is not avlid??!!!

while(true)
// Wait for a request for coffee
Message msg = qreceiver.receive();
System.out.println("Recive the Message:====");
if (msg instanceof TextMessage) {
try{
TextMessage Tmsg = (TextMessage) msg;
System.out.println("Reading message: " + Tmsg.getText());
catch(Exception e)
e.printStackTrace();
//------------------is OK!!!
receiver.setMessageListener(this);
public void onMessage(Message msg)
System.out.println("Recive the Message:====");
if (msg instanceof TextMessage) {
try{
TextMessage Tmsg = (TextMessage) msg;
System.out.println("Reading message: " + Tmsg.getText());
catch(Exception e)
e.printStackTrace();
//System.out.println( msg.toString());
// is no work !!!!????
WHY????

There is bug in MessageRecriver.
We also faced problem while we send a message to queue it send it properly but client can't receive it.
It is posted BUG on Orion site.
Orion is OC4J :-)
Ig you face more problem about basic issues you can log to http://www.orionserver.com/
Click on Mailing list and then click on look here link or search for your topic. I think that will help you lot.
regards,
vijay

Similar Messages

  • Javax.jms.IllegalStateException: Operation not allowed

    Hi all, (first time posting, so go easy on me!)
    just wondering can anyone out their shed some light on a problem I am having here with JMS. I am attempting to access JMS from a stateless EJB. The problem is I get an illegalStateException when I call "setMessageListener(..)". The bean simply creates an object (which implements the MessageListener interface) passing an RMI client callback reference into the constructor. The idea here is that when JMS forwards a message onto my listener, in the onMessage(..) function I call back into the RMI client. So the idea sounds simple, but JMS wont let me register the listener from the EJB. Heres some code and the exception which is generated (including the call stack):
    jndiContext = new InitialContext();
    Object objRef = (Object)jndiContext.lookup ("java:comp/env/jms/TopicConnectionFactory");
    topicConnectionFactory = (TopicConnectionFactory)PortableRemoteObject.narrow(objRef, TopicConnectionFactory.class);
    topic = (Topic) jndiContext.lookup(topicName);
    topicConnection = topicConnectionFactory.createTopicConnection("Administrator", "123");
    topicSession = topicConnection.createTopicSession(false, Session.AUTO_ACKNOWLEDGE);
    topicSubscriber = topicSession.createSubscriber(topic);
    AppletSubscriber as = new AppletSubscriber(listener);
    topicSubscriber.setMessageListener(as); // here's were the exception is thrown
    Here's the exception & stack trace:
    JMS Exception registerEventsListener: javax.jms.IllegalStateException: Operation
    not allowed
    javax.jms.IllegalStateException: Operation not allowed
    at com.sun.enterprise.jms.MessageConsumerWrapperRestricted.setMessageLis
    tener(MessageConsumerWrapperRestricted.java:40)
    at RespondAdministrator.registerUserEventsListener(RespondAdministrator.
    java:61)
    at UserLogOnEJB.registerUserEventsListener(UserLogOnEJB.java:53)
    at UserLogOnEJB_EJBObjectImpl.registerUserEventsListener(UserLogOnEJB_EJ
    BObjectImpl.java:57)
    at UserLogOnEJBEJBObjectImpl_Tie._invoke(Unknown Source)
    at com.sun.corba.ee.internal.POA.GenericPOAServerSC.dispatchToServant(Ge
    nericPOAServerSC.java:519)
    at com.sun.corba.ee.internal.POA.GenericPOAServerSC.internalDispatch(Gen
    ericPOAServerSC.java:204)
    at com.sun.corba.ee.internal.POA.GenericPOAServerSC.dispatch(GenericPOAS
    erverSC.java:112)
    at com.sun.corba.ee.internal.iiop.ORB.process(ORB.java:273)
    at com.sun.corba.ee.internal.iiop.RequestProcessor.process(RequestProces
    sor.java:84)
    at com.sun.corba.ee.internal.orbutil.ThreadPool$PooledThread.run(ThreadP
    ool.java:99)
    thanks in advance, this is driving me nuts.

    The reason you get this is that you cannot use MessageListeners within a J2EE environment. The J2EE specification says that this method should not work from within EJBs. If you wish to have asynchronous message delivery from an EJB you need to use EJB 2.0s Message Driven Beans.
    Hope this helps.

  • QueueBrowser not scaning all messages in JMS queue (ie not showing inprogre

    Hi all,
    I am using JMS in jboss-3.2.3, when scaning for pending messages i am using QueueBrowser.
    But QueueBrowser not scaning all messages in JMS queue (ie not showing inprogress message)
    But i need to know all messages including ongoing messages..
    Antone plz help me
    I am using Queuesender and QueueReceiver ..But some Exception or Error causes my JMS server(QueueReceiver listening for onMessage()) hanged up..and not responding to remaining messages...So i need to find pending messags in JMS queue..How can find?
    Now i am using QueueBrowser to get list of pending msgs in queue... But doesn't contains Message which passed for processing (called onMessage())
    .. But i need to find this also..How can?
    Thanks,
    Thilsen

    You're right in thinking that the behaviour you describe looks wrong.
    Take a look at the QueueBrowser interface which can be used to inspect a queue. You get one using QueueSession.createBrowser(Queue). The QueueBrowser allows you to scan a queue without consuming the messages. However note that the state of the queue may change while you're observing it through the QueueBrowser so what you see might not always be a 100% accurate representation of the queue at any given time.
    Other things to check:
    - message selectors - are you setting a message selector on your queue receiver which is resulting in not all of the messages 'matching'.
    - expired messages - are you setting a time-to-live on the messages that you publish.
    Hope this helps,
    David Ingham
    http://www.arjuna.com

  • OnMessage() method not triggered

    I can able to send message to Queue but the onMessage() method not invoked.Please help me out resolve this problem.

    yes ur correct but i didn't call start() method but i don' know where i need to call.here i have paste my code plz tell me where i need to call start method.
    package mdb;
    * Copyright 2001 Sun Microsystems, Inc. All Rights Reserved.
    * This software is the proprietary information of Sun
    * Microsystems, Inc. Use is subject to license terms.
    import java.io.Serializable;
    import java.rmi.RemoteException;
    import javax.ejb.EJBException;
    import javax.ejb.MessageDrivenBean;
    import javax.ejb.MessageDrivenContext;
    import javax.ejb.CreateException;
    import javax.naming.*;
    import javax.jms.*;
    public class SimpleMessageBean implements MessageDrivenBean,MessageListener {
    private transient MessageDrivenContext mdc = null;
    private Context context;
    public SimpleMessageBean() {
    System.out.println("In SimpleMessageBean.SimpleMessageBean()");
    public void setMessageDrivenContext(MessageDrivenContext mdc) {
    System.out.println("In "
    + "SimpleMessageBean.setMessageDrivenContext()");
         this.mdc = mdc;
    public void ejbCreate() {
         System.out.println("In SimpleMessageBean.ejbCreate()");
    public void onMessage(Message inMessage) {
    TextMessage msg = null;
    try {
    if (inMessage instanceof TextMessage) {
    msg = (TextMessage) inMessage;
    System.out.println("MESSAGE BEAN: Message received: "
    + msg.getText());
    } else {
    System.out.println("Message of wrong type: "
    + inMessage.getClass().getName());
    } catch (JMSException e) {
    e.printStackTrace();
    mdc.setRollbackOnly();
    } catch (Throwable te) {
    te.printStackTrace();
    } // onMessage
    public void ejbRemove() {
    System.out.println("In SimpleMessageBean.remove()");
    } // class
    here is weblogic-ejb.xml
    <!-- Sample MessageDriven bean Weblogic deployment descriptor -->
    <weblogic-ejb-jar>
         <weblogic-enterprise-bean>
              <ejb-name>SimpleMessageBean</ejb-name>
              <message-driven-descriptor>
                   <pool>
                        <max-beans-in-free-pool>2</max-beans-in-free-pool>
                        <initial-beans-in-free-pool>1</initial-beans-in-free-pool>
                   </pool>          
                   <destination-jndi-name>JNDIMDBQueue</destination-jndi-name>                    
                   <connection-factory-jndi-name>MDBConnectionFactory</connection-factory-jndi-name>
         <!--connection-factory-jndi-name>weblogic.jms.MessageDrivenBeanConnectionFactory</connection-factory-jndi-name-->
                   <initial-context-factory>weblogic.jndi.WLInitialContextFactory</initial-context-factory>
                   <jms-polling-interval-seconds>10</jms-polling-interval-seconds>
                   <jms-client-id>SimpleMessageBean</jms-client-id>
                   <provider-url>t3://localhost:7001</provider-url>
                   <trans-timeout-seconds>30</trans-timeout-seconds>
              </message-driven-descriptor>
              <jndi-name>SimpleMessageBean</jndi-name>     
         </weblogic-enterprise-bean>
    </weblogic-ejb-jar>
    here is the ejb-jar.xml
    <?xml version="1.0"?>
    <!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>SimpleMessageBean</ejb-name>
                   <ejb-class>mdb.SimpleMessageBean</ejb-class>
                   <!--transaction-type>Bean</transaction-type-->
                        <transaction-type>Container</transaction-type>
                        <trans-attribute>Required</trans-attribute>
                        <acknowledge-mode>AUTO_ACKNOWLEDGE</acknowledge-mode>
                        <message-driven-destination>
                             <destination-type>javax.jms.Queue</destination-type>
                        </message-driven-destination>
                   </message-driven>
              </enterprise-beans>
              <assembly-descriptor>
                   <container-transaction>
                        <method>
                             <ejb-name>SimpleMessageBean</ejb-name>
                             <method-name>onMessage()</method-name>
                        </method>                    
                   </container-transaction>
              </assembly-descriptor>
    </ejb-jar>
    i m very new to this program...plz help me

  • Some JMS objects do not show up in JNDI tree

    Hello friends. I have a situation where some of my JMS Queues do not show up in
    the JNDI tree. Other Queues / Topics show up fine. I cannot find any difference
    in the interface that tells me what my cause this to happen. Any insight would
    be appreciated.
    brian

    are you using a cluster? if so check the multicast to see if its working
    right.
    Where are you looking up the JNDI tree? in the console or are you checking
    the JNDI tree via weblogic.Admin LIST command? the LIST command may be a
    better way to see it for sure.
    sree
    "Brian" <[email protected]> wrote in message
    news:40b74519$1@mktnews1...
    >
    Hello friends. I have a situation where some of my JMS Queues do not showup in
    the JNDI tree. Other Queues / Topics show up fine. I cannot find anydifference
    in the interface that tells me what my cause this to happen. Any insightwould
    be appreciated.
    brian

  • JMS Destination object not found

    Hi everyone,
    I have a weird problem with SunONE Message Queue 3.
    I have a queue and a connection factory defined (using the SunONE Application Server 7 Admin Console) as well as a physical resource.
    I can verify their existance using asadmin....
    asadmin>list-jmsdest -u admin server1
    queue_1 queue {}
    asadmin>list-jms-resources -u admin server1
    jms/newqueue_1
    jms/newQCF_1
    When I attempt to deploy a message driven EJB I get the following error
    SEVERE ( 1484): javax.naming.InvalidNameException: JMS Destination object not found:`jms/newqueue_1`
    This question has already been asked on the App Server board here http://swforum.sun.com/jive/thread.jspa?threadID=15517&tstart=0 (that post is nine months old btw).
    I am posting this here in the hope that someone more familiar with MQ3 may have an idea of how to help us.
    Thanks in advance.

    I have now solved this problem. External JNDI resources are required in the AppServer.
    They can be created with the following commands:
    asadmin>create-jndi-resource jndilookupname jms/newQCF_1 resourcetype javax.jms.QueueConnectionFactory factoryclass com.sun.jndi.fscontext.RefFSContextFactory enabled=true --property java.naming.provider.url=file\:///c\:/java/mqjndi:java.naming.security.authentication=none newQCF_1
    asadmin>create-jndi-resource jndilookupname jms/queue_1 resourcetype javax.jms.Queue factoryclass com.sun.jndi.fscontext.RefFSContextFactory enabled=true --property java.naming.provider.url=file\:///c\:/java/mqjndi newqueue_1
    Both these commands assume that the file system context is being used however the LDAP commands are similar (just more properties).
    This step, which seems vital, is missing from the AppServer documentation (in fact it specifically states that this step is not necessary). The irony is that I found the answer in the IBM MQ documentation!

  • JMS Internal Error at Server Client Adapter!JMS Service is not started

    Hi
    Can any one tell me how to trouble shoot for following errors:
    Failed to Create Connection! Reason: Response from the server could not be reached.
    JMS Internal Error at Server Client Adapter!JMS Service is not started
    The following hosts could not be reached 143:223:221:10:50310
    We are trying to send the request from SONICMQ JMS to R/3 and trying to post the response to Sonic Queue. but we are facing some problems for JMS adapter .
    but in JMS sender and receiver adapter i gave different IP and port for listen the SONIC queue. why it is showing in different IP here? this message got from logviewer.
    regards
    Rambarki...

    Rambarki,
    What is the error displayed on the Adapter Monitoring pages?
    Generally the correct error descriptions for connectivity issues are found on adapter monitoring UI than any other.
    Other possible reasons could be :
    <i>JMS Service is not started
    The following hosts could not be reached 143:223:221:10:50310</i> This might be issue with your network settings i.e. XI server is unable to reach the specified IP on specified port.
    Regards,
    Amol

  • Orion.edit.validator example not working

    The example mentioned in the below link for orion.edit.validator does not seem to work.
    https://wiki.eclipse.org/Orion/Documentation/Developer_Guide/Plugging_into_the_editor
    Please help with the proper code snippet or example for orion.edit.validator

    The code on that page was outdated, I fixed it.
    Here's a gist showing a complete working example: https://gist.github.com/mamacdon/cb1e20fd8f967e97cfb4

  • JMS Default queue not found

    I do not have any knowledge of JMS and I am getting couple of warnings of this kind . Can anyone please explain it to me.
    <WSEE>Warning: JMS queue 'weblogic.wee.DefaultQueue' is not found, as a result, Web Service async responses via jms transport is not supported. If the target service uses JMS transport, the responses will not be able to come back.<JmsQueueListener.connect:227>

    Hi,
    This WARNING can be ignored ... Or if you dont want to see any such message next time..then please apply "-Dweblogic.wsee.skip.async.response=true"
    Details:
    Async web service support is not fully configured. The async response web service uri for this server was not fully deployed because the JMS reliability queue was not defined/deployed: queueName. The server will periodically retry completing the deploy for the service. This message can usually be ignored unless there are async web service applications. To completely disable async web service support, thus avoiding this message, set -Dweblogic.wsee.skip.async.response=true.
    More Details:
    http://download.oracle.com/docs/cd/E15523_01/apirefs.1111/e14397/WebService.html
    Thanks
    Jay SenSharma
    http://jaysensharma.wordpress.com (WebLogic Wonders Are Here)

  • Orion JMS Vs Oracle JMS

    Hi
    I am deploying an application with MDB using Oracle JMS( AQ ) and durable subscriptions. Now for configuration of the topics, I have a doubt. In addition to creation of the topics in the db do I have to specify those in jms.xml or it is required only in case of Orion JMS? I am really confused with this, since I am getting a deployment error even though I have configured orion-ejb-jar.xml as per AQ req... Any help pls...
    Thanks in Advance...

    Hi Gilbert,
    I have done the same, but while deploying it gives error 'Syntax error in source' with no other error message. And I have one more doubt. Does AQ work with Oracle 8i databse ?

  • JMSHelper throws 'JMS server is not targetted' creating distributed queue

    I am trying to use the 8.1 weblogic.jms.extensions.JMSHelper to create a distributed queue. The target JMS servers are all migratable servers. When calling method createDistributedQueueAsync() I get a JMSException thrown compaining that the [first] JMS server is not targetted. Looking at the code provided in [http://forums.bea.com/bea/thread.jspa?messageID=200023386] which is based on the JMSHelper class source, the exception may be thrown because the target MBean is of class MigratableTargetMBean, whereas the JMSHelper is expecting class TargetMBean. Yet, the 9.0 documentation (which at least documents it) suggests that MigratableTargetMBean is derived from TargetMBean
              Does anyone have experience of this issue or its resolution, short of crafting the code by hand as per the above-referenced reply?

    Hi,
    Just to remember the configuration: 2 managed servers configured as cluster that should be deployed on 2 different machine.
    Following summary of the tests:
         - node manager + admin server + 1 managed server running on the first machine --> server failed to init with error "Server is not in the majority cluster partition"
         - node manager + admin server + 2 managed servers running on the one machine --> servers are running without errors
         - node manager + admin server + 1 managed server running on the first  machine / node manager runs on the second machine --> server on the first machine runs without errors without the famous error ' Server is not in the majority cluster partition'.
    Bottom line, seems that if the node manager is not running on the remote machine, the cluster is not in a stable state and so the single managed server failed to initialize.
    Is it according the documentation / expectations ?
    Thanks,
    Yaakov

  • Javax.jms.JMSException: QueueConnection not started

    Hi,
    I want use oc4j like jms server, so I put in jms.xml this configuration :
    <jms-server port="9127">
         <queue-connection-factory location="jms/simpleQueueConnectionFactory" port="9127" host="127.0.0.1"/>
         <queue name="Simple Queue" location="jms/simpleQueue"/>
    </jms-server>
    and I try to post a message to JMS server with my webapp, and one exception occured :
    javax.jms.JMSException: QueueConnection not started
    this is my piece of code which post the JMS message (like example on http://otn.oracle.com/sample_code/tech/java/codesnippet/j2ee/p2p/PointToPoint_in_OC4J.html) :
    QueueConnectionFactory connectionFactory = (QueueConnectionFactory)new InitialContext().lookup ("java:comp/env/jms/simpleQueueConnectionFactory");
    QueueConnection connection = connectionFactory.createQueueConnection();
    connection.start();
    QueueSession queueSession = connection.createQueueSession(false, Session.AUTO_ACKNOWLEDGE);
    Queue queue = (Queue)new InitialContext().lookup("java:comp/env/jms/simpleQueue");
    QueueSender sender = queueSession.createSender(queue);
    Message message = queueSession.createMessage();
    message.setJMSType("theMessage");
    message.setLongProperty("time", System.currentTimeMillis());
    message.setStringProperty("subject", "Test Message Now");
    message.setStringProperty("message", "Hi");
    sender.send(message);
    How can I get more JMS log ? because in jms.log I have only :
    25/10/02 12:04 9.0.3.0.0 Started
    25/10/02 12:05 9.0.3.0.0 Stopped (JVM termination)
    My start command line for oc4j is (http://otn.oracle.com/tech/java/oc4j/htdocs/oc4j-logging-debugging-technote.html):
    java -Djms.debug=true -jar oc4j.jar -userThreads -verbosity 5
    thank you
    best regards
    jerome

    Hi Jerome,
    At this time Oracle recommends you use OJMS (AQ/JMS) as the J2EE 1.3 compatible JMS provider in Oracle9iAS v9.0.2 and v9.0.3. A future release of 9iAS will contain a lightweight JMS provider (OC4J/JMS) that is J2EE 1.3 compatible.
    See the Metalink note below...
    http://metalink.oracle.com/metalink/plsql/ml2_documents.showDocument?p_database_id=NOT&p_id=205305.1

  • JMS Server JNDI not being replicated? (clustered environment)

    Hello,
    First of all, my envinronment is Weblogic 6.1 sp2, JDK 1.3.1, Windows
    My current production and test environments consist, each one of them, of
    clusters with one admin server (ProdAdmin) and two managed servers (Prod1
    and Prod2). One of the managed servers (Prod1) is the server to which the
    JMS server is deployed and everything works fine.
    Now I'm trying to add another managed server to the cluster. The idea is to
    target the JMS Server (and nothing else) to this node. We don't want the JMS
    server to be running in Prod1 and the new server, named ProdJMS, won't even
    have any deployed beans or the startup class targeted to it. Just the JMS
    server. Here our problems start.
    I'm able to start this ProdJMS node with no problems. However, when I start
    Prod1 it seems that the JMS server is not binded. This is the exception
    we're getting when a message-driven bean is being deployed (I get the same
    exception trying to create other):
    ------- snip -------------
    <May 21, 2002 12:11:42 PM EDT> <Warning> <EJB> <The Message-Driven EJB:
    CacheUpdateBean is unable to connect to the JMS
    destination: securityChanges. The EJB container will automatically attempt
    to re-establish the connection with the JMS s
    erver. This warning may occur during WebLogic Cluster start-up if the JMS
    destination is located on another WebLogic Ser
    ver instance. When the JMS server connection is re-established, the
    Message-Driven EJB will again receive JMS messages.
    The Error was:
    weblogic.jms.common.JMSException: Error creating session
    Start server side stack trace:
    weblogic.jms.common.JMSException: Error creating session
    at weblogic.jms.backend.BEManager.sessionCreate(BEManager.java:121)
    at weblogic.jms.backend.BEManager.invoke(BEManager.java:219)
    at
    weblogic.jms.dispatcher.Request.wrappedFiniteStateMachine(Request.java:510)
    at
    weblogic.jms.dispatcher.DispatcherImpl.dispatchAsync(DispatcherImpl.java:149
    at
    weblogic.jms.dispatcher.DispatcherImpl.dispatchSyncFuture(DispatcherImpl.jav
    a:300)
    at weblogic.jms.dispatcher.DispatcherImpl_WLSkel.invoke(Unknown
    Source)
    at
    weblogic.rmi.internal.BasicServerRef.invoke(BasicServerRef.java:298)
    at
    weblogic.rmi.internal.BasicServerRef.handleRequest(BasicServerRef.java:267)
    at
    weblogic.rmi.internal.BasicExecuteRequest.execute(BasicExecuteRequest.java:2
    2)
    at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:139)
    at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:120)
    ----------- Linked Exception -----------
    weblogic.jms.dispatcher.DispatcherException: Dispatcher not found in jndi:
    Prod1, javax.naming.NameNotFoundException: Un
    able to resolve weblogic.jms.S:Prod1. Resolved: 'weblogic.jms'
    Unresolved:'S:Prod1' ; remaining name ''
    at
    weblogic.jms.dispatcher.DispatcherManager.dispatcherCreate(DispatcherManager
    .java:260)
    at
    weblogic.jms.dispatcher.DispatcherManager.dispatcherFindOrCreate(DispatcherM
    anager.java:307)
    at weblogic.jms.backend.BEManager.sessionCreate(BEManager.java:117)
    at weblogic.jms.backend.BEManager.invoke(BEManager.java:219)
    at
    weblogic.jms.dispatcher.Request.wrappedFiniteStateMachine(Request.java:510)
    at
    weblogic.jms.dispatcher.DispatcherImpl.dispatchAsync(DispatcherImpl.java:149
    at
    weblogic.jms.dispatcher.DispatcherImpl.dispatchSyncFuture(DispatcherImpl.jav
    a:300)
    at weblogic.jms.dispatcher.DispatcherImpl_WLSkel.invoke(Unknown
    Source)
    at
    weblogic.rmi.internal.BasicServerRef.invoke(BasicServerRef.java:298)
    at
    weblogic.rmi.internal.BasicServerRef.handleRequest(BasicServerRef.java:267)
    at
    weblogic.rmi.internal.BasicExecuteRequest.execute(BasicExecuteRequest.java:2
    2)
    at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:139)
    at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:120)
    End server side stack trace
    ------- snip -------------
    If I deploy the CacheUpdateBean bean to ProdJMS itself, I don't have this
    exception. The weird thing is that when I check the JDNI tree of Prod1 I'm
    actually able to see "weblogic.jms.S:Prod1", which is the name that seems
    not to be binded. Again, if I deploy the JMS Server to Prod1, for example,
    everything works fine. If I deploy the JMS server to a server with only the
    JMS server I get the mentioned JNDI exception.
    I would appreciate if you could give me help me solving this problem.
    Thanks in a dvance for any help.
    Andre Mendonca

    First of all, my envinronment is Weblogic 6.1 sp2, JDK 1.3.1, Windows
    My current production and test environments consist, each one of them, of
    clusters with one admin server (ProdAdmin) and two managed servers (Prod1
    and Prod2). One of the managed servers (Prod1) is the server to which the
    JMS server is deployed and everything works fine.
    Now I'm trying to add another managed server to the cluster. The idea isto
    target the JMS Server (and nothing else) to this node. We don't want theJMS
    server to be running in Prod1 and the new server, named ProdJMS, won'teven
    have any deployed beans or the startup class targeted to it. Just the JMS
    server. Here our problems start.
    I'm able to start this ProdJMS node with no problems. However, when Istart
    Prod1 it seems that the JMS server is not binded. This is the exception
    we're getting when a message-driven bean is being deployed (I get the same
    exception trying to create other):1. Make sure that you are using a dif multicast address for each cluster
    2. Remove the JMS from Prod1 -- double check this!
    3. Stop Prod1 and Prod2
    4. Start the ProdJMS
    5. Restart Prod1 and Prod2
    Peace,
    Cameron Purdy
    Tangosol, Inc.
    Clustering Weblogic? You're either using Coherence, or you should be!
    Download a Tangosol Coherence eval today at http://www.tangosol.com/
    "Andre Mendonca" <[email protected]> wrote in message
    news:[email protected]...
    Hello,
    ------- snip -------------
    <May 21, 2002 12:11:42 PM EDT> <Warning> <EJB> <The Message-Driven EJB:
    CacheUpdateBean is unable to connect to the JMS
    destination: securityChanges. The EJB container will automatically attempt
    to re-establish the connection with the JMS s
    erver. This warning may occur during WebLogic Cluster start-up if the JMS
    destination is located on another WebLogic Ser
    ver instance. When the JMS server connection is re-established, the
    Message-Driven EJB will again receive JMS messages.
    The Error was:
    weblogic.jms.common.JMSException: Error creating session
    Start server side stack trace:
    weblogic.jms.common.JMSException: Error creating session
    atweblogic.jms.backend.BEManager.sessionCreate(BEManager.java:121)
    at weblogic.jms.backend.BEManager.invoke(BEManager.java:219)
    at
    weblogic.jms.dispatcher.Request.wrappedFiniteStateMachine(Request.java:510)
    at
    weblogic.jms.dispatcher.DispatcherImpl.dispatchAsync(DispatcherImpl.java:149
    at
    weblogic.jms.dispatcher.DispatcherImpl.dispatchSyncFuture(DispatcherImpl.jav
    a:300)
    at weblogic.jms.dispatcher.DispatcherImpl_WLSkel.invoke(Unknown
    Source)
    at
    weblogic.rmi.internal.BasicServerRef.invoke(BasicServerRef.java:298)
    at
    weblogic.rmi.internal.BasicServerRef.handleRequest(BasicServerRef.java:267)
    at
    weblogic.rmi.internal.BasicExecuteRequest.execute(BasicExecuteRequest.java:2
    2)
    at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:139)
    at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:120)
    ----------- Linked Exception -----------
    weblogic.jms.dispatcher.DispatcherException: Dispatcher not found in jndi:
    Prod1, javax.naming.NameNotFoundException: Un
    able to resolve weblogic.jms.S:Prod1. Resolved: 'weblogic.jms'
    Unresolved:'S:Prod1' ; remaining name ''
    at
    weblogic.jms.dispatcher.DispatcherManager.dispatcherCreate(DispatcherManager
    .java:260)
    at
    weblogic.jms.dispatcher.DispatcherManager.dispatcherFindOrCreate(DispatcherM
    anager.java:307)
    atweblogic.jms.backend.BEManager.sessionCreate(BEManager.java:117)
    at weblogic.jms.backend.BEManager.invoke(BEManager.java:219)
    at
    weblogic.jms.dispatcher.Request.wrappedFiniteStateMachine(Request.java:510)
    at
    weblogic.jms.dispatcher.DispatcherImpl.dispatchAsync(DispatcherImpl.java:149
    at
    weblogic.jms.dispatcher.DispatcherImpl.dispatchSyncFuture(DispatcherImpl.jav
    a:300)
    at weblogic.jms.dispatcher.DispatcherImpl_WLSkel.invoke(Unknown
    Source)
    at
    weblogic.rmi.internal.BasicServerRef.invoke(BasicServerRef.java:298)
    at
    weblogic.rmi.internal.BasicServerRef.handleRequest(BasicServerRef.java:267)
    at
    weblogic.rmi.internal.BasicExecuteRequest.execute(BasicExecuteRequest.java:2
    2)
    at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:139)
    at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:120)
    End server side stack trace
    ------- snip -------------
    If I deploy the CacheUpdateBean bean to ProdJMS itself, I don't have this
    exception. The weird thing is that when I check the JDNI tree of Prod1 I'm
    actually able to see "weblogic.jms.S:Prod1", which is the name that seems
    not to be binded. Again, if I deploy the JMS Server to Prod1, for example,
    everything works fine. If I deploy the JMS server to a server with onlythe
    JMS server I get the mentioned JNDI exception.
    I would appreciate if you could give me help me solving this problem.
    Thanks in a dvance for any help.
    Andre Mendonca

  • Weblogic Server 9.2 - JMS File Store not working as expected.

    Hi,
    I am facing a problem at the server startup possibly due to huge size of the JMS File Store created.
    My question is that our application receives messages via MDB (container managed),
    Even after successfully processing the message, the message which is logged in the File Store is not deleted.
    How can i make sure that a message which is successfully processed is not logged in the file store?
    (considering container managed transactions do not require acknowledgement-mode set in the descriptor, altough i have it specified)
    Find the the stack trace on the server log below:
    ####<Dec 10, 2008 11:45:30 AM CST> <Error> <JMS> <xlqwls01> <ACSServer1> <[ACTIVE] ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tu
    ning)'> <<WLS Kernel>> <> <> <1228931130485> <BEA-040123> <Failed to start JMS Server "SDBJMSServer1" due to weblogic.jms.common.JMSException: web
    logic.messaging.kernel.KernelException: Unexpected store exception in messaging kernel recovery.
    weblogic.jms.common.JMSException: weblogic.messaging.kernel.KernelException: Unexpected store exception in messaging kernel recovery
    at weblogic.jms.backend.BackEnd.open(BackEnd.java:963)
    at weblogic.jms.deployer.BEAdminHandler.activate(BEAdminHandler.java:180)
    at weblogic.management.utils.GenericManagedService.activateDeployment(GenericManagedService.java:237)
    at weblogic.management.utils.GenericServiceManager.activateDeployment(GenericServiceManager.java:131)
    at weblogic.management.internal.DeploymentHandlerHome.invokeHandlers(DeploymentHandlerHome.java:589)
    at weblogic.management.internal.DeploymentHandlerHome.activateInitialDeployments(DeploymentHandlerHome.java:450)
    at weblogic.management.internal.DeploymentHandlerHome.activateInitialDeployments(DeploymentHandlerHome.java:430)
    at weblogic.management.deploy.internal.DeploymentAdapter$2.doPrepare(DeploymentAdapter.java:100)
    at weblogic.management.deploy.internal.DeploymentAdapter.prepare(DeploymentAdapter.java:177)
    at weblogic.management.deploy.internal.AppTransition$1.transitionApp(AppTransition.java:21)
    at weblogic.management.deploy.internal.ConfiguredDeployments.transitionApps(ConfiguredDeployments.java:233)
    at weblogic.management.deploy.internal.ConfiguredDeployments.prepare(ConfiguredDeployments.java:165)
    at weblogic.management.deploy.internal.ConfiguredDeployments.deploy(ConfiguredDeployments.java:122)
    at weblogic.management.deploy.internal.DeploymentServerService.resume(DeploymentServerService.java:173)
    at weblogic.management.deploy.internal.DeploymentServerService.start(DeploymentServerService.java:89)
    at weblogic.t3.srvr.SubsystemRequest.run(SubsystemRequest.java:64)
    at weblogic.work.ExecuteThread.execute(ExecuteThread.java:209)
    at weblogic.work.ExecuteThread.run(ExecuteThread.java:181)
    weblogic.messaging.kernel.KernelException: Unexpected store exception in messaging kernel recovery
    at weblogic.messaging.kernel.internal.PersistenceImpl.recover(PersistenceImpl.java:839)
    at weblogic.messaging.kernel.internal.KernelImpl.open(KernelImpl.java:235)
    at weblogic.jms.backend.BackEnd.open(BackEnd.java:961)
    at weblogic.jms.deployer.BEAdminHandler.activate(BEAdminHandler.java:180)
    at weblogic.management.utils.GenericManagedService.activateDeployment(GenericManagedService.java:237)
    at weblogic.management.utils.GenericServiceManager.activateDeployment(GenericServiceManager.java:131)
    at weblogic.management.internal.DeploymentHandlerHome.invokeHandlers(DeploymentHandlerHome.java:589)
    at weblogic.management.internal.DeploymentHandlerHome.activateInitialDeployments(DeploymentHandlerHome.java:450)
    at weblogic.management.internal.DeploymentHandlerHome.activateInitialDeployments(DeploymentHandlerHome.java:430)
    at weblogic.management.deploy.internal.DeploymentAdapter$2.doPrepare(DeploymentAdapter.java:100)
    at weblogic.management.deploy.internal.DeploymentAdapter.prepare(DeploymentAdapter.java:177)
    at weblogic.management.deploy.internal.AppTransition$1.transitionApp(AppTransition.java:21)
    at weblogic.management.deploy.internal.ConfiguredDeployments.transitionApps(ConfiguredDeployments.java:233)
    at weblogic.management.deploy.internal.ConfiguredDeployments.prepare(ConfiguredDeployments.java:165)
    at weblogic.management.deploy.internal.ConfiguredDeployments.deploy(ConfiguredDeployments.java:122)
    at weblogic.management.deploy.internal.DeploymentServerService.resume(DeploymentServerService.java:173)
    at weblogic.management.deploy.internal.DeploymentServerService.start(DeploymentServerService.java:89)
    at weblogic.t3.srvr.SubsystemRequest.run(SubsystemRequest.java:64)
    at weblogic.work.ExecuteThread.execute(ExecuteThread.java:209)
    at weblogic.work.ExecuteThread.run(ExecuteThread.java:181)
    weblogic.store.PersistentStoreException: [Store:280020]There was an error while reading from the log file
    at weblogic.store.io.file.Heap.read(Heap.java:648)
    at weblogic.store.io.file.FileStoreIO.readInternal(FileStoreIO.java:224)
    at weblogic.store.io.file.FileStoreIO.access$000(FileStoreIO.java:31)
    at weblogic.store.io.file.FileStoreIO$Cursor.nextInternal(FileStoreIO.java:573)
    at weblogic.store.io.file.FileStoreIO$Cursor.next(FileStoreIO.java:547)
    at weblogic.store.internal.PersistentStoreConnectionImpl$CursorImpl.next(PersistentStoreConnectionImpl.java:266)
    at weblogic.messaging.kernel.internal.PersistenceImpl.recoverHeaders(PersistenceImpl.java:1148)
    at weblogic.messaging.kernel.internal.PersistenceImpl.recover(PersistenceImpl.java:814)
    at weblogic.messaging.kernel.internal.KernelImpl.open(KernelImpl.java:235)
    at weblogic.jms.backend.BackEnd.open(BackEnd.java:961)
    at weblogic.jms.deployer.BEAdminHandler.activate(BEAdminHandler.java:180)
    at weblogic.management.utils.GenericManagedService.activateDeployment(GenericManagedService.java:237)
    at weblogic.management.utils.GenericServiceManager.activateDeployment(GenericServiceManager.java:131)
    at weblogic.management.internal.DeploymentHandlerHome.invokeHandlers(DeploymentHandlerHome.java:589)
    at weblogic.management.internal.DeploymentHandlerHome.activateInitialDeployments(DeploymentHandlerHome.java:450)
    at weblogic.management.internal.DeploymentHandlerHome.activateInitialDeployments(DeploymentHandlerHome.java:430)
    at weblogic.management.deploy.internal.DeploymentAdapter$2.doPrepare(DeploymentAdapter.java:100)
    at weblogic.management.deploy.internal.DeploymentAdapter.prepare(DeploymentAdapter.java:177)
    at weblogic.management.deploy.internal.AppTransition$1.transitionApp(AppTransition.java:21)
    at weblogic.management.deploy.internal.ConfiguredDeployments.transitionApps(ConfiguredDeployments.java:233)
    at weblogic.management.deploy.internal.ConfiguredDeployments.prepare(ConfiguredDeployments.java:165)
    at weblogic.management.deploy.internal.ConfiguredDeployments.deploy(ConfiguredDeployments.java:122)
    at weblogic.management.deploy.internal.DeploymentServerService.resume(DeploymentServerService.java:173)
    at weblogic.management.deploy.internal.DeploymentServerService.start(DeploymentServerService.java:89)
    at weblogic.t3.srvr.SubsystemRequest.run(SubsystemRequest.java:64)
    at weblogic.work.ExecuteThread.execute(ExecuteThread.java:209)
    at weblogic.work.ExecuteThread.run(ExecuteThread.java:181)
    java.io.IOException: Error reading from file, No such file or directory, errno=2
    at weblogic.store.io.file.direct.DirectIONative.read(Native Method)
    at weblogic.store.io.file.direct.DirectFileChannel.read(DirectFileChannel.java:133)
    at weblogic.store.io.file.StoreFile.read(StoreFile.java:281)
    at weblogic.store.io.file.Heap.read(Heap.java:646)
    at weblogic.store.io.file.FileStoreIO.readInternal(FileStoreIO.java:224)
    at weblogic.store.io.file.FileStoreIO.access$000(FileStoreIO.java:31)
    at weblogic.store.io.file.FileStoreIO$Cursor.nextInternal(FileStoreIO.java:573)
    at weblogic.store.io.file.FileStoreIO$Cursor.next(FileStoreIO.java:547)
    at weblogic.store.internal.PersistentStoreConnectionImpl$CursorImpl.next(PersistentStoreConnectionImpl.java:266)
    at weblogic.messaging.kernel.internal.PersistenceImpl.recoverHeaders(PersistenceImpl.java:1148)
    at weblogic.messaging.kernel.internal.PersistenceImpl.recover(PersistenceImpl.java:814)
    at weblogic.messaging.kernel.internal.KernelImpl.open(KernelImpl.java:235)
    at weblogic.jms.backend.BackEnd.open(BackEnd.java:961)
    at weblogic.jms.deployer.BEAdminHandler.activate(BEAdminHandler.java:180)
    at weblogic.management.utils.GenericManagedService.activateDeployment(GenericManagedService.java:237)
    at weblogic.management.utils.GenericServiceManager.activateDeployment(GenericServiceManager.java:131)
    at weblogic.management.internal.DeploymentHandlerHome.invokeHandlers(DeploymentHandlerHome.java:589)
    at weblogic.management.internal.DeploymentHandlerHome.activateInitialDeployments(DeploymentHandlerHome.java:450)
    at weblogic.management.internal.DeploymentHandlerHome.activateInitialDeployments(DeploymentHandlerHome.java:430)
    at weblogic.management.deploy.internal.DeploymentAdapter$2.doPrepare(DeploymentAdapter.java:100)
    at weblogic.management.deploy.internal.DeploymentAdapter.prepare(DeploymentAdapter.java:177)
    at weblogic.management.deploy.internal.AppTransition$1.transitionApp(AppTransition.java:21)
    at weblogic.management.deploy.internal.ConfiguredDeployments.transitionApps(ConfiguredDeployments.java:233)
    at weblogic.management.deploy.internal.ConfiguredDeployments.prepare(ConfiguredDeployments.java:165)
    at weblogic.management.deploy.internal.ConfiguredDeployments.deploy(ConfiguredDeployments.java:122)
    at weblogic.management.deploy.internal.DeploymentServerService.resume(DeploymentServerService.java:173)
    at weblogic.management.deploy.internal.DeploymentServerService.start(DeploymentServerService.java:89)
    at weblogic.t3.srvr.SubsystemRequest.run(SubsystemRequest.java:64)
    at weblogic.work.ExecuteThread.execute(ExecuteThread.java:209)
    at weblogic.work.ExecuteThread.run(ExecuteThread.java:181)
    Edited by: user5823244 on Dec 14, 2008 2:59 AM

    Hi,
    It seems there are two problems going on here:
    (1) Forceful shutdowns should not (must not) normally corrupt the file store. There may be a bug in WL, or it may be the admin is arbitrarily deleting some file store files while leaving others in place (not supported).
    (2) "Even after successfully processing the message, the message which is logged in the File Store is not deleted."
    This is a strong indicator that there's an application error and the message is not actually getting deleted. The file store size is proportional to the number of current messages (successfully processing/acknowledging/committing a received message frees space for new messages), and is not proportional to the number of successfully processed messages.
    I think it's likely that the application isn't actually successfully processing the message but is instead receiving a message somehow and is either:
    (A) throwing an exception from within an XA-or-non-XA-MDB or auto-ack-onMessage() and somehow forcing the message into a state where its not being redelivered for reprocessing
    (B) specifying a transacted session and failing to call session.commit()
    (C) specifying an XA transaction capable receive and failing to call commit
    (D) specifying a "client acknowledge" mode and failing to call acknowledge .
    For evidence, check the console statistics for the destination after "successfully processing" all sent messages: the value of "current" + "pending" should be zero once all processing completes, the value of "received (aka total)" should match the sent message count. If the "current" + "pending" value is non-zero, then this is an indication there are messages that were not successfully processed.
    Tom Barnes
    WebLogic Server Messaging Developer Team

  • RuntimeException in OnMessage() does not roll back

              Hello All, I have a transacted queue, the consumer is a java application. I configured
              an error queue for that queue. If I rollback manually in OnMessage(), the rolled
              back messages go into the error queue. However, if I have a RuntimeException,
              the last message (which has caused the exception) remains in the main queue pending
              and does not go into the error queue. I thought a RuntimeException causes a rollback().
              I use WLS 8.1. Any idea?
              Zoltan
              

    Hi Zoltan,
              A runtime causes a rollback in an MDB, per the J2EE
              spec, but a runtime exception does NOT cause a rollback
              on a regular async client. The JMS specification is ambiguous
              on the latter - thus the difference.
              Instead, the message is
              redelivered once, and then, if it fails again,
              the message is no longer delivered
              and is implicitly committed on the next call
              to session.commit(). In your
              case, I highly recommend explicitly forcing the rollback.
              Tom
              Zoltan Pinter wrote:
              > Hello All, I have a transacted queue, the consumer is a java application. I configured
              > an error queue for that queue. If I rollback manually in OnMessage(), the rolled
              > back messages go into the error queue. However, if I have a RuntimeException,
              > the last message (which has caused the exception) remains in the main queue pending
              > and does not go into the error queue. I thought a RuntimeException causes a rollback().
              > I use WLS 8.1. Any idea?
              >
              > Zoltan
              

Maybe you are looking for

  • View workflow logs in services for object tab in transaction

    HI All , Is there any settings that need to be done to see the workflow associated witha particular Tcode in Services for Objects  tab. Actually i  want to see the custom workflow logs other than using tcode swi1  . Regards , Sijin K P Moderator mess

  • Scheduling agreement: Reference document type is diferent

    All SAP Gurus, We have created a scheduling agreemnet with document type SA01. Now, we want to create a new scheduling agreement with reference to it (SA01), but its document type is different (SA02). So, system is giving an eror message as 'Referenc

  • Struts 1.1 html:error

    My resource file name is: application_en_US.properties This file is placed under /WEB-INF/classes/resources/application_en_US.properties In JSP file, I have a form, where I want to check, wether the userName field is null or not. If it is NULL, i wan

  • Liquidity Planner (queries)

    Hi, I am working in a roll out of liquidity Planner (liquidity calculation). There is already a company in the country which is the one that I have to take as a reference. My question is about queries (TS FLQCC1 and FLQQD1); I can see that the refere

  • StatelessJavaRpcWebService questions...

    I'm using JDev 10.1.2 to build some web services. I can successfully generate a web service from existing Java classes, deploy them to OC4J and use them. However, I have some questions about the StatelessJavaRpcWebService servlet. 1. Does the servlet