Using JMSServer, Queue in Cluster

          Hi -
          I am using a WLS Queue in the cluster environment. I bound this queue with the JNDI
          Name logQueue (which is used by other beans, too) and
          deployed it on serverone. I have another server called servertwo. As JMSServer is
          not clusterable so I have to deploy JMSServer on serverone only
          and then I start the serverone. Everything works fine. But when I try to start the
          servertwo. It gives the error saying
          Exception in in ejbCreate:; nested exception is:
          javax.ejb.CreateException: Could not look up context: Unable to resolve
          logQueue. Resolved: '' Unresolved:'logQueue'
          WLS should replicate the state of logQueue from serverone to servertwo. But somehow
          it is not replicating and giving the error.
          I deployed the connectionFactory on cluster and JMSServer on serverOne
          Can you please help me how to come around this problem.
          Regds
          Rashid
          

          It will depend on when you are doing the lookup on servertwo. The JNDI
          bindings are replicated once servertwo starts up and joins the cluster and
          not during the startup. One option to consider is a lazy lookup when the
          service using JMS is accessed for the first time.
          "Rashid" <[email protected]> wrote in message
          news:[email protected]..
          >
          > Hi -
          >
          > I am using a WLS Queue in the cluster environment. I bound this queue with
          the JNDI
          > Name logQueue (which is used by other beans, too) and
          > deployed it on serverone. I have another server called servertwo. As
          JMSServer is
          > not clusterable so I have to deploy JMSServer on serverone only
          > and then I start the serverone. Everything works fine. But when I try to
          start the
          > servertwo. It gives the error saying
          >
          > Exception in in ejbCreate:; nested exception is:
          > javax.ejb.CreateException: Could not look up context: Unable to
          resolve
          > logQueue. Resolved: '' Unresolved:'logQueue'
          >
          > WLS should replicate the state of logQueue from serverone to servertwo.
          But somehow
          > it is not replicating and giving the error.
          > I deployed the connectionFactory on cluster and JMSServer on serverOne
          >
          > Can you please help me how to come around this problem.
          >
          > Regds
          > Rashid
          >
          >
          

Similar Messages

  • How to get the job logs from sm35 by using the queue id and session name?

    hi all,
    can any one please let me know how to read the job log from sm35 by using the session name and queue id. i have the job name and job count but is it possible to download the job log by using the queue id and session name.
    FYI..
    i want to read this job log and i want to send it to an email id.
    -> i am using the job_open and submitting the zreport via job name and job count and then i am using the function module  job_close.
    but this is not working in my scenario i have the queue id and session name by using this two i want to get the job log is there any function module available or code please provide me some inputs.
    thanks in advance,
    koushik

    Hi Bharath,
    If you want to download it to the local file then you can follow the instructions in the below link.
    How to download Batch Input Session Log?
    Regards,
    Sachin

  • Error in using the JMS Adater using weblogic queue

    I am using weblogic queue in jms adapter to queue the data. i configured the server.xml
         <shared-library name="oracle.weblogic" version="10.1.3">
              <code-source path="D:\product\10.1.3.1\OracleAS_5\jdk\lib\weblogic.jar"/>
         </shared-library>
    I got the following error. Any Suggestions?
    file:/D:/product/10.1.3.1/OracleAS_5/bpel/domains/default/tmp/.bpel_OSM_OrderRequest_2.0_c68a29fd8af11327e1a8892e8de5a6bb.tmp/Sample.wsdl [ Produce_Message_ptt::Produce_Message(orderRequestMessage) ] - WSIF JCA Execute of operation 'Produce_Message' failed due to: Could not instantiate InteractionSpec oracle.tip.adapter.jms.outbound.JmsProduceInteractionSpec due to:
         Missing class: oracle.tip.adapter.jms.outbound.JmsProduceInteractionSpec
         Dependent class: oracle.tip.adapter.fw.wsif.jca.WSIFOperation_JCA
         Loader: oracle.bpel.common:10.1.3
         Code-Source: /D:/product/10.1.3.1/OracleAS_5/bpel/lib/orabpel.jar
         Configuration: <code-source> in /D:/product/10.1.3.1/OracleAS_5/j2ee/oc4j_soa/config/server.xml
    This load was initiated at orabpel.root:0.0.0 using the Class.forName() method.
    The missing class is not available from any code-source or loader in the system.; nested exception is:
         oracle.classloader.util.AnnotatedClassNotFoundException:
         Missing class: oracle.tip.adapter.jms.outbound.JmsProduceInteractionSpec
         Dependent class: oracle.tip.adapter.fw.wsif.jca.WSIFOperation_JCA
         Loader: oracle.bpel.common:10.1.3
         Code-Source: /D:/product/10.1.3.1/OracleAS_5/bpel/lib/orabpel.jar
         Configuration: <code-source> in /D:/product/10.1.3.1/OracleAS_5/j2ee/oc4j_soa/config/server.xml
    This load was initiated at orabpel.root:0.0.0 using the Class.forName() method.
    The missing class is not available from any code-source or loader in the system.; nested exception is:
         org.collaxa.thirdparty.apache.wsif.WSIFException: Could not instantiate InteractionSpec oracle.tip.adapter.jms.outbound.JmsProduceInteractionSpec due to:
         Missing class: oracle.tip.adapter.jms.outbound.JmsProduceInteractionSpec
         Dependent class: oracle.tip.adapter.fw.wsif.jca.WSIFOperation_JCA
         Loader: oracle.bpel.common:10.1.3
         Code-Source: /D:/product/10.1.3.1/OracleAS_5/bpel/lib/orabpel.jar
         Configuration: <code-source> in /D:/product/10.1.3.1/OracleAS_5/j2ee/oc4j_soa/config/server.xml
    This load was initiated at orabpel.root:0.0.0 using the Class.forName() method.
    The missing class is not available from any code-source or loader in the system.; nested exception is:
         oracle.classloader.util.AnnotatedClassNotFoundException:
         Missing class: oracle.tip.adapter.jms.outbound.JmsProduceInteractionSpec
         Dependent class: oracle.tip.adapter.fw.wsif.jca.WSIFOperation_JCA
         Loader: oracle.bpel.common:10.1.3
         Code-Source: /D:/product/10.1.3.1/OracleAS_5/bpel/lib/orabpel.jar
         Configuration: <code-source> in /D:/product/10.1.3.1/OracleAS_5/j2ee/oc4j_soa/config/server.xml
    This load was initiated at orabpel.root:0.0.0 using the Class.forName() method.
    The missing class is not available from any code-source or loader in the system.
    </summary>
    </part>
    -<part name="detail">
    <detail>
    org.collaxa.thirdparty.apache.wsif.WSIFException: Could not instantiate InteractionSpec oracle.tip.adapter.jms.outbound.JmsProduceInteractionSpec due to:
         Missing class: oracle.tip.adapter.jms.outbound.JmsProduceInteractionSpec
         Dependent class: oracle.tip.adapter.fw.wsif.jca.WSIFOperation_JCA
         Loader: oracle.bpel.common:10.1.3
         Code-Source: /D:/product/10.1.3.1/OracleAS_5/bpel/lib/orabpel.jar
         Configuration: <code-source> in /D:/product/10.1.3.1/OracleAS_5/j2ee/oc4j_soa/config/server.xml
    This load was initiated at orabpel.root:0.0.0 using the Class.forName() method.
    The missing class is not available from any code-source or loader in the system.; nested exception is:
         oracle.classloader.util.AnnotatedClassNotFoundException:
         Missing class: oracle.tip.adapter.jms.outbound.JmsProduceInteractionSpec
         Dependent class: oracle.tip.adapter.fw.wsif.jca.WSIFOperation_JCA
         Loader: oracle.bpel.common:10.1.3
         Code-Source: /D:/product/10.1.3.1/OracleAS_5/bpel/lib/orabpel.jar
         Configuration: <code-source> in /D:/product/10.1.3.1/OracleAS_5/j2ee/oc4j_soa/config/server.xml
    This load was initiated at orabpel.root:0.0.0 using the Class.forName() method.
    The missing class is not available from any code-source or loader in the system.

    I am able to fix this error by copying "JmsAdapter.jar" to "applib" directory of oc4j_soa.
    I was getting a new error.
    +"Missing class: oracle.tip.adapter.api.TranslationAware+
    +     Dependent class: oracle.tip.adapter.jms.JmsInteractionSpec+
    +     Loader: global.libraries:1.0+
    +     Code-Source: /D:/SOA1013/j2ee/oc4j_soa/applib/JmsAdapter.jar+
    +     Configuration: <code-source> in /D:/SOA1013/j2ee/oc4j_soa/config/server.xml+
    +The missing class is available from the following locations:+
    +     1. Code-Source: /D:/SOA1013/bpel/lib/orabpel.jar (from <code-source> in /D:/SOA1013/j2ee/oc4j_soa/config/server.xml)+
    +     This code-source is available in loader oracle.bpel.common:10.1.3."+
    But managed it to fix it by copying "orabpel.jar" to "applib" directory.
    We need to restart OC4J once we copy the JAR files.
    regards,
    S.Vasanth Kumar.

  • The hostname test01 is not authorized to be used in this zone cluster

    Hi,
    I have problems to register a LogicalHostname to a Zone Cluster.
    Here my steps:
    - create the ZoneCluster
    # clzc configure test01
    clzc:test01> info
    zonename: test01
    zonepath: /export/zones/test01
    autoboot: true
    brand: cluster
    bootargs:
    pool: test
    limitpriv:
    scheduling-class:
    ip-type: shared
    enable_priv_net: true
    sysid:
    name_service not specified
    nfs4_domain: dynamic
    security_policy: NONE
    system_locale: en_US.UTF-8
    terminal: vt100
    timezone: Europe/Berlin
    node:
    physical-host: farm01a
    hostname: test01a
    net:
    address: 172.19.115.232
    physical: e1000g0
    node:
    physical-host: farm01b
    hostname: test01b
    net:
    address: 172.19.115.233
    physical: e1000g0
    - create a RG
    # clrg create -Z test01 test01-rg
    - create Logicalhostname (with error)
    # clrslh create -g test01-rg -Z test01 -h test01 test01-ip
    clrslh: farm01b:test01 - The hostname test01 is not authorized to be used in this zone cluster test01.
    clrslh: farm01b:test01 - Resource contains invalid hostnames.
    clrslh: (C189917) VALIDATE on resource test01-ip, resource group test01-rg, exited with non-zero exit status.
    clrslh: (C720144) Validation of resource test01-ip in resource group test01-rg on node test01b failed.
    clrslh: (C891200) Failed to create resource "test01:test01-ip".
    Here the entries in /etc/hosts from farm01a and farm01b
    172.19.115.119 farm01a # Cluster Node
    172.19.115.120 farm01b loghost
    172.19.115.232 test01a
    172.19.115.233 test01b
    172.19.115.252 test01
    Hope somebody could help.
    regards,
    Sascha
    Edited by: sbrech on 13.05.2009 11:44

    When I scanned my last example of a zone cluster, I spotted, that I added my logical host to the zone clusters configuration.
    create -b
    set zonepath=/zones/cluster
    set brand=cluster
    set autoboot=true
    set enable_priv_net=true
    set ip-type=shared
    add inherit-pkg-dir
    set dir=/lib
    end
    add inherit-pkg-dir
    set dir=/platform
    end
    add inherit-pkg-dir
    set dir=/sbin
    end
    add inherit-pkg-dir
    set dir=/usr
    end
    add net
    set address=applh
    set physical=auto
    end
    add dataset
    set name=applpool
    end
    add node
    set physical-host=deulwork80
    set hostname=deulclu
    add net
    set address=172.16.30.81
    set physical=e1000g0
    end
    end
    add sysid
    set root_password=nMKsicI310jEM
    set name_service=""
    set nfs4_domain=dynamic
    set security_policy=NONE
    set system_locale=C
    set terminal=vt100
    set timezone=Europe/Berlin
    end
    I am refering to:
    add net
    set address=applh
    set physical=auto
    end
    So as far as I can see this is missing from your configuration. Sorry for leading you in the wrong way.
    Detlef

  • JMS Wrappers can't cache JNDI lookups when using secured queues

    Hi All!
    We are working on a jms client, inside a webapp(servlets), using Weblogic 9.2 and Weblogic 10.3.
    As we want to use secured queues and keep being efficient we tryed to use Weblogic JMS Wrappers, that should work according to the docs:
    Enhanced Support for Using WebLogic JMS with EJBs and Servlets
    http://download.oracle.com/docs/cd/E12840_01/wls/docs103/jms/j2ee.html
    But we are facing a problem:
    When we define a JMS Wrapper and try to cache JNDI lookups for the QueueConnectionFactory and Queue, as the docs recommend for efficiency, the connection to the queue is ignoring the user/pwd.
    The JMS Wrapper is using <res-auth>Application</res-auth>.
    We are creating the connection using createQueueConnection(user, pwd) from QueueConnectionFactory and after several tests it seems that the user and password are ingored unless a jndi lookup is made in the same thread, as if when there are not any thread credentials present user and password are ignored for the connection...
    so the question is:
    That behaviour goes against Weblogic JMS Wrapper documentation, doesn't it?
    Is there then any other way to access efficiently secured queues using a servlet as a client? (iit's not an option for us to use mdbs, or ejbs).
    If it helps, this seems related to this still opened spring-weblogic issue: SPR-2941 --> http://jira.springframework.org/browse/SPR-2941 and SPR-4720 --> http://jira.springframework.org/browse/SPR-4720
    Thanxs
    And here goes our DDs and code to reproduce:
    First in pretty format:
    web.xml --> http://pastebin.com/f5f85e8d4
    weblogic.xml --> http://pastebin.com/f2fbe10cc
    Client code --> http://pastebin.com/f586d32d9
    And now emmebded in the msg:
    web.xml
    <?xml version="1.0" encoding="UTF-8"?>
    <weblogic-web-app
      xmlns="http://www.bea.com/ns/weblogic/90"
      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
      xsi:schemaLocation="http://www.bea.com/ns/weblogic/90
      http://www.bea.com/ns/weblogic/90/weblogic-web-app.xsd">
        <description>WebLogic Descriptor</description>
        <resource-description>
            <res-ref-name>jms/QCF</res-ref-name>
            <jndi-name>weblogic.jms.ConnectionFactory</jndi-name>
        </resource-description>
    </weblogic-web-app>weblogic.xml
    <?xml version="1.0" encoding="UTF-8"?>
    <web-app version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
          <display-name> QCFWrapperCredentialsTest </display-name>
          <description> QCFWrapperCredentialsTest  </description>
          <servlet id="Servlet_1">
             <servlet-name>QCFWrapperCredentialsTest</servlet-name>
             <servlet-class>QCFWrapperCredentialsTest</servlet-class>
             <load-on-startup>1</load-on-startup>
          </servlet>
          <servlet-mapping id="ServletMapping_1">
             <servlet-name>QCFWrapperCredentialsTest</servlet-name>
             <url-pattern>/Test</url-pattern>
          </servlet-mapping>
         <resource-ref>
            <res-ref-name>jms/QCF</res-ref-name>
            <res-type>javax.jms.QueueConnectionFactory</res-type>
            <res-auth>Application</res-auth>
            <res-sharing-scope>Shareable</res-sharing-scope>
        </resource-ref>
    </web-app>And our test client:
    import java.io.*;
    import java.util.Properties;
    import javax.jms.*;
    import javax.naming.*;
    import javax.servlet.http.*;
    public class QCFWrapperCredentialsTest extends HttpServlet {
        QueueConnectionFactory factory = null;
        Queue queue = null;
        String jndiName = "java:comp/env/jms/QCF";
        String queueName= "jms/ColaEntradaConsultas";
        String user = "usuarioColas";
        String pwd = "12345678";
        String userjndi = "usuarioColas";
        String pwdjndi = "12345678";
        String serverT3URL="t3://127.0.0.1:7007";
        public void init() {
            setupJNDIResources();
        private void setupJNDIResources(){
            try {
                Properties props = new Properties();
                props.put("java.naming.factory.initial",
                        "weblogic.jndi.WLInitialContextFactory");
                props.put("java.naming.provider.url",serverT3URL );
                props.put("java.naming.security.principal", userjndi);// usr
                props.put("java.naming.security.credentials", pwdjndi);// pwd
                InitialContext ic = new InitialContext(props);
                factory = (QueueConnectionFactory) ic.lookup(jndiName);
                queue = (Queue) ic.lookup(queueName);
            } catch (NamingException e) {
                e.printStackTrace();
        public void service(HttpServletRequest req, HttpServletResponse res) {
            res.setContentType("text/html");
            Writer wr = null;
            try {
                wr = res.getWriter();
                //Comment this out, do a lookup for each request and it will work
                //setupJNDIResources();
                String user = this.user;
                String pwd = this.pwd;
                //read users and passwords from the request in case they are present
                if (req.getParameter("user") != null) {
                    user = req.getParameter("user");
                if (req.getParameter("pwd") != null) {
                    pwd = req.getParameter("pwd");
                wr.write("JNDI  User: *" + userjndi + "* y pwd: *" + pwdjndi + "*<p>");
                wr.write("Queue User: *" + user + "* y pwd: *" + pwd + "*<p>");
                //Obtain a connection using user/pwd
                QueueConnection conn = factory.createQueueConnection(user, pwd);
                QueueSession ses = conn.createQueueSession(true,
                        Session.SESSION_TRANSACTED);
                QueueSender sender = ses.createSender(queue);
                TextMessage msg = ses.createTextMessage();
                msg.setText("Hi there!");
                conn.start();
                sender.send(msg);
                ses.commit();
                sender.close();
                ses.close();
                conn.close();
            } catch (Exception e) {
                e.printStackTrace();
                try {
                    wr.write(e.toString());
                } catch (Exception e2) {
                    e2.printStackTrace();
            finally{
                try {
                    wr.close();
                } catch (IOException e) {
                    e.printStackTrace();
    }Edited by: user2525402 on Feb 9, 2010 7:14 PM

    Thanks Tom,
    Quite a useful response .-)
    Leaving aside the fact that weblogic behaviour with jms wrappers and secured queues seems to not be working as the docs says...
    Talking about workarounds:
    Both workarounds you suggest works, but as you already noted, creating a new JNDI context just to inject credentials into the threads is overkill when high performance is needed.
    I also found more information about the same issue here: http://sleeplessinslc.blogspot.com/2009/04/weblogic-jms-standalone-multi-threaded.html
    And he suggest the same workaround, injecting credentials
    So I tried the second approach, successfully, injecting credentials into the thread using the security API.
    This way, using JMS wrappers and injecting credentials into the thread we get the best performance available, caching resource using wrappers and using credentials in a somewhat efficient way.
    Now the test snippet looks like this:
    import java.io.*;
    import java.security.PrivilegedAction;
    import java.util.Properties;
    import javax.jms.*;
    import javax.naming.*;
    import javax.security.auth.Subject;
    import javax.security.auth.login.LoginException;
    import javax.servlet.http.*;
    import weblogic.jndi.Environment;
    import weblogic.security.auth.Authenticate;
    public class JMSWrapperCredentialsTest extends HttpServlet {
        QueueConnectionFactory factory = null;
        Queue queue = null;
        String jndiName = "java:comp/env/jms/QCF";
        String queueName= "jms/ColaEntradaConsultas";
        String user = "usuarioColas";
        String pwd = "12345678";
        String userjndi = "usuarioColas";
        String pwdjndi = "12345678";
        String serverT3URL="t3://127.0.0.1:7007";
        public void init() {
            setupJNDIResources();
        private void setupJNDIResources(){
            try {
                Properties props = new Properties();
                props.put("java.naming.factory.initial",
                        "weblogic.jndi.WLInitialContextFactory");
                props.put("java.naming.provider.url",serverT3URL );
                props.put("java.naming.security.principal", userjndi);// usr
                props.put("java.naming.security.credentials", pwdjndi);// pwd
                InitialContext ic = new InitialContext(props);
                factory = (QueueConnectionFactory) ic.lookup(jndiName);
                queue = (Queue) ic.lookup(queueName);
            } catch (NamingException e) {
                e.printStackTrace();
        public void service(HttpServletRequest req, HttpServletResponse res) {
            final HttpServletRequest fReq=req;
            final HttpServletResponse fRes=res;
            PrivilegedAction action = new java.security.PrivilegedAction() {
                public java.lang.Object run() {
                    performRequest(fReq,fRes);
                    return null;
            try {
                Subject subject=createSingleSubject(serverT3URL,user,pwd);
                weblogic.security.Security.runAs(subject, action);
            } catch (Exception e) {
                e.printStackTrace();
        public void performRequest(HttpServletRequest req, HttpServletResponse res) {
            res.setContentType("text/html");
            Writer wr = null;
            try {
                wr = res.getWriter();
                //Comment this out, do a lookup for each request and it will work
                //setupJNDIResources();
                String user = this.user;
                String pwd = this.pwd;
                //read users and passwords from the request in case they are present
                if (req.getParameter("user") != null) {
                    user = req.getParameter("user");
                if (req.getParameter("pwd") != null) {
                    pwd = req.getParameter("pwd");
                wr.write("JNDI  User: *" + userjndi + "* y pwd: *" + pwdjndi + "*<p>");
                wr.write("Queue User: *" + user + "* y pwd: *" + pwd + "*<p>");
                //Obtain a connection using user/pwd
                QueueConnection conn = factory.createQueueConnection(user, pwd);
                QueueSession ses = conn.createQueueSession(true,
                        Session.SESSION_TRANSACTED);
                QueueSender sender = ses.createSender(queue);
                TextMessage msg = ses.createTextMessage();
                msg.setText("Hi there!");
                conn.start();
                sender.send(msg);
                ses.commit();
                sender.close();
                ses.close();
                conn.close();
            } catch (Exception e) {
                e.printStackTrace();
                try {
                    wr.write(e.toString());
                } catch (Exception e2) {
                    e2.printStackTrace();
            finally{
                try {
                    wr.close();
                } catch (IOException e) {
                    e.printStackTrace();
        private Subject createSingleSubject(String providerUrl, String userName, String password) {
            Subject subject = new Subject();
            // Weblogic env class
            Environment env = new Environment();
            if(providerUrl!=null)
                env.setProviderUrl(providerUrl);
            env.setSecurityPrincipal(userName);
            env.setSecurityCredentials(password);
            try {
              // Weblogic Authenticate class will populate and Seal the subject
              Authenticate.authenticate(env, subject);
              return subject;
            catch (LoginException e) {
              throw new RuntimeException("Unable to Authenticate User", e);
            catch (Exception e) {
              throw new RuntimeException("Error authenticating user", e);
    }Thanks a lot for the help

  • How to use a queue with dynamic data

    When using a collector I have found that it significantly slows down my loop times. I am using LabView7.1 on a Dell PC with Windows XP.  If I use a queue with dynamic data do you think that will require less of my processor and allow for faster loop speeds?
    I have created a queue using dynamic data in one loop and I want to retrieve all available samples each iteration in a slower loop. If I use the flush queue I get a 1d array of dynamic data. What is the best way to convert the 1d array of dynamic data so that the array of dynamic data is consolidated back into a single dynamic data type? Any help would be much appreciated.

    Hi Dennis,
    You could for instance wire the array to an auto-indexed for loop. I attach an example. I assume you wish to concatenate the arrays a singel waveform.
    Hope it helps,
    Pelle S
    District Sales Manager
    National Instruments Sweden
    Attachments:
    Dynamic queue.vi ‏245 KB

  • Why do we use a queue?

    When we deal with event, we use queue sometimes.
    But I am not really understand, why we use queue.
    Why don't just execute it immediately?
    Queue occurs time delay. And makes program complicated.
    Can somebody tell me the reason, or what kinds of situation we use the queue?

    Why don't just execute it immediately?It would be nice. Although computers are fast, code doesn't always execute instantaneously. Sometimes it may take a few milliseconds or more. So events get added to the queue and each event is processed sequentially from the queue. This is done automatically by Swing and is generally not somthing you need to worry about.

  • Using dynamic queues in jms

    I am making messenger using jms
    Can anyone tell me
    **if createQueue() or createTemporaryQueue() should be used for queue creation.
    **if createTemporaryQueue() is used,i think offline messages can't be sent
    **i am unable to create the queue,plz tell exactly how i can create it
    Thanx in advance

    createQueue/Topic do not create the physical destination but only the address to it. Queues and Topics are administered objects in JMS and are usually created by your JMS vendors admin tools / config files. Some provider even create the destinations on the fly (first use).
    -- Andreas

  • How to use message queue for inegrating third party with EBS

    Hi Experts,
    We would like to integrate a third party system with EBS using message queues.
    Where we will subscribe to a businnes event and which will populate the messages to messages queue.
    But how can we deque this message in third party systems. We are in R12.1.3 and no FMW installed.
    Any adapater or something is availabe, If so please throw some inputs.
    Thanks
    Bhaart

    Please go to the link
    http://developer.novell.com/extend/composer/1006.html
    and also see the "message filtering" section.
    Where you can find
    Exposing message selection hints in the header portion of a message is a common tactic when multiple receiving apps are pointed at the same queue. The application that is best suited to handling a given message type can harvest just the messages it needs, while other applications can act on messages better suited for them. Administratively, it is more efficient to set up one queue (with multiple receivers accessing it) than to set up multiple queues, each with a dedicated receiver. My question is how can I achieve this Via progamatically ?

  • Error while using Display queue

    Hi,
    I have a strange problem here.I have a ifwithoutelse condition,the output of which is given to removecontext.Now while seeing the output using display queue on "ifwithoutelse" im able to see the output as "GB" which is my desired ouput.Now the output of this "ifwithoutelse" is given to "removecontext".But while seeing the Display Queue on this it is showing SUPRESS as the input.Can anyone help me in this regard.
    Thanks,
    Bhargav

    Hi,
    The input for if is the output of an and condition The output of the and condition is given to remove context which is again given to this if condition.
    The input for the then condition is the output of an UDF whose output is given to removecontext and it is than given to the then condition
    Thanks,
    Bhargav

  • Have the problem to export media use the queue after the latest update of Premiere and Media encoder?

    After update the Premiere CC 2014 and Encoder CC 2014, I couldn't export the movie use the Queue function?
    There always had a unknown error stop the process. (Compile error?)

    You need to fix that first.
    Export and preview in the Media Encoder and watch when it stops.
    There you need to fix the timeline.
    Start a new project to see if you can use AME.

  • Why Inner join or Outer join is not used for Pool or Cluster tables  ?

    Hi SAP-ABAP Experts .
    With Due Regards .
    May u explain me why Inner join or Outer join is not useful for Pool or Cluster tables  ?
    because peoples advised not use Joins for Pool and Cluster tables , What harm will take place , If we do this ?
    Best Regards to all : Rajneesh

    Both Pooled and Cluster Tables are stored as tables within the database. Only the structures of the two table types which represent a single logical view of the data are defined within the ABAP/4 Data Dictionary. The data is actually stored in bulk storage in a different structure. These tables are commonly loaded into memory (i.e., 'buffered') due to the fact they are typically used for storing internal control information and other types of data with little or no external (business) relevance.
    Pooled and cluster tables are usually used only by SAP and not used by customers, probably because of the proprietary format of these tables within the database and because of technical restrictions placed upon their use within ABAP/4 programs. On a pooled or cluster table:
    Secondary indexes cannot be created.
    You cannot use the ABAP/4 constructs select distinct or group by.
    You cannot use native SQL.
    You cannot specify field names after the order by clause. order by primary key is the only permitted variation.
    I hope it helps.
    Best Regards,
    Vibha
    Please mark all the helpful answers

  • Disadvantage of using multiple queues?

    is there a way to allow only a specific client to retrieve a specific message using a single queue? i would like to have multiple clients sending and recieving messages to a queue but they may not be sending them and retrieving them in any specific order. i want to have it so when a message gets sent, only a specific client will be able to receive that message. so if i have several clients waiting to recieve messages from the queue, the client that the message is for will be the only one to get the message. is there a way to set an ID number or something on the messages designating which client should read them? or is it better to use multiple queues where each client will have its own specific queue that it will be reading from? is there any performance disadvantages to creating multiple queues?

    Hi,
    Your receivers can use a message selector based on a JMS property that is set accordingly by your senders. Regarding performances it is mainly dependent on the number of consumer types you want to use and of the number of destination that are already deployed on your JMS server. A consumer that uses message selector is slower than a standard consumer then it is better to use multiple destinations. However, the JMS server may be overloaded if too many destinations are deployed. You should do some tuning of your JMS server to find out the best suitable solution for your needs.
    Arnaud
    http://arjuna.com

  • Using distributed queues and factories in a weblogic cluster

    Hi all,
    in our environment we have a domain which has two machines. One is running the AdminServer and Node1 and the 2nd machine is running Node2.
    For each Node I have created a JMS Server and a corresponding file store located at each machine.
    I've also created a JMS Module containing our required queues, factories and topics. Queues and Topics are of the Uniform Distributed type.
    I've targeted this module at the cluster and experimented with creating a subdeployment. But from what I recon, since all my resources have default targeting
    enabled, a subdeployment is not required, they target what is targeted by the JMS Module, right?
    However I get an exception when both nodes are up:
    <Nov 4, 2008 11:47:01 AM EET> <Warning> <JMS> <BEA-040498> <An error occurred while forwarding a message for distributed destination member       
    MyJMSModule!MyJMSServer@myTopic: weblogic.messaging.dispatcher.DispatcherException: java.rmi.RemoteException: Couldn't connect to weblogic.rjvm.RJVMImpl@187766d - id: '-1415064081927280896S:10.0.0.5:
    [7001,7001,-1,-1,-1,-1,-1]:app1:7003,app2:7001:my_domain        :NodeApp2' connect time: 'Tue Nov 04 11:47:01 EET 2008' - it is likely that the connection has already been shut down; nested exception is:
    5564732         java.rmi.ConnectException: Couldn't connect to weblogic.rjvm.RJVMImpl@187766d - id: '-1415064081927280896S:10.48.92.70:[7001,7001,-1,-1,-1,-1,-1]:app1:7003,app2:7001:my_domain:NodeApp2'
    connect time: 'Tue Nov 04 11:47:01 EET 2008' - it is likely that the connection has already been shut downThe two nodes are up and running and the node managers as well. Is this the correct way to create the queues and topics for a clustered environment?
    Thanks
    Edited by: dvm on Nov 4, 2008 3:12 AM

    I've done the steps but the problem still persists. I don't know if I had this before, but now both machines can't see each other.
    From Node1 logs *.out file:
    <Warning> <JMS> <BEA-040498> <An error occurred while forwarding a message for distributed destination member MyJMSModule!MyJMSServer2@my_cacheTopic:
    weblogic.messaging.dispatcher.DispatcherException: java.rmi.RemoteException:
    Couldn't connect to weblogic.rjvm.RJVMImpl@62017d - id: '4786464166486913267S:10.48.92.70:[7001,7001,-1,-1,-1,-1,-1]:app1:7003,app2:7001:my_domain:NodeApp2'
    connect time: 'Wed Nov 05 16:03:53 EET 2008' - it is likely that the connection has already been shut down; nested exception is:
    java.rmi.ConnectException: Couldn't connect to weblogic.rjvm.RJVMImpl@62017d - id: '4786464166486913267S:10.48.92.70:[7001,7001,-1,-1,-1,-1,-1]:app1:7003,app2:7001:my_domain:NodeApp2'
    connect time: 'Wed Nov 05 16:03:53 EET 2008' - it is likely that the connection has already been shut downand from Node2 logs *.out file:
    <Warning> <JMS> <BEA-040498> <An error occurred while forwarding a message for distributed destination member MyJMSModule!MyJMSServer1@my_cacheTopic:
    weblogic.messaging.dispatcher.DispatcherException: java.rmi.RemoteException:
    Couldn't connect to weblogic.rjvm.RJVMImpl@24b64a - id: '-788798942991630857S:10.48.92.69:[7003,7003,-1,-1,-1,-1,-1]:app1:7003,app2:7001:my_domain:NodeApp1'
    connect time: 'Wed Nov 05 16:03:59 EET 2008' - it is likely that the connection has already been shut down; nested exception is:
    java.rmi.ConnectException: Couldn't connect to weblogic.rjvm.RJVMImpl@24b64a - id: '-788798942991630857S:10.48.92.69:[7003,7003,-1,-1,-1,-1,-1]:app1:7003,app2:7001:my_domain:NodeApp1'
    connect time: 'Wed Nov 05 16:03:59 EET 2008' - it is likely that the connection has already been shut downThis happens just after the managed servers have been started with the application previously deployed.

  • Using metrics with a cluster of brokers.

    Hello,
    Here is my situation -
    I'm using the metric topic "mq.metrics.destination_list" to receive the mapped message of metric data. I'm doing this to get the queue depth, number of consumers and number of messages acknowledge. My JMS provider is Sun JMS. I have a cluster of two brokers on Window Servers. I set the address list of brokers accordingly as shown.
    connectFactory = new com.sun.messaging.ConnectionFactory();
    connectFactory.setProperty("imqAddressList", addressList());
    The problem is the metric data only contains data on the first broker in my list. I would assume since they are clustered I should get the combination of all the brokers in the cluster. Is this possible and if so what am I missing?
    PS: I know I could poll each broker and manually combine the data but I prefer not to.
    Thanks

    I'm afraid that this is the case at the moment. Metrics are only local to the broker.
    Tom

Maybe you are looking for