Mdb "JMSConnection Alive" False in clustered domain

I have a clustered domain with 2 servers on 2 seperate boxes. The Queue is pinned to server1. I am seeing 1 consumer for the Queue when both servers are running. Server2 does not appear to connect to the Queue but there is nothing written to the logs to suggest it is not. I also have another domain exactly like the first on the same boxes with the same problem with the 2nd server. Any ideas? I have looked through the forums and everyone says to check the logs, but there is nothing written to our logs concerning this Queue.

I have a clustered domain with 2 servers on 2 seperate boxes. The Queue is pinned to server1. I am seeing 1 consumer for the Queue when both servers are running. Server2 does not appear to connect to the Queue but there is nothing written to the logs to suggest it is not. I also have another domain exactly like the first on the same boxes with the same problem with the 2nd server. Any ideas? I have looked through the forums and everyone says to check the logs, but there is nothing written to our logs concerning this Queue.

Similar Messages

  • Mdb "JMSConnection Alive" false in cluster

              Hi
              I am deploying an MDB [jar] in a cluster of 2 servers - and I send a message to
              the Queue [pinned queue to server1]. I am seeing that there are no consumers for
              the Queue and the "monitoring the MDB" link shows JMSConnection Alive property
              to be false - what does that mean? is the MDB not able to see the Queue? The message
              remains in the Queue.
              thanks
              Anamitra
              

    Please post your log files, config.xml, and the code for the producer
              that can't find the info. JNDINameReplicated is set to true by default.
              Anamitra wrote:
              > Hi Tom
              > I fixed all my cluster issues [actually I reinstalled wls 7.0 sp2 in both the
              > boxes - and did the cluster setup again - that solved it]. Now both the servers
              > can see each other. But the problem is with the jms queues. I am not using distributed
              > queues. I am just pinning the queue to server1 and a producer form server2 is
              > not able to see it!. This is nothing to do with MDBs - I suspect the queue jndi
              > name is not getting replicated somehow - looks like a bug. I rerember that there
              > was a attr JNDINameRplicated somewhere - is it something to do with that?
              >
              > thanks
              > Anamitra
              >
              > Tom Barnes <[email protected]> wrote:
              >
              >>Hi Anamitra,
              >>
              >>Before trying to get the MDB to work, I think you need to resolve
              >>the cluster synchronization problems. The MDB depends
              >>on JNDI to find its destination, and JNDI in turn depends
              >>on cluster synchronization.
              >>
              >>I suspect a problem with multicasting. Try
              >>posting to clustering and/or jndi newsgroup to get a diagnosis.
              >>
              >>Tom
              >>
              >>Anamitra wrote:
              >>
              >>>pls note that when the cluster comes up the server2 never finds the
              >>
              >>server1 to
              >>
              >>>synchronize with[in case when server 2 boots up after server1] - but
              >>
              >>server1 always
              >>
              >>>finds the server2 [in case when server1 boots up after server2]. This
              >>
              >>is strange!
              >>
              >>>Also the queue that has the data is maxqueues/contqueuein - and monitoring
              >>
              >>that
              >>
              >>>queue shows there are no consumers.
              >>>
              >>>thanks
              >>>Anamitra
              >>>
              >>>Tom Barnes <[email protected]> wrote:
              >>>
              >>>
              >>>>Check your log file for errors and warnings. Even if
              >>>>an MDB is successfully deployed, it may not be able
              >>>>to reach the queue due to misconfiguration.
              >>>>If you like, post your config.xml and descriptor files
              >>>>and I'll take a quick look.
              >>>>
              >>>>Tom
              >>>>
              >>>>Anamitra wrote:
              >>>>
              >>>>
              >>>>>Hi
              >>>>>I am deploying an MDB [jar] in a cluster of 2 servers - and I send
              >>>>
              >>>>a message to
              >>>>
              >>>>
              >>>>>the Queue [pinned queue to server1]. I am seeing that there are no
              >>>>
              >>>>consumers for
              >>>>
              >>>>
              >>>>>the Queue and the "monitoring the MDB" link shows JMSConnection Alive
              >>>>
              >>>>property
              >>>>
              >>>>
              >>>>>to be false - what does that mean? is the MDB not able to see the
              >>>>
              >>Queue?
              >>
              >>>>The message
              >>>>
              >>>>
              >>>>>remains in the Queue.
              >>>>>
              >>>>>thanks
              >>>>>Anamitra
              >>>>
              >
              

  • WLS 7 MDB JMSConnection Alive false - where is the error reported?

    I have a few MDBs subscribed to various destinations. One of them is
    subscribed to a queue called jms.queue.queue1 in JNDI. queue1 is a
    regular Queue (not distributed), lives in JMSServer1, which is
    deployed to WLS server1. An entry for it appears in JNDI on each
    server in the cluster (server1 + server2). The MDB lives in an
    ejb-jar which is deployed to the cluster containing server1 & server2.
    In the console, under deployments -> ejb -> myejb.jar -> monitoring ->
    Monitor all Message Driven EJBRuntimes, all the other MDBs have
    "JMSConnection Alive" appearing as "true", but the one subscribed to
    queue1 has "false". I cannot see any exceptions in the server logs.
    Is there any way to get at the reason for the "false"?
    I can use a command-line QueueSender and Receiver on queue1 without a
    problem, using the t3:// url of either of the WLS Servers.
    What's most important to me is where the error is reported - I've had
    this problem a couple of times and it seemed to go away on its own.
    I'm not getting any diagnositics right now.
    Many thanks,
    Jeremy.

    I guess you got the answer by this time.
    IF not the answer is:
    Use enable the TX flags in the JMSConnectionFactory. Goto console. Select
    the JMSConnectionFactory (what MDB is using). Click on the trnsactions tab.
    Check the boxes there.
    Cheers,
    ..maruthi
    "Jeremy Watson" <[email protected]> wrote in message
    news:[email protected]..
    >
    I "stumbled on" this - if you set these system properties:
    weblogic.ejb20.jms.connect.verbose=trueweblogic.ejb20.jms.connect.debug=true
    >
    ..then you get some informative error messages from the EJB runtime as ittries
    to connect to the JMS destination. In my case, I got the followingexception coming
    out:
    [JMSConnectionPoller] : ** FAILED TO CONNECT TO JMS WITH:weblogic.ejb20.WLDeploymentException:
    Message Driven Bean 'mdb3' is transacted but the provider defined in theejb is not
    transacted. Provider should be transacted if onMessage method in MDB istransacted.
    >
    >
    Apologies for double-posting. Thanks for the piece of direction Tom (inthe jms group),
    which helped me find the answer.
    Jeremy.

  • Osb 11 : How to configure tuxedo business services in a clustered domain.

    Hi,
    We have a platform with a clustered domain Osb ( 1 admin server and 2 managed servers dispatch on several physical servers) and two Tuxedo instances offering the same service exported in 2 different gateways on each Tuxedo instance.
    How to configure a business service with tuxedo transport working on this platform with failover and load balancing ?

    Thanks for the answer but it doesn't work.
    The fact is that we work on OSB 11, not directly in WebLogic.
    And Osb always modify the WTC configuration even if we modify it before in weblogic.
    To define a business service with multiple remote access points and apply a load balancing algorythm, Osb need an URI for each remote access point (not for each imported service).

  • WLI clustering domain

    Hi,
    I created a clustered domain of integration, but unable to start the managed servers
    and the exceptions - can not load pointbase classes. I have no idea why? Any help,
    did some experience this kind of problem.
    Thanks,
    Gary

    The config.xml probably is use a pool pointing to pointbase database by
              default. the pointbase class jars are located in <your
              installation>\weblogic81\common\eval\pointbase\lib
              place them in the classpath and that shoudl take care of the problem. Your
              managed servers should startup, unless you need to do some additional
              configuration.
              Theoritically all this should work without you having to do anything. Please
              contact [email protected] to file a case.
              hth
              sree
              "Gary Hassan" <[email protected]> wrote in message
              news:40f469be$1@mktnews1...
              >
              > I created a domain using configuration wizard, I could not start managed
              servers.
              > The error message is it could not load pointbase classes. I do not know
              why. Any
              > help??
              >
              > Thanks,
              > Gary
              

  • Deployment of same EAR files to two separate clustered domains

    I am currently running all my portal applications and business objects from within one 8.1 clustered environment.
    However I would like to move to an architecture where we use two 8.1 clustered server domains.
    Where:
    Clustered domain 1 is used to service requests from back office applications from within the enterprise and
    Clustered domain 2 used to service requests for external facing applications from the portal jpf's.
    The deployment issue which concerns me is that each cluster will require an identical deployment of the same ear files.
    The datasources for each of the ear's will point to a common database.
    This solution is prefered over that of deploying the ear files to just one clustered domain and calling the application from the other clustered domain
    via the remote interface, as this would incure code changes and all the associated testing etc.
    I'd like to find out if there are any issues on of concurrency with this deployment model ?
    The business objects in the ears are comprised of mainly CMP EJB's and statless session beans.
    How will the container of each cluster manage the DB concurrency of the CMP EJB's when the datasource's of the ear files in each clustered domain
    point to the same DB ? Will this cause any concurrency conflicts?

    Sounds like you have some code that is not threadsafe. Instances are interacting, probably because you are using static data that is being shared between running instances in the same jvm. If so, convert to instance data if your code is the cause.
    Check this line of code, it may be the cause:
    at jep.MySimpleEventQueue.dispatchEvent(MySimpleEventQueue.java:59)

  • MDBs in a clustered Domain

    Hi,
    Can anyone please help me with below question please?
    1. Can MDBs actually behave as singleton service in a clsutered domain? How would they behave if implemented using Singleton Interface?
    2. If above is possible, what would be the steps for configuring an MDB as a singleton service on a cluster?
    What we need to implement is that the MDB should pick up a single message from the queue at a time and only after certain processing on the same, the next message should be taken up so as to maintain the sequence of processing the message as they arrived in the queue.
    Thanks,
    Himani

    The following shows an example of how to implement the singletonservice interface
    with message-driven beans.
    Create your message-driven bean, for example
    package model.logic;
    import weblogic.cluster.singleton.SingletonService;
    import javax.ejb.ActivationConfigProperty;
    import javax.ejb.MessageDriven;
    import javax.jms.JMSException;
    import javax.jms.Message;
    import javax.jms.MessageListener;
    import javax.jms.TextMessage;
    @MessageDriven(mappedName = "jms/SingletonMDBQueue", activationConfig = {
            @ActivationConfigProperty(propertyName = "destinationName", propertyValue = "jms/SingletonMDBQueue"),
            @ActivationConfigProperty(propertyName = "connectionFactoryJndiName", propertyValue = "jms/SingletonMDBConnectionFactory"),
            @ActivationConfigProperty(propertyName = "destinationType", propertyValue = "javax.jms.Queue")
    public class SingletonMDB implements MessageListener, SingletonService {
        private String myResource;
        public SingletonMDB() {
        public void onMessage(Message message) {
            TextMessage text = (TextMessage)message;
            try {
                message.acknowledge();
                System.out.println("received the following message: " + text.getText() + myResource);
            } catch (JMSException e) {
                e.printStackTrace();
         * This method should obtain any system resources and start any services required for the singleton
         * service to begin processing requests. This method is called in the following cases:
         *  - When a newly deployed application is started
         *  - During server start
         *  - During the activation stage of service migration
        public void activate() {
            System.out.println("activating singleton service");
            myResource = "obtaining resources and start required services";
         * This method is called during server shutdown and during the deactivation stage of singleton
         * service migration. This method should release any resources obtained through the activate()
         * method. Additionally, it should stop any services that should only be available from one
         * member of a cluster.
        public void deactivate() {
            System.out.println("deactivating singleton service");
            myResource = null;
    }Note that the only resource in the example is a String, which is initiated in the activate method
    and released in the deactivate method. Usually, in a message-driven bean you would use the
    lifecycle of an message-driven bean by using PostConstruct and PreDestroy annotations to respectivily initiate
    the resources and release the resources used by the message-driven bean, for example,
        @PostConstruct
        public void activate() {
            try {
                Context context = new InitialContext();
                mailSession = (Session) context.lookup("mail/VideotheekMailSession");
            } catch (NamingException e) {
                e.printStackTrace();
            try {
                mailMessage = new MimeMessage(mailSession);
                mailMessage.setFrom(new InternetAddress(mailSession.getProperty("mail.from")));
                mailMessage.addRecipient(javax.mail.Message.RecipientType.TO,
                        new InternetAddress(mailSession.getProperty("mail.to")));
                mailMessage.setSubject("New Member Added");
            } catch (MessagingException e) {
                e.printStackTrace();
            try {
                mailTransport = mailSession.getTransport();
            } catch (NoSuchProviderException e) {
                e.printStackTrace();
        @PreDestroy
        public void deactivate() {
            try {
                if (mailTransport != null) {
                    mailTransport.close();
            } catch (MessagingException e) {
                e.printStackTrace();
        }In the deployment override weblogic-ejb-jar.xml configure the free beans in the pool, for example
    <weblogic-ejb-jar 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-ejb-jar.xsd">
        <weblogic-enterprise-bean>
            <ejb-name>SingletonMDB</ejb-name>
            <message-driven-descriptor>
                <pool>
                    <initial-beans-in-free-pool>1</initial-beans-in-free-pool>
                    <max-beans-in-free-pool>1</max-beans-in-free-pool>
                </pool>
                <destination-jndi-name>jms/SingletonMDBQueue</destination-jndi-name>
            </message-driven-descriptor>
        </weblogic-enterprise-bean>
    </weblogic-ejb-jar>The next step is to register the singleton service in the deployment override weblogic-application.xml, for example,
    <weblogic-application xmlns="http://www.bea.com/ns/weblogic/90"
                          xmlns:j2ee="http://java.sun.com/xml/ns/j2ee"
                          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-application.xsd">
        <singleton-service>
            <name>SingletonMDB</name>
            <class-name>model.logic.SingletonMDB</class-name>
        </singleton-service>
    </weblogic-application>Now we need to package our singleton service in, for example, an EAR file. The singleton service must
    be in either the APP-INF/lib or the APP-INF/classes directory. So we have to make sure that the EJB
    JAR file is placed in the APP-INF/lib directory. We have the following structure:
    APP-INF
        lib
            Model.jar (contains the message-driven bean class)
    META-INF
        application.xml
        weblogic-application.xmlThe file application.xml has the following contents:
    <?xml version="1.0" encoding="UTF-8"?>
    <application xmlns="http://java.sun.com/xml/ns/javaee"
                 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
                 xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/application_5.xsd"
                 version="5">
        <module>
            <ejb>/APP-INF/lib/Model.jar</ejb>
        </module>
    </application>The file Model.jar has the following structure:
    META-INF
        ejb-jar.xml
        weblogic-ejb-jar.xml
    model
        logic
            SingletonMDB.classBefore you deploy the singleton service, you should configure Migration basis of the cluster.
    In the admin console, click Environment, Clusters and choose the cluster to which
    you want to deploy the singleton service. Click the Migration Configuration tab.
    Select the candidate machine and choose , for example, Migration Basis - Consensus.
    Also, adjust the Maximum Messages per Session. By default, WebLogic JMS sets this value
    to 10 messages. In your situation you must change this value to 1. (Applications that
    need strict ordered processing and are not using the Unit-of-Order feature
    must set the value to 1. Setting it to anything else will cause messages to get out of order if
    message processing fails and the message goes back to the destination for redelivery.)
    The parameter can be set on the Client Configuration tab of your connection factory.
    Now you can deploy the EAR file. From the documentation: Deployment of an application-scoped singleton service will happen
    automatically as part of the application deployment. The candidate servers for the singleton service will be the cluster members
    where the application is deployed. When you look in the logging of the respective servers in the cluster:
    Log server1
    ####<Nov 4, 2010 11:08:53 AM CET> <Info> <Cluster> <lt1379> <Server1> <[STANDBY] ExecuteThread: '3' for queue: 'weblogic.kernel.Default (self-tuning)'> <<WLS Kernel>> <> <> <1288865333078> <BEA-000187> <The Singleton Service SingletonMDB is now registered on this server. This server may be chosen to host this service.> Log server2
    ####<Nov 4, 2010 11:08:53 AM CET> <Info> <Cluster> <lt1379> <Server2> <[STANDBY] ExecuteThread: '3' for queue: 'weblogic.kernel.Default (self-tuning)'> <<WLS Kernel>> <> <> <1288865333047> <BEA-000187> <The Singleton Service SingletonMDB is now registered on this server. This server may be chosen to host this service.>
    ####<Nov 4, 2010 11:09:02 AM CET> <Info> <Cluster> <lt1379> <Server2> <[ACTIVE] ExecuteThread: '2' for queue: 'weblogic.kernel.Default (self-tuning)'> <<WLS Kernel>> <> <> <1288865342406> <BEA-000189> <The Singleton Service SingletonMDB is now active on this server.>Some information about migration of the service can be found here:
    http://download.oracle.com/docs/cd/E12840_01/wls/docs103/cluster/service_migration.html#wp1051458
    and here
    http://download.oracle.com/docs/cd/E12840_01/wls/docs103/cluster/service_migration.html#wp1066042

  • Creating a MDB and Distributed Queue in Clustered env in weblogic 9.2

    I have created 3 managed servers and all these managed servers are in the cluster.
              Now i create JMS module for this cluster and create the Connection factory 'QUEUE_CF_8' and distributed Queue 'DIS_QUEUE_8' targeting to the cluster.
              I create a MDB and JMS client and deploy them in the cluster.JMS client sends the message to the distributed queue and MDB is listening to the distributed queue
              When i deploy the MDB , it is deploys perfectly . But when i run the client it fails with the following exception
              [java] javax.naming.NameNotFoundException: Unable to resolve 'QUEUE_CF_8'. Resolved '' [Root exception is javax.naming.NameNotFoundException: Unable to resolve 'QUEUE_CF_8'. Resolved '']; remaining name 'QUEUE_CF_8'
              When i view the JNDI tree for all the managed servers , i can see the Connection factory and the distributed queue.
              Also i deploy the MDB to the cluster and no submoduletargets are specified.
              Let me know what is that iam missing.

    <?xml version='1.0' encoding='UTF-8'?>
              <weblogic-jms xmlns="http://www.bea.com/ns/weblogic/90" xmlns:sec="http://www.bea.com/ns/weblogic/90/security" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:wls="http://www.bea.com/ns/weblogic/90/security/wls" xsi:schemaLocation="http://www.bea.com/ns/weblogic/920 http://www.bea.com/ns/weblogic/920.xsd">
              <connection-factory name="Queue_CF_8">
              <sub-deployment-name>Server_group_4</sub-deployment-name>
              <jndi-name>QUEUE_CF_8</jndi-name>
              <security-params>
              <attach-jmsx-user-id>false</attach-jmsx-user-id>
              </security-params>
              </connection-factory>
              <uniform-distributed-queue name="DIS_QUEUE_8">
              <sub-deployment-name>Server_group_4</sub-deployment-name>
              <jndi-name>DIS_QUEUE_8</jndi-name>
              <load-balancing-policy>Round-Robin</load-balancing-policy>
              </uniform-distributed-queue>
              </weblogic-jms>
              But the problem was with the clustering.
              Thanks for your time..

  • Example WLST scripts for creating clustered domain for soa suite 11.1.1.4?

    Hello,
    does anyone know sample wlst scripts for creating domain for soa suite 11.1.1.4 on top of weblogic 10.3.4?
    I try to create a domain having a cluster with two managed servers in two linux machines.
    Any help appreciated.
    regards, Matti

    Please refer -
    http://download.oracle.com/docs/cd/E17904_01/web.1111/e13715/domains.htm
    http://download.oracle.com/docs/cd/E17904_01/web.1111/e13715/intro.htm#WLSTG112
    Regards,
    Anuj

  • Message distribution in a clustered domain

    All,
    I have a domain with two Managed server (m1, m2). I have created a cluster and added the domain to this cluster.
    I have created physical queue Q1 and assigned it to m1 and Q2 to m2.
    Then I have created a distributed queue with (Q1, Q2) as members and the distributed queue was targeted to the cluster.
    I have a client that did a JNDI lookup of the distributed queue and publishing messages to the distributed queue. All of the published messages are going to Q1 on M1 even though I have selected 'Round-Robin' algorithm for the distributing the messages.
    Any help in resolving this problem is highly appreciated. I could not find anything obviously wrong..
    Thanks
    Raj

    Hi Yesh,
    Thank you for such a quick reply. I am assuming it is at the connection factory level.
    Thanks
    Raj

  • Problems with Apache Proxy to 3 clustered domains....

    I have 3 different domains (qa, stage, production) running on weblogic 81. I am trying to get Apache to route to the correct domains.
    ie...
    http://192.XXX.XXX.XXX/qa/application connects to 192.XXX.XXX.XX2:7001/application
    http://192.XXX.XXX.XXX/stage/application connects to 192.XXX.XXX.XX2:7002/application
    http://192.XXX.XXX.XXX/application (production) connects to 192.XXX.XXX.XX2:7003/application
    I got that to work, when the URL is first entered into the browser, but the problem is when I try to move around in the qa and stage apps, i lose the "/qa" or "/stage". So it is always goes to the production app.
    httpd.conf -->
    <Location /qa/application>
    SetHandler weblogic-handler
    WebLogicCluster one:7001,two:7001
    PathTrim /qa
    </Location>
    I understand what is happening, when I trim the /qa it is then no longer present in the URL when passed back to the client. So the next movement in the application is sent to
    http://192.XXX.XXX.XXX/application (the production URL). I guess I am unsure how to fix this....any help????
    Thanks...
    Nick

    Hello,
    From this it looks like you may be able to use PathPrepend to jimmy your URLs:
    PathPrepend : String that the plug-in prepends to the beginning of the original URL, after PathTrim is trimmed and before the request is forwarded to WebLogic Server.
    I would suggest it may be a good idea to have a seperate webserver for your production domain. In most places I have worked in every platform is configuered with its own resources e.g staging server has its own webserver and db. This affords the people that use those envrionments greater isolation.

  • 为什么我写的消息驱动bean监听不到jms客户端发送的消息

    客户端发送了一条文本消息,topic主题中已经收到该信息,但是消息驱动bean没收到。onMessage()方法的代码如下:
    public void onMessage(Message msg)
    try {
    System.out.println("InvokingMDB onMessage() now.");
    System.out.println("MessageObject is: " + msg);
    System.out.println("Textmessage is: " + ((TextMessage)msg).getText());
    System.out.println();
    catch (JMSException e) {
    System.out.println("Whoops!A JMSException occurred: " + e);
    e.printStackTrace();
    这是我的weblogic-ejb-jar.xml文件的内容:
    <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE weblogic-ejb-jar PUBLIC '-//BEA Systems, Inc.//DTD WebLogic 7.0.0 EJB//EN' 'http://www.bea.com/servers/wls700/dtd/weblogic-ejb-jar.dtd'>
    <weblogic-ejb-jar>
    <weblogic-enterprise-bean>
    <ejb-name>MessageTopic</ejb-name>
    <message-driven-descriptor>
    <pool>
    <max-beans-in-free-pool>15</max-beans-in-free-pool>
    <initial-beans-in-free-pool>1</initial-beans-in-free-pool>
    </pool>
    <destination-jndi-name>JMSTopic</destination-jndi-name>
    <connection-factory-jndi-name>JMSConnectionFactory</connection-factory-jndi-name>
    </message-driven-descriptor>
    </weblogic-enterprise-bean>
    </weblogic-ejb-jar>
    这是ejb-jar.xml中的定义的一部分:
    <message-driven>
    <display-name>MessageTopic</display-name>
    <ejb-name>MessageTopic</ejb-name>
    <ejb-class>demo.message.MessageTopicBean</ejb-class>
    <transaction-type>Container</transaction-type>
    <message-driven-destination>
    <destination-type>javax.jms.Topic</destination-type>
    <subscription-durability>Durable</subscription-durability>
    </message-driven-destination>
    </message-driven>
    如下是我在weblogic console下监视活动消息驱动bean 的信息:
    EJBName:MessageTopic
    Idle Beans Count:1
    Beans In Use Count:0
    Waiter Total Count:0
    Timeout Total Count:0
    JMSConnection Alive: false);
    System.out.println("MessageObject is: " + msg);

    去掉这个试试:
    <connection-factory-jndi-name>JMSConnectionFactory</connection-factory-jndi-name>
    </message-driven-descriptor>

  • 消息驱动bean问题,请教

    上载的消息驱动bean的监视状态如下:
    EJBName     Pool Idle Beans Count     Pool Beans In Use Count     Pool Waiter Total Count     Pool Timeout Total Count     JMSConnection Alive
    NewCustomerReceiverBean     3     0     0     0     false
    请教一下Bea工程师,是不是90天使用版的消息驱动Bean,有问题??
    JMSConnection Alive 总是处于false的???
    我的配置如下:
    ejb-jar.xml部署描述:
    <message-driven>
    <display-name>NewCustomerReceiverBean</display-name>
    <ejb-name>NewCustomerReceiverBean</ejb-name>
    <ejb-class>testweb.NewCustomerReceiverBean</ejb-class>
    <transaction-type>Container</transaction-type>
    <message-driven-destination>
    <destination-type>javax.jms.Queue</destination-type>
    </message-driven-destination>
    </message-driven>
    weblogic-ejb-jar.xml 部署描述:
    <weblogic-enterprise-bean>
    <ejb-name>NewCustomerReceiverBean</ejb-name>
    <message-driven-descriptor>
    <pool>
    <max-beans-in-free-pool>10</max-beans-in-free-pool>
    <initial-beans-in-free-pool>3</initial-beans-in-free-pool>
    </pool>
    <destination-jndi-name>JMSQueueJNDI</destination-jndi-name>目的JNDI名字 <connection-factory-jndi-name>JMSConnectionFactory</connection-factory-jndi-name>连接工厂JNDI名字
    </message-driven-descriptor>
    </weblogic-enterprise-bean>
    config。Xml配置文件:
    <JMSConnectionFactory JNDIName="JMSConnectionFactory"
    Name="MyJMS Connection Factory" Targets="myserver"/>这里是连接工厂JNDI配置
    <JMSFileStore Directory="c:\jms_store" Name="MyJMSFile Store"/>
    <JMSServer Name="MyJMSServer" Store="MyJMSFile Store" Targets="myserver">
    <JMSQueue JNDIName="JMSQueueJNDI" Name="MyJMSQueue"/>这里是目的JNDI配置
    <JMSTopic JNDIName="JMSTopicJNDI"
    MulticastAddress="237.124.35.35" Name="MyJMSTopic"/>
    </JMSServer>
    此文被shufei在2003/07/18 13:16:30修改!

    不好意思,再声明一下,
    我单独做的测试配置的 JMS连接工厂和目的,能正常作为中间层运转。
    还有消息驱动bean的程序和测试程序如下:
    public class NewCustomerReceiverBean implements MessageDrivenBean, MessageListener {
    MessageDrivenContext messageDrivenContext;
    public void ejbCreate() throws CreateException {
    /**@todo Complete this method*/
    public void ejbRemove() {
    /**@todo Complete this method*/
    public void onMessage(Message msg) {
    /**@todo Complete this method*/
    if(msg instanceof MapMessage){
    try{
    MapMessage m = (MapMessage) msg;
    int id = m.getInt("customerId");
    String company=m.getString("companyName");
    String address=m.getString("address");
    System.out.println("生成:"+id+","+company+","+address+" 成功。。。。" );
    }catch(JMSException ex){
    System.out.println(" ++++++++++"+ex);
    }catch(Exception ex){
    System.out.println(" ++++++++++"+ex);
    messageDrivenContext.setRollbackOnly();
    public void setMessageDrivenContext(MessageDrivenContext messageDrivenContext) {
    this.messageDrivenContext = messageDrivenContext;
    System.out.println(" 设置 context成功:");//这一步也总能服务器端的启动dos窗口打//印出来.
    客户程序如下:
    public static void main(String[] args){
    MessageClient client=new MessageClient();
    if(client.SendMessage(100))
    System.out.println("发送成功");
    public boolean SendMessage(int i) {
    try {
    Context ctx = null;
    Hashtable ht = new Hashtable();
    QueueConnectionFactory tConnectionFactory = null;
    QueueConnection tConnection = null;
    QueueSession tSession = null;
    javax.jms.QueueSender tPublisher = null;
    Queue t = null;
    Hashtable ht=new Hashtable();
    ht.put(Context.INITIAL_CONTEXT_FACTORY,
    "weblogic.jndi.WLInitialContextFactory");
    ht.put(Context.PROVIDER_URL, "t3://localhost:7001");
    ctx = new InitialContext(ht);
    tConnectionFactory = (QueueConnectionFactory) ctx.lookup(
    "JMSConnectionFactory");
    tConnection = tConnectionFactory.createQueueConnection();
    tSession = tConnection.createQueueSession(false,
    javax.jms.QueueSession.
    AUTO_ACKNOWLEDGE);
    t = (Queue) ctx.lookup("JMSQueueJNDI");
    tPublisher = tSession.createSender(t);
    MapMessage mm=(MapMessage)tSession.createMapMessage();
    mm.setInt("customerId",i);
    mm.setString("companyName","电脑公司");
    mm.setString("address","公司地址");
    tPublisher.send(mm);// 这里发送消息
    System.out.println("消息放松完成............");
    try {
    tPublisher.close();
    tSession.close();
    tConnection.close();
    catch (Exception ex) {
    ex.printStackTrace();
    return false;
    return true;
    catch (Exception ex) {
    ex.printStackTrace();
    return false; }
    return false;
    return true;
    catch (Exception ex) {
    ex.printStackTrace();
    return false; }

  • Clustering Configuration with Primary & Secondary Domain Controllers

    Hello.
    I am trying to configure Failover Clustering on my Server 2012 computers.
    I have a primary domain, as well as a secondary domain.
    We will call them dc1.domain.com and dc2.domain.com.
    I have Failover Clustering Manager installed on both servers.
    Upon adding them both to the Create A Cluster Wizard, I receive the following error message on my report.
    (My account is fairly new, so it will not let me attach an image, but I assure you, it is safe)
    s14.postimg.org/lssjm2vu9/Screenshot_1.png

    More that trying to avoid clustering domain controllers, you simply cannot do it.  Active Directory has high availability built into it.  It is known as multimaster, meaning there is no primary and secondary domain controllers.  All are 'masters',
    meaning you can make changes on any domain controller and the change will be replicated to the other DCs.
    If you only have two physical servers and you want to cluster them, you will first need to install the Hyper-V role on the servers (it is not recommended to install both Hyper-V and Domain Controller on the same box, so we will get this fixed).  Once
    you have Hyper-V installed, build a VM on each server, join them to the domain, and promote them to domain controllers.  On one of the VMs, seize the FSMO roles from the FSMO master.  Then demote the physical hosts from being domain controllers. 
    You can now form a cluster of the two physical servers.
    . : | : . : | : . tim

  • WSS security and clustering  in SOA Suite 11g

    We are calling one composite from another as a reference. Both are on the same clustered domain.
    We are using AIA WSDLs so there is a default WSS username password token as policy.
    While on the single server domain, we do not need to pass the credentials since request was going on the same Weblogic server and it was running fine.
    But when we moved to the clustered domain, we changed the endpoints in composites to an external hardware load balancer and now it needs the sercurity credentials because the request is coming via the load balancer running on the different machine.
    I have two queries:
    1. Is there a way we can skip external load balancer while calling composites within the same clustered domain and still be able to route the requests to all managed servers instead of only one? (may be there is a way we can provide multuple URLs in the composite somehow or any other setting on cluster which would enable us to send all the requests to a common hostname which will route it to multiple managed servers in round robin)
    2. If above is not possible then we will have to use the external load balancer, in which case I need to set username password tokens while calling different composites. I need help in configuring this. It would be nice if anyone can provide me a link to a sample may be.
    Thanks

    In 11g, Oracle WSM Agent has been integrated into Oracle WebLogic Server. Please refer below link for more details -
    http://docs.oracle.com/cd/E15523_01/web.1111/b32511/intro.htm
    Regards,
    Anuj

Maybe you are looking for

  • Unable to drop queue table

    Hi, I have the streams admin user as "stradmin" and i have a queue table called "STREAMS_CAPTURE_QT" I am not able to drop the streams user because i am not able to drop the queue table. I tried the following..... begin DBMS_AQADM.DROP_QUEUE_TABLE( q

  • Multiple Monitor Video

    We have a media lab with 15 mac G5 towers all linked together by a server. Is it possible to play one video that can span all of the screens. Basically creating a video that will play on one monitor then move to another. Is there a program or another

  • Webcam on skype.

    Hello. Every time i try to turn my camera on - skype call fails. I can talk free while it's off. But as soon as i turn it on, some weird Internet connection problems appear. No matte what i do, nothing changes. I tried to reinstall skype, i tested my

  • Howto Force Garbage Collection manually in Oracle Application Server

    Hi, I have a Oracle SOA suite installed on Oracle 10g Application Server. The heap memory for the SOA oc4j container is 2G with a permgen space of 256M. But it looks like there is some memory leak somewhere and the Heap area is getting filled frequen

  • Change the attribute kind programatically

    Hi All, I am using ADF BC, Jdeveloper Studio Edition Version 11.1.1.6.0, Oracle 10g database. I have 2 databases, and the same application should support both of them. in the first database, one table has an extra column, whereas the second one does