Scalability of Temporary Destinations

          Hi,
          I read a few posts in this newsgroup on temporary queues, and found that although
          the creation of those queues is not very performance-friendly it is probably a
          better idea than have multiple selectors on a queue. (topics are not an option
          in our case)
          However, I was wondering about scalability. Is their a limit to the amount of
          Temp. Destinations that can exist. And if so, what happens when the creation of
          an extra destination is attempted.
          And, what quantity of temp destinations really starts to hurt performance?
          Thanks,
          Erik
          

Hi Eric,
          There are no theoretical limits, but there are practical ones.
          Performance depends on hardware, how frequently the temp queues get
          created and removed, available memory, message rates, how clustering is
          used, what the application is doing outside of JMS, etc. All I can say
          is that I have seen applications with thousands of destinations, and
          tens of thousands of subscribers per server. As usual in these cases,
          I recommend writing a benchmark that models your application and running
          the benchmark on hardware similar to that which will be used in production.
          If you could use topic subscribers instead you might wish to revisit
          using that approach. WebLogic JMS has built-in optimizations for a
          certain use cases. The optimization changes CPU burn for topic selector
          evaulation from O(n), where n is the number of subscribers, to O(1).
          Tom
          Erik wrote:
          > Hi,
          >
          > I read a few posts in this newsgroup on temporary queues, and found that although
          > the creation of those queues is not very performance-friendly it is probably a
          > better idea than have multiple selectors on a queue. (topics are not an option
          > in our case)
          >
          > However, I was wondering about scalability. Is their a limit to the amount of
          > Temp. Destinations that can exist. And if so, what happens when the creation of
          > an extra destination is attempted.
          >
          > And, what quantity of temp destinations really starts to hurt performance?
          >
          > Thanks,
          > Erik
          

Similar Messages

  • Cluster and temporary destinations visibility

    Hi all,
    does anyone of you know if temporary destinations as TemporaryTopic and TemporaryQueue are visible in a Sun One Message Queue cluster ? If I create a temp destination on a broker in a cluster, this temp destination is visible also to other machines partecipating in the same cluster as is for "Normal" non temporary Topics and Queues ?
    Thanks all for you help !
    Stefano.

    What I had in mind is just this, as we have planned to use a cluster but this is not yet ready for testings, I was just looking around for a confirmation. In your opinion Miss Linda is this a feature of a particular release of Sun One or is already present in our 3.0.1, Service Pack 2 version ?
    Thanks for your courtesy !
    Stefano.

  • About the temporary destination

    I want to send a message with a JMSReplyto(a Temporary Destination), but the program is encountered an error when creating a receiver for the temporary destination. The code is wrong or special configuration needed on OC4J?
    the following is the code:
    try{
    QueueConnectionFactory connectionFactory = (QueueConnectionFactory)new InitialContext().lookup("java:comp/env/jms/theSenderQueueConnectionFactory");
    QueueConnection connection = connectionFactory.createQueueConnection();
    QueueSession queueSession = connection.createQueueSession(false, Session.AUTO_ACKNOWLEDGE);
    Queue queue = (Queue)new InitialContext().lookup("java:comp/env/jms/theSenderQueue");
    QueueSender sender = queueSession.createSender(queue);
    Queue replyQueue = queueSession.createTemporaryQueue();
    QueueReceiver receiver = queueSession.createReceiver(replyQueue);//throw 'Invalid Queue' exception here!
    connection.start();
    TextMessage message = queueSession.createTextMessage();
    message.setText("It is my first message!");
    message.setJMSReplyTo(replyQueue);
    sender.send(message);
    TextMessage replyMsg = (TextMessage)receiver.receive();
    System.out.println("The reply is: "+replyMsg.getText());
    connection.close();
    }catch(Exception e){
    e.printStackTrace();
    }

    Hi:
    Well, first I strongly suggest you not use such addresses, even if it would be difficult to change the ip's of devices in your network. I have seen situations where there was really no choice, such as mandates by parent companies and such.  But if in
    your control, please change to a non routable IP scheme.  While you could make this work in SBS 2003, it is much more unlikely to be successful in SBS 2011
    http://support.microsoft.com/kb/957717
    To answer your question you can use the wizard in SBS 2003 to change the IP and run the migration, then change it back on the SBS 2011 after.  But I suspect many of the built in wizards will choke on the routable IP.  I might test a green
    field installation on the hardware and run the wizards.  If you can change after and the wizards work, you might be able to do this.
    Larry Struckmeyer[MVP] If your question is answered please mark the response as the answer so that others can benefit.

  • Can I set up a message-listener on a temporary destination?

    //Given session exists
    Topic tempTopic = session.createTemporaryTopic();
    TopicSubscriber receiver = session.createSubscriber(tempTopic);
    //Topic is a named topic defined using Admin tool.
    TopicPublisher sender = session.createPublisher(topic);
    session.setMessageListener(new TempTopicListener());
    Message msg = session.createObjectMessage();
    msg.setJMSReplyTo(tempTopic);
    sender.send(msg);
    class TempTopicListener implements MessageListener
    public void onMessage(Message mess) {
    When a client responds to the above send message using the getJMSReplyTo() would TempTopicListener
    be notified?
    It looks like it should be because it was created off the
    same session...
    Would the above work. Basically, I want to be able to
    recieve messages on this temporary topic.

    It will work, there is an example of this in the tutorial:
    http://java.sun.com/products/jms/tutorial/1_3-fcs/doc/j2eeapp4.html#1023543

  • Producing message to temporary JMS destination

    Hi,
    Has anyone managed to produce a message to a temporary JMS destination using the JMS Adapter? I'm trying to get this request/reply-pattern working:
    -Java client connects to a Connection Factory and creates a temporary reply queue (works, CF returns a destination like "TestingJmsServer!TestingJmsServer.TemporaryQueue2")
    -The client produces a message with JMSReplyTo pointing to the temporary reply queue (works)
    -JMS Adapter consumes the message and assigns jca.jms.JMSDestinationName := jca.jms.JMSReplyTo (works)
    -The JMS adapter should now produce the reply message to the provided temporary queue, but it always fails with error BEA-045101:
    The destination name passed to createTopic or createQueue "destName" is invalid. If the destination name does not contain a "/" character then it must be the name of a distributed destination that is available in the cluster to which the client is attached. If it does contain a "/" character then the string before the "/" must be the name of a JMSServer or a ".". The string after the "/" is the name of a the desired destination. If the "./" version of the string is used then any destination with the given name on the local WLS server will be returned.
    The same problem occurs with fixed queues, like "TestingJmsModule!ReplyQueue", but I can make them work by adding a "./" in front of the destination name when performing the jca.jms.JMSDestinationName assign, so that it reads "./TestingJmsModule!ReplyQueue". After that the adapter is able to produce the message correctly to the given JMSDestinationName.
    Is it significant that with fixed queues I get a destination like "JmsModule!FixedQueueName" (note the module) but with temporary destinations it is like "JmsServer!TempQueueName" (note the server)?
    Should the destination name be of some other format? The current value is exactly what the Connection Factory returns, and if the JMS adapter is replaced with another java client, producing the reply message to that destination works just fine.
    regards,
    Ville

    Hi,
    I am trying to send messages to the WLS queue through Camel and facing the same issue, which can be eliminated by using queue name as ./<QUEUE_NAME>.
    However it only eliminates the error and the next one comes is real pain. It is not able to find the JNDI name of the queue, where as I am able to see it in Admin console JNDI tree.
    Exception in thread "Main Thread" org.apache.camel.CamelExecutionException: Exception occurred during execution on the exchange: Exchange[Message: Test Message: 0]
         at org.apache.camel.util.ObjectHelper.wrapCamelExecutionException(ObjectHelper.java:1161)
         at org.apache.camel.util.ExchangeHelper.extractResultBody(ExchangeHelper.java:512)
         at org.apache.camel.impl.DefaultProducerTemplate.extractResultBody(DefaultProducerTemplate.java:441)
         at org.apache.camel.impl.DefaultProducerTemplate.extractResultBody(DefaultProducerTemplate.java:437)
         at org.apache.camel.impl.DefaultProducerTemplate.sendBody(DefaultProducerTemplate.java:125)
         at org.apache.camel.impl.DefaultProducerTemplate.sendBody(DefaultProducerTemplate.java:130)
         at org.apache.camel.example.jmstofile.PublishMessage.main(PublishMessage.java:63)
    Caused by: org.springframework.jms.UncategorizedJmsException: Uncategorized exception occured during JMS processing; nested exception is weblogic.jms.common.JMSException: [JMSExceptions:045102]A destination of name "WLtestQueue" was not found on WLS server "AdminServer".
         at org.springframework.jms.support.JmsUtils.convertJmsAccessException(JmsUtils.java:316)
         at org.springframework.jms.support.JmsAccessor.convertJmsAccessException(JmsAccessor.java:168)
         at org.springframework.jms.core.JmsTemplate.execute(JmsTemplate.java:469)
         at org.apache.camel.component.jms.JmsConfiguration$CamelJmsTemplate.send(JmsConfiguration.java:172)
         at org.apache.camel.component.jms.JmsProducer.doSend(JmsProducer.java:347)
         at org.apache.camel.component.jms.JmsProducer.processInOnly(JmsProducer.java:303)
         at org.apache.camel.component.jms.JmsProducer.process(JmsProducer.java:101)
         at org.apache.camel.processor.UnitOfWorkProcessor.process(UnitOfWorkProcessor.java:102)
         at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:104)
         at org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:85)
         at org.apache.camel.processor.UnitOfWorkProducer.process(UnitOfWorkProducer.java:63)
         at org.apache.camel.impl.ProducerCache$1.doInProducer(ProducerCache.java:345)
         at org.apache.camel.impl.ProducerCache$1.doInProducer(ProducerCache.java:317)
         at org.apache.camel.impl.ProducerCache.doInProducer(ProducerCache.java:222)
         at org.apache.camel.impl.ProducerCache.sendExchange(ProducerCache.java:317)
         at org.apache.camel.impl.ProducerCache.send(ProducerCache.java:168)
         at org.apache.camel.impl.DefaultProducerTemplate.send(DefaultProducerTemplate.java:110)
         at org.apache.camel.impl.DefaultProducerTemplate.sendBody(DefaultProducerTemplate.java:123)
         ... 2 more
    Caused by: weblogic.jms.common.JMSException: [JMSExceptions:045102]A destination of name "WLtestQueue" was not found on WLS server "AdminServer".
         at weblogic.jms.dispatcher.DispatcherAdapter.convertToJMSExceptionAndThrow(DispatcherAdapter.java:110)
         at weblogic.jms.dispatcher.DispatcherAdapter.dispatchSyncNoTran(DispatcherAdapter.java:61)
         at weblogic.jms.client.JMSSession.createDestination(JMSSession.java:3192)
         at weblogic.jms.client.JMSSession.createQueue(JMSSession.java:2577)
         at weblogic.jms.client.WLSessionImpl.createQueue(WLSessionImpl.java:938)
         at org.springframework.jms.support.destination.DynamicDestinationResolver.resolveQueue(DynamicDestinationResolver.java:101)
         at org.springframework.jms.support.destination.DynamicDestinationResolver.resolveDestinationName(DynamicDestinationResolver.java:66)
         at org.springframework.jms.support.destination.JmsDestinationAccessor.resolveDestinationName(JmsDestinationAccessor.java:100)
         at org.apache.camel.component.jms.JmsConfiguration$CamelJmsTemplate.access$200(JmsConfiguration.java:141)
         at org.apache.camel.component.jms.JmsConfiguration$CamelJmsTemplate$3.doInJms(JmsConfiguration.java:174)
         at org.springframework.jms.core.JmsTemplate.execute(JmsTemplate.java:466)
         ... 17 more
    Anyone has got any idea?

  • Error while creating a temp queue (JMSException sayin .Destination dosnt ex

    i will just post part of my code
    Properties env = new Properties();
                        env.setProperty(Context.INITIAL_CONTEXT_FACTORY, "org.jboss.naming.NamingContextFactory");
                        jndiContext = new InitialContext();
                        queueConnectionFactory = (QueueConnectionFactory)jndiContext.lookup("QueueConnectionFactory");
                        queue = (Queue) jndiContext.lookup(queueName);
                   }catch (NamingException e) {
                        System.out.println("JNDI API lookup failed: " + e.toString());
                        System.exit(1);
                   try {
                        queueConnection = queueConnectionFactory.createQueueConnection();
                        queueSession = queueConnection.createQueueSession (false, Session.AUTO_ACKNOWLEDGE);
                        queueConnection.start();
                        queueSender = queueSession.createSender(queue);
                        requestMessage = queueSession.createTextMessage();
                                                                requestMessage.setText("does");
    /* The code works fine  till here , but below as soon as i say  replyQueue = queueSession.createQueue("todo"); , it says the destination dosenot exist. why isnt it creating  a temporary queue for me . Exception thrown is javax.jms.JMSException :
    This Destination Does Not Exist.
                        replyQueue = queueSession.createQueue("todo");
                                            Destination replyDestination = replyQueue;

    createTemporaryQueue() already creates a unique
    destination; you don't need to do anything else.
    Note as we discussed in the previous thread; you
    should not create a temporary destination per
    request; you should create 1 temporary destination
    per consumer/process and reuse it across requests;
    using a correlationID to match requests to
    responses.
    James
    http://logicblaze.com/
    Hello Mr.James,
    pleeeeeeeeeeeeeeease give me one example of how do i create only one temporary queue and differentiate resposes based on CorrelationID, i mean i am just not able to do it , i feel i will have to browse through entire queue matching for CorrelationId's, however u had earlier rejected this approach
    THEN HOW DO I MATCH RESPONSES IN TEMPORARY QUEUES TO MY REQUESTS BASED ON CORRELATIONID , PLEASE GIVE ME AN EXAMPLE

  • Producer leak in MessageProducer.send( Destination, Message ) ?

    We have a client/server message passing system (using 3.6 SP3). The clients create temporary queues and the server replies in these queues. The server uses an unidentified MessageProducer (i.e., from session.createProducer( null ) ) to reply. Clients start up and shutdown frequently, but servers are long-lived.
    The issue is that when the server calls MessageProducer.send( Destination, Message), there is a new producer created that never goes away (until the entire connection is closed). These show up in the output of 'imqcmd list cxn' as belonging to the server's connection, and are visible in the Java heap of the server process.
    The destination is a TemporaryQueue, and it looks like producers might be getting cached based on destination. The client is deleting the TemporaryQueue on exit, and in the JMS server logs we see lots of warnings like " WARNING [B2081]: Destroying destination temporary_destination://queue/10.8.12.75/35033/4699 [Queue] with 1 active producers." (I missed finding that warning number documented anywhere.) But the producers don't go away.
    Does anybody know if these producers that build up ultimately going to cause problems on the JMS server? Do they eat up resources and slow things down? Is there a way to stop this from happening (short of manually creating and destroying MessageProducers for each reply)?
    Thanks for any info.

    The build up is on the client, vs server side (each maintain their own concept on producer). Destination/producer buildup does not directly cause a leak on the server side.
    So, build on the client does not necessarily mean that memory is building up on the server.
    On the server (broker) side, memory associated with the producers should be removed when the connections are closed or the destinations are destroyed. This occurs when:
    * the producer will be cleaned up when the connection using the producer is closed
    (for autocreated, temporary and admin created destinations)
    * the producer (and destination) will be cleaned up with the destination is destroyed. this occurs when:
    Temporary destinations:
    * the receiving consumer connection is closed
    * (temp destination).delete is called by the receiving consumer
    Autocreated (non-temp) destinations:
    * all producers/consumers are gone and the destination is empty. This means:
    - the connection for any un-identified producers/consumers have been
    closed
    - other producers/consumers have been closed because either:
    - the connections are closed
    - (consumer).close() or (producer).close() was called for other destinations
    All destinations:
    * imqcmd or imqadmin was used to destroy the destination.

  • Problem with temporary queues

    Hi,
              I've setup a template for temporary queues in the weblogic console (8.1SP4). However, I'm getting an exception when trying to destroy the queue after use. This doesn't happen with other JMS providers, so is there something special to Weblogic about temp queues? Is there a specific option that needs to be set in the template?
              Queue: MyJMSServer.TemporaryQueue1390
              weblogic.jms.common.JMSException: Destination is in use
              at
              weblogic.rjvm.BasicOutboundRequest.sendReceive(BasicOutboundRequest.java:108)
              at
              weblogic.rmi.internal.BasicRemoteRef.invoke(BasicRemoteRef.java:137)
              at
              weblogic.jms.dispatcher.DispatcherImpl_814_WLStub.dispatchSyncFuture(Unknown
              Source)
              at
              weblogic.jms.dispatcher.DispatcherWrapperState.dispatchSync(DispatcherWrapperState.java:3
              45)
              at
              weblogic.jms.client.JMSConnection.destroyTemporaryDestination(JMSConnection.java:1089)
              at
              weblogic.jms.common.DestinationImpl.delete(DestinationImpl.java:455)
              at
              com.trs.cv.fmk.fcms.common.impl.TimeoutQueueRequestor.request(TimeoutQueueRequestor.java:
              203)
              at
              com.trs.cv.fmk.fcms.cas.client.impl.CasCnsIntegration.request(CasCnsIntegration.java:203)
              Thanks,
              Nasrin

    If there are still application receivers on the temporary destination, the call will fail. (As specified in the JMS javadoc.) Perhaps this is the reason for the exception? In which case the application needs to close its receivers first.

  • Creating a destination queue programatically

    Is there any way to create a Destination Queue for a Connection Factory through my Java program, if I do not want to do it through the Admin console?
    Specifically, is there an API to create a JMS queue?
    Thanks.

    What do you mean by creating Queue for ConnectionFactory? ConnectionFactory is to create connection to the JMS server.
    JMS provides methods like createTopic and createQueue but they are for converting provider specific name into Topic or Queue object for destinations already existing. One can not create physical destinations through these methods. Exception is for temporary destinations. Methods are createTemporaryQueue and createTemporaryTopic. Their life period is that of the connection. They will be garbage collected when the connection is closed.
    Sagar
    http://www.sun.com/software/products/message_queue/

  • Cannot receive message on temporary queue

    I am executing the following code in a web application.
              It is sending a message to a JMS queue. The MDB
              listening to that queue processes the message
              and posts a reply to the temporary queue specified in
              the JMS Reply to field. The queue browser code below
              shows that the message is in the queue, but the receive
              times out and returns null. My question is why can't the
              receiver get the message?
              Am I missing something?
              Thanks in advance,
              -Doug.
              =====WEBAPP SIDE===========
              QueueConnection connection = null;
              QueueSession session = null;
              QueueSender sender = null;
              QueueReceiver receiver = null;
              Queue respQueue = null;
              try
              connection = QUEUE_CON_FACTORY.createQueueConnection();
              connection.start();
              session = connection.createQueueSession(false, Session.CLIENT_ACKNOWLEDGE);
              TextMessage textMessage = session.createTextMessage();
              textMessage.setText(xmlInput);
              if (wait)
              respQueue = session.createTemporaryQueue();
              textMessage.setJMSReplyTo(respQueue);
              receiver = session.createReceiver(respQueue);
              sender = session.createSender(INPUT_QUEUE);
              sender.send(textMessage);
              if (wait)
              QueueBrowser qB = session.createBrowser(respQueue);
              Enumeration enum = qB.getEnumeration();
              while (enum.hasMoreElements())
              Message msg = (Message) enum.nextElement();
              LOG.debug("msg = " + msg);
              return ((TextMessage) receiver.receive(10000)).getText();
              return DEFAULT_RESPONSE;
              =======MDB side============
              QueueConnection queueConnection = QUEUE_CON_FACTORY.createQueueConnection();
              queueConnection.start();
              QueueSession queueSession = queueConnection.createQueueSession(false, Session.AUTO_ACKNOWLEDGE);
              TextMessage textMsg = queueSession.createTextMessage();
              textMsg.setText(buffer.toString());
              QueueSender queueSender = queueSession.createSender((Queue)getReplyDestination());
              queueSender.send(textMsg);
              queueSender.close();
              QueueBrowser qB = queueSession.createBrowser((Queue)bpelCtx.getReplyDestination());
              Enumeration enum = qB.getEnumeration();
              while (enum.hasMoreElements())
              Message msg = (Message) enum.nextElement();
              LOG.debug("msg = " + msg);
              queueSession.close();
              queueConnection.close();
              ==== LOG ====
              [DEBUG] 2006-01-16 14:51:17,780 MDB - msg = TextMessage[ID:N<192225.1137444677780.0>, <unique-id-response xmlns
              ="htt...]
              [DEBUG] 2006-01-16 14:51:27,374 WEBAPP -
              msg = TextMessage[ID:N<192225.1137444677780.0>, <unique-id-response xmlns="htt..
              .]

    At first glance, this looks like a standard design to me. Does the same problem occur when there are no browsers?
              Tom
              (Performance note: It is quite CPU-intensive to continually create and close connections/temporary destinations/sessions/consumers/producers. Cache and/or pool them for re-use when possible. Use a cached anonymous producer on the MDB for sending replies [pass null for the dest when creating it, and specify the dest as a send parameter].)

  • Weblogic temporary or synchronous request/reply queue

    Hi,
    Is there a possibility of creating temporary or Synchronous request/reply Queue in weblogic. If so, please let me know the steps to create it.
    Thanks

    The following doc section contains information about using WebLogic JMS temporary destinations.
    http://docs.oracle.com/cd/E17904_01/web.1111/e13727/manage_apps.htm#JMSPG283

  • MDB for Temporary Queues?

    I have a need for MDB functionality on temporary queues (either with an actual MDB, or by doing the functionality myself, inside the app server). Is that possible?
    The context is as follows:
    An application is deployed to multiple application servers. The application recceives requests that are session oriented. In other words, after the first message of a sequence, subsequent messages from the original sender must go to the same instance that received the first request.
    Hence the goal is to have a queue, unique to the instance, dynamically created (to avoid administrative headaches), that is used to receive the subsequent messages. That queue needs to have multiple consumers on it, each in its own session for parallelism.
    This is sort of like to the standard synchronous messaging pattern, except that the replyTo queue is send on the reply and used on subsequent requests. Also, the application needs to be able to handle a number of these at once (separate threadds).
    Thoughts?

    The broker property imq.autocreate.destination.useDMQ (default set to true) controls whether to use DMQ for temporary destinations as well as for all auto-created destinations. Alternatively you can control at per message level before sending to a destination whether the message should use DMQ by setting the boolean property "JMS_SUN_PRESERVE_UNDELIVERED" (set to false to not use DMQ) to the message.

  • About the Temporary queue

    I want to send a message with a JMSReplyto(a Temporary Destination), but the program is encountered an error when creating a receiver for the temporary destination. The code is wrong or special configuration needed on OC4J?
    the following is the code:
    try{
    QueueConnectionFactory connectionFactory = (QueueConnectionFactory)new InitialContext().lookup("java:comp/env/jms/theSenderQueueConnectionFactory");
    QueueConnection connection = connectionFactory.createQueueConnection();
    QueueSession queueSession = connection.createQueueSession(false, Session.AUTO_ACKNOWLEDGE);
    Queue queue = (Queue)new InitialContext().lookup("java:comp/env/jms/theSenderQueue");
    QueueSender sender = queueSession.createSender(queue);
    Queue replyQueue = queueSession.createTemporaryQueue();
    QueueReceiver receiver = queueSession.createReceiver(replyQueue);//throw 'Invalid Queue' exception here!
    connection.start();
    TextMessage message = queueSession.createTextMessage();
    message.setText("It is my first message!");
    message.setJMSReplyTo(replyQueue);
    sender.send(message);
    TextMessage replyMsg = (TextMessage)receiver.receive();
    System.out.println("The reply is: "+replyMsg.getText());
    connection.close();
    }catch(Exception e){
    e.printStackTrace();
    }

    Which version of OC4J are you using? Also, are you using Oracle JMS (JMS over AQ)
    for this? If so, which version of the database are you talking to?
    I want to send a message with a JMSReplyto(a Temporary Destination), but the program is encountered an error when creating a receiver for the temporary destination. The code is wrong or special configuration needed on OC4J?
    the following is the code:
    try{
    QueueConnectionFactory connectionFactory = (QueueConnectionFactory)new InitialContext().lookup("java:comp/env/jms/theSenderQueueConnectionFactory");
    QueueConnection connection = connectionFactory.createQueueConnection();
    QueueSession queueSession = connection.createQueueSession(false, Session.AUTO_ACKNOWLEDGE);
    Queue queue = (Queue)new InitialContext().lookup("java:comp/env/jms/theSenderQueue");
    QueueSender sender = queueSession.createSender(queue);
    Queue replyQueue = queueSession.createTemporaryQueue();
    QueueReceiver receiver = queueSession.createReceiver(replyQueue);//throw 'Invalid Queue' exception here!
    connection.start();
    TextMessage message = queueSession.createTextMessage();
    message.setText("It is my first message!");
    message.setJMSReplyTo(replyQueue);
    sender.send(message);
    TextMessage replyMsg = (TextMessage)receiver.receive();
    System.out.println("The reply is: "+replyMsg.getText());
    connection.close();
    }catch(Exception e){
    e.printStackTrace();

  • Asynchronous Messages (using JMS) improves performance even when the desire

    I am being told that even when point A to point B communication,
    originating at point A, is synchronous, send a message to B wait for B
    to finish processing and send a tagged(to corelate the response to the
    request) message back asynchronously via another Q will improve the
    response time and scalability during peak volume vis-a-vis a
    synchronous API call between A and B. A being a servlet B being an
    application server hosted on a container. Keep in mind that this
    application cannot live with the fact that there is a possibility that
    the response may never come back (timeout). The expected response time
    during average load is <2sec. Peak load 110 transactions per second.
    Response time of 5 secs during peak load is unacceptable. Clustering is
    certainly a consideration. Any opinion, pointers, etc. is welcome.
    Have a wonderful weekend!!

    Hi,
    I personally think that you should go for an asynchronous solution as that�s what JMS is all about. You can obviously use a Requestor and go for a RPC style solution but there are overheads:
    1) Your messages cannot be concurrently processed
    2) A temporary destination (to collect the response) is created per request
    3) There is a delay between each message processing event
    The number of app server instances that you would need is really application dependant and app server as well. But according to my experience, and assuming that your message process is simple, I would say that less than 2s delay is easily achievable.
    By the way, have you considered using a light weight app server like an MDS container? For more info you can have a look at: http://www.arjuna.com/products/arjunams/tutorials/mds/index.html
    Hope this helps
    Arnaud
    www.arjuna.com

  • Problem to weblogic start managed server "OraSDP"

    Hi all,
    first, sorry if this location is not correct to this thread.
    I have a problem when I start a weblogic managed server, which indicates there is an error to check a QueueConnectionFactory into JNDI.
    The log of this error is next:
    <16-feb-2011 13H35' CET> <Warning> <Connector> <BEA-190110> <Resource Adapter is calling BootstrapContext.createTimer() and allocating a Timer Thread that is not managed by WebLogic Server. This may adversely impact the performance/operation of WebLogic Server.>
    <16-feb-2011 13H35' CET> <Error> <oracle.sdp.messaging.util> <SDP-25716> <Se ha producido un error al consultar QueueConnectionFactory en JNDI, saltando: [OraSDPM/QueueConnectionFactory, OraSDPM/Queues/OraSDPMDriverDefSndQ1] >
    <16-feb-2011 13H35' CET> <Error> <oracle.sdp.messaging.util> <SDP-25700> <Se ha obtenido una excepción inesperada.
    javax.naming.NameNotFoundException: While trying to lookup 'OraSDPM.QueueConnectionFactory' didn't find subcontext 'OraSDPM'. Resolved ''; remaining name 'OraSDPM/QueueConnectionFactory'
         at weblogic.jndi.internal.BasicNamingNode.newNameNotFoundException(BasicNamingNode.java:1139)
         at weblogic.jndi.internal.BasicNamingNode.lookupHere(BasicNamingNode.java:247)
         at weblogic.jndi.internal.ServerNamingNode.lookupHere(ServerNamingNode.java:182)
         at weblogic.jndi.internal.BasicNamingNode.lookup(BasicNamingNode.java:206)
         at weblogic.jndi.internal.WLEventContextImpl.lookup(WLEventContextImpl.java:254)
         at weblogic.jndi.internal.WLContextImpl.lookup(WLContextImpl.java:393)
         at javax.naming.InitialContext.lookup(InitialContext.java:392)
         at oracle.sdpinternal.messaging.util.MessagingUtil.getQueueInfoList(MessagingUtil.java:1093)
         at oracle.sdpinternal.messaging.driver.DriverHelper.<init>(DriverHelper.java:189)
         at oracle.sdp.messaging.driver.DriverResourceAdapterBase.start(DriverResourceAdapterBase.java:300)
         at weblogic.connector.security.layer.AdapterLayer.start(AdapterLayer.java:980)
         at weblogic.connector.common.RAInstanceManager.initialize(RAInstanceManager.java:1185)
         at weblogic.connector.common.RAInstanceManager.<init>(RAInstanceManager.java:352)
         at weblogic.connector.deploy.ConnectorModule.prepare(ConnectorModule.java:197)
         at weblogic.application.internal.flow.ModuleListenerInvoker.prepare(ModuleListenerInvoker.java:199)
         at weblogic.application.internal.flow.DeploymentCallbackFlow$1.next(DeploymentCallbackFlow.java:507)
         at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:41)
         at weblogic.application.internal.flow.DeploymentCallbackFlow.prepare(DeploymentCallbackFlow.java:149)
         at weblogic.application.internal.flow.DeploymentCallbackFlow.prepare(DeploymentCallbackFlow.java:45)
         at weblogic.application.internal.BaseDeployment$1.next(BaseDeployment.java:1221)
         at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:41)
         at weblogic.application.internal.BaseDeployment.prepare(BaseDeployment.java:367)
         at weblogic.application.internal.EarDeployment.prepare(EarDeployment.java:58)
         at weblogic.application.internal.DeploymentStateChecker.prepare(DeploymentStateChecker.java:154)
         at weblogic.deploy.internal.targetserver.AppContainerInvoker.prepare(AppContainerInvoker.java:60)
         at weblogic.deploy.internal.targetserver.AppDeployment.prepare(AppDeployment.java:141)
         at weblogic.management.deploy.internal.DeploymentAdapter$1.doPrepare(DeploymentAdapter.java:39)
         at weblogic.management.deploy.internal.DeploymentAdapter.prepare(DeploymentAdapter.java:191)
         at weblogic.management.deploy.internal.AppTransition$1.transitionApp(AppTransition.java:21)
         at weblogic.management.deploy.internal.ConfiguredDeployments.transitionApps(ConfiguredDeployments.java:240)
         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:180)
         at weblogic.management.deploy.internal.DeploymentServerService.start(DeploymentServerService.java:96)
         at weblogic.t3.srvr.SubsystemRequest.run(SubsystemRequest.java:64)
         at weblogic.work.ExecuteThread.execute(ExecuteThread.java:201)
         at weblogic.work.ExecuteThread.run(ExecuteThread.java:173)
    >
    Anyone knows how can I resolve this error?..
    Regards.
    PD: Sorry, but there is sentences in Spanish language.

    Hi, here you can see my config.xml and a xml file which are in the $DOMAIN_HOME/config/jms/ folder. I have split the config.xml in several parts because it exceeds the maximun length.
    Config.xml part I:
    <?xml version='1.0' encoding='UTF-8'?>
    <domain xmlns="http://xmlns.oracle.com/weblogic/domain" xmlns:sec="http://xmlns.oracle.com/weblogic/security" xmlns:wls="http://xmlns.oracle.com/weblogic/security/wls" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://xmlns.oracle.com/weblogic/security/xacml http://xmlns.oracle.com/weblogic/security/xacml/1.0/xacml.xsd http://xmlns.oracle.com/weblogic/security/providers/passwordvalidator http://xmlns.oracle.com/weblogic/security/providers/passwordvalidator/1.0/passwordvalidator.xsd http://xmlns.oracle.com/weblogic/domain http://xmlns.oracle.com/weblogic/1.0/domain.xsd http://xmlns.oracle.com/weblogic/security http://xmlns.oracle.com/weblogic/1.0/security.xsd http://xmlns.oracle.com/weblogic/security/wls http://xmlns.oracle.com/weblogic/security/wls/1.0/wls.xsd">
    <name>npnode2</name>
    <domain-version>10.3.3.0</domain-version>
    <security-configuration>
    <name>npnode2</name>
    <realm>
    <sec:authentication-provider xsi:type="wls:default-authenticatorType">
    <wls:use-retrieved-user-name-as-principal>true</wls:use-retrieved-user-name-as-principal>
    </sec:authentication-provider>
    <sec:authentication-provider xsi:type="wls:default-identity-asserterType">
    <sec:active-type>AuthenticatedUser</sec:active-type>
    </sec:authentication-provider>
    <sec:role-mapper xmlns:xac="http://xmlns.oracle.com/weblogic/security/xacml" xsi:type="xac:xacml-role-mapperType"></sec:role-mapper>
    <sec:authorizer xmlns:xac="http://xmlns.oracle.com/weblogic/security/xacml" xsi:type="xac:xacml-authorizerType"></sec:authorizer>
    <sec:adjudicator xsi:type="wls:default-adjudicatorType"></sec:adjudicator>
    <sec:credential-mapper xsi:type="wls:default-credential-mapperType"></sec:credential-mapper>
    <sec:cert-path-provider xsi:type="wls:web-logic-cert-path-providerType"></sec:cert-path-provider>
    <sec:cert-path-builder>WebLogicCertPathProvider</sec:cert-path-builder>
    <sec:name>myrealm</sec:name>
    <sec:password-validator xmlns:pas="http://xmlns.oracle.com/weblogic/security/providers/passwordvalidator" xsi:type="pas:system-password-validatorType">
    <sec:name>SystemPasswordValidator</sec:name>
    <pas:min-password-length>8</pas:min-password-length>
    <pas:min-numeric-or-special-characters>1</pas:min-numeric-or-special-characters>
    </sec:password-validator>
    </realm>
    <default-realm>myrealm</default-realm>
    <credential-encrypted>{AES}TvOXKMlehQtZcaRHQ/gQVlgYjxTmuP2CzlEJz9qrFh3uR07iZ+i8EGIA07v0wMPvmzqZi1A2iurkHF8xJHrn+4jPlQsyhKeRHIATxpxFScUXcGm/6ap/gt78jMklop90</credential-encrypted>
    <node-manager-username>weblogic</node-manager-username>
    <node-manager-password-encrypted>{AES}UPT4LnwZgpkqKzgV/1Li+OoD2dj2d/J7kG4dELlPPoi=</node-manager-password-encrypted>
    </security-configuration>
    <server>
    <name>AdminServer</name>
    <listen-address></listen-address>
    <server-diagnostic-config>
    <name>AdminServer</name>
    <diagnostic-context-enabled>true</diagnostic-context-enabled>
    </server-diagnostic-config>
    </server>
    <server>
    <name>soa_server1</name>
    <ssl>
    <name>soa_server1</name>
    <listen-port>8002</listen-port>
    </ssl>
    <machine>LocalMachine</machine>
    <listen-port>8001</listen-port>
    <listen-address></listen-address>
    <server-diagnostic-config>
    <name>soa_server1</name>
    <diagnostic-context-enabled>true</diagnostic-context-enabled>
    </server-diagnostic-config>
    </server>
    <embedded-ldap>
    <name>npnode2</name>
    <credential-encrypted>{AES}wcwM9xWQy3NNzRzOEYbyOJq9JAPOo9HGL6EOylMeseZhLZLidXviUnNstKZbrnsu</credential-encrypted>
    </embedded-ldap>
    <configuration-version>10.3.3.0</configuration-version>
    <app-deployment>
    <name>FMW Welcome Page Application#11.1.0.0.0</name>
    <target>AdminServer</target>
    <module-type>ear</module-type>
    <source-path>/opt/Oracle/Middleware/oracle_common/modules/oracle.jrf_11.1.1/fmw-welcome.ear</source-path>
    <deployment-order>5</deployment-order>
    <security-dd-model>DDOnly</security-dd-model>
    <staging-mode>nostage</staging-mode>
    </app-deployment>
    <app-deployment>
    <name>DMS Application#11.1.1.1.0</name>
    <target>AdminServer,soa_server1</target>
    <module-type>war</module-type>
    <source-path>/opt/Oracle/Middleware/oracle_common/modules/oracle.dms_11.1.1/dms.war</source-path>
    <deployment-order>5</deployment-order>
    <security-dd-model>CustomRoles</security-dd-model>
    <staging-mode>nostage</staging-mode>
    </app-deployment>
    <app-deployment>
    <name>wsil-wls</name>
    <target>AdminServer,soa_server1</target>
    <module-type>ear</module-type>
    <source-path>/opt/Oracle/Middleware/oracle_common/modules/oracle.webservices_11.1.1/wsil-wls.ear</source-path>
    <deployment-order>5</deployment-order>
    <security-dd-model>DDOnly</security-dd-model>
    <staging-mode>nostage</staging-mode>
    </app-deployment>
    <app-deployment>
    <name>FileAdapter</name>
    <target>soa_server1</target>
    <module-type>rar</module-type>
    <source-path>/opt/Oracle/Middleware/Oracle_SOA1/soa/connectors/FileAdapter.rar</source-path>
    <deployment-order>321</deployment-order>
    <security-dd-model>DDOnly</security-dd-model>
    <staging-mode>nostage</staging-mode>
    </app-deployment>
    <app-deployment>
    <name>DbAdapter</name>
    <target>soa_server1</target>
    <module-type>rar</module-type>
    <source-path>/opt/Oracle/Middleware/Oracle_SOA1/soa/connectors/DbAdapter.rar</source-path>
    <deployment-order>322</deployment-order>
    <plan-dir xsi:nil="true"></plan-dir>
    <plan-path>/opt/Oracle/Middleware/Oracle_SOA1/soa/Plan.xml</plan-path>
    <security-dd-model>DDOnly</security-dd-model>
    <staging-mode>nostage</staging-mode>
    </app-deployment>
    <app-deployment>
    <name>JmsAdapter</name>
    <target>soa_server1</target>
    <module-type>rar</module-type>
    <source-path>/opt/Oracle/Middleware/Oracle_SOA1/soa/connectors/JmsAdapter.rar</source-path>
    <deployment-order>323</deployment-order>
    <security-dd-model>DDOnly</security-dd-model>
    <staging-mode>nostage</staging-mode>
    </app-deployment>
    <app-deployment>
    <name>AqAdapter</name>
    <target>soa_server1</target>
    <module-type>rar</module-type>
    <source-path>/opt/Oracle/Middleware/Oracle_SOA1/soa/connectors/AqAdapter.rar</source-path>
    <deployment-order>324</deployment-order>
    <security-dd-model>DDOnly</security-dd-model>
    <staging-mode>nostage</staging-mode>
    </app-deployment>
    <app-deployment>
    <name>FtpAdapter</name>
    <target>soa_server1</target>
    <module-type>rar</module-type>
    <source-path>/opt/Oracle/Middleware/Oracle_SOA1/soa/connectors/FtpAdapter.rar</source-path>
    <deployment-order>325</deployment-order>
    <security-dd-model>DDOnly</security-dd-model>
    <staging-mode>nostage</staging-mode>
    </app-deployment>
    <app-deployment>
    <name>SocketAdapter</name>
    <target>soa_server1</target>
    <module-type>rar</module-type>
    <source-path>/opt/Oracle/Middleware/Oracle_SOA1/soa/connectors/SocketAdapter.rar</source-path>
    <deployment-order>326</deployment-order>
    <security-dd-model>DDOnly</security-dd-model>
    <staging-mode>nostage</staging-mode>
    </app-deployment>
    <app-deployment>
    <name>MQSeriesAdapter</name>
    <target>soa_server1</target>
    <module-type>rar</module-type>
    <source-path>/opt/Oracle/Middleware/Oracle_SOA1/soa/connectors/MQSeriesAdapter.rar</source-path>
    <deployment-order>327</deployment-order>
    <security-dd-model>DDOnly</security-dd-model>
    <staging-mode>nostage</staging-mode>
    </app-deployment>
    <app-deployment>
    <name>OracleAppsAdapter</name>
    <target>soa_server1</target>
    <module-type>rar</module-type>
    <source-path>/opt/Oracle/Middleware/Oracle_SOA1/soa/connectors/AppsAdapter.rar</source-path>
    <deployment-order>328</deployment-order>
    <security-dd-model>DDOnly</security-dd-model>
    <staging-mode>nostage</staging-mode>
    </app-deployment>
    <app-deployment>
    <name>OracleBamAdapter</name>
    <target>soa_server1</target>
    <module-type>rar</module-type>
    <source-path>/opt/Oracle/Middleware/Oracle_SOA1/soa/connectors/OracleBamAdapter.rar</source-path>
    <deployment-order>329</deployment-order>
    <security-dd-model>DDOnly</security-dd-model>
    <staging-mode>nostage</staging-mode>
    </app-deployment>
    <app-deployment>
    <name>wsm-pm</name>
    <target>soa_server1</target>
    <module-type>ear</module-type>
    <source-path>/opt/Oracle/Middleware/oracle_common/modules/oracle.wsm.pm_11.1.1/wsm-pm.ear</source-path>
    <deployment-order>5</deployment-order>
    <security-dd-model>DDOnly</security-dd-model>
    <staging-mode>nostage</staging-mode>
    </app-deployment>
    <app-deployment>
    <name>usermessagingserver</name>
    <target>soa_server1</target>
    <module-type>ear</module-type>
    <source-path>/opt/Oracle/Middleware/Oracle_SOA1/communications/applications/sdpmessagingserver.ear</source-path>
    <security-dd-model>DDOnly</security-dd-model>
    <staging-mode>nostage</staging-mode>
    </app-deployment>
    <app-deployment>
    <name>usermessagingdriver-email</name>
    <target>soa_server1</target>
    <module-type>ear</module-type>
    <source-path>/opt/Oracle/Middleware/Oracle_SOA1/communications/applications/sdpmessagingdriver-email.ear</source-path>
    <deployment-order>200</deployment-order>
    <security-dd-model>DDOnly</security-dd-model>
    <staging-mode>nostage</staging-mode>
    </app-deployment>
    <app-deployment>
    <name>usermessagingdriver-xmpp</name>
    <module-type>ear</module-type>
    <source-path>/opt/Oracle/Middleware/Oracle_SOA1/communications/applications/sdpmessagingdriver-xmpp.ear</source-path>
    <deployment-order>202</deployment-order>
    <security-dd-model>DDOnly</security-dd-model>
    <staging-mode>nostage</staging-mode>
    </app-deployment>
    <app-deployment>
    <name>usermessagingdriver-smpp</name>
    <module-type>ear</module-type>
    <source-path>/opt/Oracle/Middleware/Oracle_SOA1/communications/applications/sdpmessagingdriver-smpp.ear</source-path>
    <deployment-order>203</deployment-order>
    <security-dd-model>DDOnly</security-dd-model>
    <staging-mode>nostage</staging-mode>
    </app-deployment>
    <app-deployment>
    <name>usermessagingdriver-voicexml</name>
    <module-type>ear</module-type>
    <source-path>/opt/Oracle/Middleware/Oracle_SOA1/communications/applications/sdpmessagingdriver-voicexml.ear</source-path>
    <deployment-order>204</deployment-order>
    <security-dd-model>DDOnly</security-dd-model>
    <staging-mode>nostage</staging-mode>
    </app-deployment>
    <app-deployment>
    <name>em</name>
    <target>AdminServer</target>
    <module-type>ear</module-type>
    <source-path>/opt/Oracle/Middleware/user_projects/applications/npnode2/em.ear</source-path>
    <deployment-order>400</deployment-order>
    <security-dd-model>DDOnly</security-dd-model>
    <staging-mode>nostage</staging-mode>
    </app-deployment>
    <app-deployment>
    <name>soa-infra</name>
    <target>soa_server1</target>
    <module-type>ear</module-type>
    <source-path>/opt/Oracle/Middleware/Oracle_SOA1/soa/applications/soa-infra-wls.ear</source-path>
    <deployment-order>350</deployment-order>
    <security-dd-model>DDOnly</security-dd-model>
    <staging-mode>nostage</staging-mode>
    </app-deployment>
    <app-deployment>
    <name>worklistapp</name>
    <target>soa_server1</target>
    <module-type>ear</module-type>
    <source-path>/opt/Oracle/Middleware/Oracle_SOA1/soa/applications/worklist-wls.ear</source-path>
    <deployment-order>312</deployment-order>
    <security-dd-model>DDOnly</security-dd-model>
    <staging-mode>nostage</staging-mode>
    </app-deployment>
    <app-deployment>
    <name>b2bui</name>
    <target>soa_server1</target>
    <module-type>ear</module-type>
    <source-path>/opt/Oracle/Middleware/Oracle_SOA1/soa/applications/soa-infra-b2bui-wls.ear</source-path>
    <deployment-order>313</deployment-order>
    <security-dd-model>DDOnly</security-dd-model>
    <staging-mode>nostage</staging-mode>
    </app-deployment>
    <app-deployment>
    <name>DefaultToDoTaskFlow</name>
    <target>soa_server1</target>
    <module-type>ear</module-type>
    <source-path>/opt/Oracle/Middleware/Oracle_SOA1/soa/applications/DefaultToDoTaskFlow.ear</source-path>
    <deployment-order>314</deployment-order>
    <security-dd-model>DDOnly</security-dd-model>
    <staging-mode>nostage</staging-mode>
    </app-deployment>
    <app-deployment>
    <name>composer</name>
    <target>soa_server1</target>
    <module-type>ear</module-type>
    <source-path>/opt/Oracle/Middleware/Oracle_SOA1/soa/applications/soa-composer.ear</source-path>
    <deployment-order>315</deployment-order>
    <security-dd-model>DDOnly</security-dd-model>
    <staging-mode>nostage</staging-mode>
    </app-deployment>
    <library>
    <name>oracle.jrf.system.filter</name>
    <target>AdminServer,soa_server1</target>
    <source-path>/opt/Oracle/Middleware/oracle_common/modules/oracle.jrf_11.1.1/system-filters.war</source-path>
    <security-dd-model>DDOnly</security-dd-model>
    <staging-mode>nostage</staging-mode>
    </library>
    <library>
    <name>oracle.wsm.seedpolicies#[email protected]</name>
    <target>AdminServer,soa_server1</target>
    <source-path>/opt/Oracle/Middleware/oracle_common/modules/oracle.wsm.policies_11.1.1/wsm-seed-policies.jar</source-path>
    <security-dd-model>DDOnly</security-dd-model>
    <staging-mode>nostage</staging-mode>
    </library>
    <library>
    <name>oracle.jsp.next#[email protected]</name>
    <target>AdminServer,soa_server1</target>
    <source-path>/opt/Oracle/Middleware/oracle_common/modules/oracle.jsp_11.1.1/ojsp.jar</source-path>
    <security-dd-model>DDOnly</security-dd-model>
    <staging-mode>nostage</staging-mode>
    </library>
    <library>
    <name>oracle.dconfig-infra#[email protected]</name>
    <target>AdminServer,soa_server1</target>
    <source-path>/opt/Oracle/Middleware/oracle_common/modules/oracle.dconfig-infra_11.1.1.jar</source-path>
    <security-dd-model>DDOnly</security-dd-model>
    <staging-mode>nostage</staging-mode>
    </library>
    <library>
    <name>orai18n-adf#[email protected]</name>
    <target>AdminServer,soa_server1</target>
    <source-path>/opt/Oracle/Middleware/oracle_common/modules/oracle.nlsgdk_11.1.0/orai18n-adf.jar</source-path>
    <security-dd-model>DDOnly</security-dd-model>
    <staging-mode>nostage</staging-mode>
    </library>
    <library>
    <name>adf.oracle.domain#[email protected]</name>
    <target>AdminServer,soa_server1</target>
    <module-type>ear</module-type>
    <source-path>/opt/Oracle/Middleware/oracle_common/modules/oracle.adf.model_11.1.1/adf.oracle.domain.ear</source-path>
    <security-dd-model>DDOnly</security-dd-model>
    <staging-mode>nostage</staging-mode>
    </library>
    <library>
    <name>oracle.adf.dconfigbeans#[email protected]</name>
    <target>AdminServer,soa_server1</target>
    <source-path>/opt/Oracle/Middleware/oracle_common/modules/oracle.adf.dconfigbeans_11.1.1.jar</source-path>
    <security-dd-model>DDOnly</security-dd-model>
    <staging-mode>nostage</staging-mode>
    </library>
    <library>
    <name>oracle.adf.management#[email protected]</name>
    <target>AdminServer,soa_server1</target>
    <module-type>war</module-type>
    <source-path>/opt/Oracle/Middleware/oracle_common/modules/oracle.adf.management_11.1.1/adf-management.war</source-path>
    <security-dd-model>DDOnly</security-dd-model>
    <staging-mode>nostage</staging-mode>
    </library>
    <library>
    <name>adf.oracle.domain.webapp#[email protected]</name>
    <target>AdminServer,soa_server1</target>
    <module-type>war</module-type>
    <source-path>/opt/Oracle/Middleware/oracle_common/modules/oracle.adf.view_11.1.1/adf.oracle.domain.webapp.war</source-path>
    <security-dd-model>DDOnly</security-dd-model>
    <staging-mode>nostage</staging-mode>
    </library>
    <library>
    <name>jsf#[email protected]</name>
    <target>AdminServer,soa_server1</target>
    <module-type>war</module-type>
    <source-path>/opt/Oracle/Middleware/wlserver_10.3/common/deployable-libraries/jsf-1.2.war</source-path>
    <security-dd-model>DDOnly</security-dd-model>
    <staging-mode>nostage</staging-mode>
    </library>
    <library>
    <name>jstl#[email protected]</name>
    <target>AdminServer,soa_server1</target>
    <module-type>war</module-type>
    <source-path>/opt/Oracle/Middleware/wlserver_10.3/common/deployable-libraries/jstl-1.2.war</source-path>
    <security-dd-model>DDOnly</security-dd-model>
    <staging-mode>nostage</staging-mode>
    </library>
    <library>
    <name>UIX#[email protected]</name>
    <target>AdminServer,soa_server1</target>
    <module-type>war</module-type>
    <source-path>/opt/Oracle/Middleware/oracle_common/modules/oracle.uix_11.1.1/uix11.war</source-path>
    <security-dd-model>DDOnly</security-dd-model>
    <staging-mode>nostage</staging-mode>
    </library>
    <library>
    <name>ohw-rcf#[email protected]</name>
    <target>AdminServer,soa_server1</target>
    <module-type>war</module-type>
    <source-path>/opt/Oracle/Middleware/oracle_common/modules/oracle.help_5.0/ohw-rcf.war</source-path>
    <security-dd-model>DDOnly</security-dd-model>
    <staging-mode>nostage</staging-mode>
    </library>
    <library>
    <name>ohw-uix#[email protected]</name>
    <target>AdminServer,soa_server1</target>
    <module-type>war</module-type>
    <source-path>/opt/Oracle/Middleware/oracle_common/modules/oracle.help_5.0/ohw-uix.war</source-path>
    <security-dd-model>DDOnly</security-dd-model>
    <staging-mode>nostage</staging-mode>
    </library>
    <library>
    <name>oracle.pwdgen#[email protected]</name>
    <target>AdminServer,soa_server1</target>
    <source-path>/opt/Oracle/Middleware/oracle_common/modules/oracle.pwdgen_11.1.1/pwdgen.jar</source-path>
    <security-dd-model>DDOnly</security-dd-model>
    <staging-mode>nostage</staging-mode>
    </library>
    <library>
    <name>oracle.rules#[email protected]</name>
    <target>AdminServer,soa_server1</target>
    <source-path>/opt/Oracle/Middleware/Oracle_SOA1/soa/modules/oracle.rules_11.1.1/rules.jar</source-path>
    <security-dd-model>DDOnly</security-dd-model>
    <staging-mode>nostage</staging-mode>
    </library>
    <library>
    <name>oracle.webcenter.composer#[email protected]</name>
    <target>AdminServer</target>
    <module-type>war</module-type>
    <source-path>/opt/Oracle/Middleware/oracle_common/webcenter/modules/oracle.webcenter.framework_11.1.1/oracle.webcenter.composer.war</source-path>
    <deployment-order>300</deployment-order>
    <security-dd-model>DDOnly</security-dd-model>
    <staging-mode>nostage</staging-mode>
    </library>
    <library>
    <name>oracle.webcenter.skin#[email protected]</name>
    <target>AdminServer</target>
    <module-type>ear</module-type>
    <source-path>/opt/Oracle/Middleware/oracle_common/webcenter/modules/oracle.portlet.server_11.1.1/oracle.webcenter.skin.ear</source-path>
    <deployment-order>300</deployment-order>
    <security-dd-model>DDOnly</security-dd-model>
    <staging-mode>nostage</staging-mode>
    </library>
    <library>
    <name>oracle.soa.workflow.wc#[email protected]</name>
    <target>AdminServer,soa_server1</target>
    <source-path>/opt/Oracle/Middleware/Oracle_SOA1/soa/modules/oracle.soa.workflow_11.1.1/oracle.soa.workflow.wc.jar</source-path>
    <security-dd-model>DDOnly</security-dd-model>
    <staging-mode>nostage</staging-mode>
    </library>
    <library>
    <name>oracle.soa.rules_editor_dc.webapp#[email protected]</name>
    <target>AdminServer,soa_server1</target>
    <module-type>war</module-type>
    <source-path>/opt/Oracle/Middleware/Oracle_SOA1/soa/modules/oracle.soa.rules_editor_dc.webapp_11.1.1/oracle.soa.rules_editor_dc.webapp.war</source-path>
    <deployment-order>306</deployment-order>
    <security-dd-model>DDOnly</security-dd-model>
    <staging-mode>nostage</staging-mode>
    </library>
    <library>
    <name>oracle.soa.rules_dict_dc.webapp#[email protected]</name>
    <target>AdminServer,soa_server1</target>
    <module-type>war</module-type>
    <source-path>/opt/Oracle/Middleware/Oracle_SOA1/soa/modules/oracle.soa.rules_dict_dc.webapp_11.1.1/oracle.soa.rules_dict_dc.webapp.war</source-path>
    <deployment-order>306</deployment-order>
    <security-dd-model>DDOnly</security-dd-model>
    <staging-mode>nostage</staging-mode>
    </library>
    <library>
    <name>oracle.bpm.mgmt#[email protected]</name>
    <target>AdminServer</target>
    <source-path>/opt/Oracle/Middleware/oracle_common/bpm/modules/oracle.bpm.mgmt_11.1.1/oracle.bpm.bpmn-em-tools.jar</source-path>
    <security-dd-model>DDOnly</security-dd-model>
    <staging-mode>nostage</staging-mode>
    </library>
    <library>
    <name>emai</name>
    <target>AdminServer</target>
    <module-type>war</module-type>
    <source-path>/opt/Oracle/Middleware/oracle_common/sysman/archives/applications/11_1_1_0_0_emai.war</source-path>
    <security-dd-model>DDOnly</security-dd-model>
    <staging-mode>nostage</staging-mode>
    </library>
    <library>
    <name>oracle.sdp.messaging#[email protected]</name>
    <target>AdminServer,soa_server1</target>
    <source-path>/opt/Oracle/Middleware/Oracle_SOA1/communications/modules/oracle.sdp.messaging_11.1.1/sdpmessaging.jar</source-path>
    <security-dd-model>DDOnly</security-dd-model>
    <staging-mode>nostage</staging-mode>
    </library>
    <library>
    <name>oracle.sdp.client#[email protected]</name>
    <target>AdminServer,soa_server1</target>
    <source-path>/opt/Oracle/Middleware/Oracle_SOA1/communications/modules/oracle.sdp.client_11.1.1/sdpclient.jar</source-path>
    <security-dd-model>DDOnly</security-dd-model>
    <staging-mode>nostage</staging-mode>
    </library>
    <library>
    <name>emas</name>
    <target>AdminServer</target>
    <module-type>war</module-type>
    <source-path>/opt/Oracle/Middleware/oracle_common/sysman/archives/applications/11_1_1_0_0_emas.war</source-path>
    <security-dd-model>DDOnly</security-dd-model>
    <staging-mode>nostage</staging-mode>
    </library>
    <library>
    <name>emcore</name>
    <target>AdminServer</target>
    <module-type>war</module-type>
    <source-path>/opt/Oracle/Middleware/oracle_common/sysman/archives/applications/11_1_1_0_0_emcore.war</source-path>
    <security-dd-model>DDOnly</security-dd-model>
    <staging-mode>nostage</staging-mode>
    </library>
    <library>
    <name>oracle.soa.bpel#[email protected]</name>
    <target>AdminServer,soa_server1</target>
    <source-path>/opt/Oracle/Middleware/Oracle_SOA1/soa/modules/oracle.soa.bpel_11.1.1/oracle.soa.bpel.jar</source-path>
    <deployment-order>301</deployment-order>
    <security-dd-model>DDOnly</security-dd-model>
    <staging-mode>nostage</staging-mode>
    </library>
    <library>
    <name>oracle.soa.worklist#[email protected]</name>
    <target>AdminServer,soa_server1</target>
    <source-path>/opt/Oracle/Middleware/Oracle_SOA1/soa/modules/oracle.soa.worklist_11.1.1/oracle.soa.worklist.jar</source-path>
    <deployment-order>302</deployment-order>
    <security-dd-model>DDOnly</security-dd-model>
    <staging-mode>nostage</staging-mode>
    </library>
    <library>
    <name>oracle.soa.workflow#[email protected]</name>
    <target>AdminServer,soa_server1</target>
    <source-path>/opt/Oracle/Middleware/Oracle_SOA1/soa/modules/oracle.soa.workflow_11.1.1/oracle.soa.workflow.jar</source-path>
    <deployment-order>303</deployment-order>
    <security-dd-model>DDOnly</security-dd-model>
    <staging-mode>nostage</staging-mode>
    </library>
    <library>
    <name>oracle.soa.mediator#[email protected]</name>
    <target>AdminServer,soa_server1</target>
    <source-path>/opt/Oracle/Middleware/Oracle_SOA1/soa/modules/oracle.soa.mediator_11.1.1/oracle.soa.mediator.jar</source-path>
    <deployment-order>304</deployment-order>
    <security-dd-model>DDOnly</security-dd-model>
    <staging-mode>nostage</staging-mode>
    </library>
    <library>
    <name>oracle.soa.composer.webapp#[email protected]</name>
    <target>AdminServer,soa_server1</target>
    <module-type>war</module-type>
    <source-path>/opt/Oracle/Middleware/Oracle_SOA1/soa/modules/oracle.soa.composer.webapp_11.1.1/oracle.soa.composer.webapp.war</source-path>
    <deployment-order>306</deployment-order>
    <security-dd-model>DDOnly</security-dd-model>
    <staging-mode>nostage</staging-mode>
    </library>
    <library>
    <name>oracle.soa.ext#[email protected]</name>
    <target>AdminServer,soa_server1</target>
    <source-path>/opt/Oracle/Middleware/Oracle_SOA1/soa/modules/oracle.soa.ext_11.1.1/oracle.soa.ext.jar</source-path>
    <deployment-order>307</deployment-order>
    <security-dd-model>DDOnly</security-dd-model>
    <staging-mode>nostage</staging-mode>
    </library>
    <library>
    <name>oracle.soa.b2b#[email protected]</name>
    <target>AdminServer,soa_server1</target>
    <source-path>/opt/Oracle/Middleware/Oracle_SOA1/soa/modules/oracle.soa.b2b_11.1.1/oracle.soa.b2b.jar</source-path>
    <deployment-order>308</deployment-order>
    <security-dd-model>DDOnly</security-dd-model>
    <staging-mode>nostage</staging-mode>
    </library>
    <library>
    <name>oracle.soa.worklist.webapp#[email protected]</name>
    <target>AdminServer,soa_server1</target>
    <module-type>war</module-type>
    <source-path>/opt/Oracle/Middleware/Oracle_SOA1/soa/modules/oracle.soa.worklist.webapp_11.1.1/oracle.soa.worklist.webapp.war</source-path>
    <deployment-order>309</deployment-order>
    <security-dd-model>DDOnly</security-dd-model>
    <staging-mode>nostage</staging-mode>
    </library>
    <machine>
    <name>LocalMachine</name>
    <node-manager>
    <name>LocalMachine</name>
    <listen-address>localhost</listen-address>
    </node-manager>
    </machine>
    <jms-server>
    <name>SOAJMSServer</name>
    <target>soa_server1</target>
    <persistent-store>SOAJMSFileStore</persistent-store>
    </jms-server>
    <jms-server>
    <name>UMSJMSServer</name>
    <target>soa_server1</target>
    <persistent-store>UMSJMSFileStore</persistent-store>
    </jms-server>
    <jms-server>
    <name>JMSSGPMC</name>
    <target>soa_server1</target>
    <persistent-store>FileStore-0</persistent-store>
    <hosting-temporary-destinations>true</hosting-temporary-destinations>
    <temporary-template-resource xsi:nil="true"></temporary-template-resource>
    <temporary-template-name xsi:nil="true"></temporary-template-name>
    <message-buffer-size>-1</message-buffer-size>
    <paging-file-locking-enabled>true</paging-file-locking-enabled>
    <expiration-scan-interval>30</expiration-scan-interval>
    </jms-server>
    <self-tuning>
    <work-manager>
    <name>wm/SOAWorkManager</name>
    <target>soa_server1</target>
    </work-manager>
    </self-tuning>
    <shutdown-class>
    <name>JOC-Shutdown</name>
    <target>AdminServer,soa_server1</target>
    <deployment-order>150</deployment-order>
    <class-name>oracle.ias.cache.Shutdown</class-name>
    </shutdown-class>
    <shutdown-class>
    <name>DMSShutdown</name>
    <target>AdminServer,soa_server1</target>
    <deployment-order>150</deployment-order>
    <class-name>oracle.dms.wls.DMSShutdown</class-name>
    </shutdown-class>
    <startup-class>
    <name>JRF Startup Class</name>
    <target>AdminServer,soa_server1</target>
    <deployment-order>110</deployment-order>
    <class-name>oracle.jrf.wls.JRFStartup</class-name>
    <failure-is-fatal>false</failure-is-fatal>
    <load-before-app-deployments>true</load-before-app-deployments>
    <load-before-app-activation>true</load-before-app-activation>
    </startup-class>
    <startup-class>
    <name>JPS Startup Class</name>
    <target>AdminServer,soa_server1</target>
    <deployment-order>115</deployment-order>
    <class-name>oracle.security.jps.wls.JpsWlsStartupClass</class-name>
    <failure-is-fatal>false</failure-is-fatal>
    <load-before-app-deployments>true</load-before-app-deployments>
    <load-before-app-activation>true</load-before-app-activation>
    </startup-class>

Maybe you are looking for