JMS Success!!!!!

Hi there everyone:
I've written a simple pub/sub chat type chatting program using jms.
I have a couple of questions. I'm kind of a beginner so the answer may be real simple but I can't find anything that directly mentions these issues in the jms tutorial.
1. How can I configure the program so that authentication/Login is not required when the application client starts?
2. How do I create a self extracting installer for the application client? In the event that the user doesn't have j2ee or j2se I don't want them to have to install them before running the client. Is there a java api available for this purpose?
If any body knows the answers to these questions there's a six-pack of lowenbrau and a dozen krispy-kreme doughnuts waiting for you :)
Thanks in advance,
Justin Dismore

Thank you for the info.
I'd like to clarify my problem a little bit, if you all don't mind.
when my application client starts up the app its self does not first appear.
a login dialog box appears and expects to be given the password and user name that I supplied when deploying the app client using j2ee deploytool.
when adding the app client to the webapp there is a screen in deploytool where you supply the coded name of the Connection Factory and the jndi name as well. that screen also wants me to supply a username and password. the jms tutorial says to use "j2ee" as the username and password.
I don't want that login box to appear when the app client is started, I just want the app-client its self to appear.
thanks for being patient with such a rookie!!!
Justin Dismore

Similar Messages

  • Distribute JMS Queues and ConnectionFactories

    Hi,
              Iam using Queues with filestore as persistence type. The Queues ,Conextion Factories are configured on Server A and Server B . Both are on different IP's. The MDB's are deployed on both the servers.
              When a message is send from Server A to Server B the MDB listening on server B is not pickingup that message.
              I configured the queues as normal queues. Is there any attribute needs to set for the Queues or connectionfactories to share the session between servers. I have the same JNDI names for the Queues and ConnectionFactories.
              Highly appriciate if anyone can tell me the solution.
              Regards
              Manikyala
              

    Hi,
              I have lots of questions:
              Where is sent message going? Can you check statistics to
              confirm that the message was successfully sent to the
              desired queue?
              Is MDB B may not be deploying and then connecting to JMS
              successfully? (A successful deployment doesn't mean
              that the MDB is connected.) Check your server logs for
              Warning/Error messages.
              Are you using the distributed destination feature?
              Are the two servers in the same cluster?
              Did you make sure that:
              All JMS servers, WL servers, and WL JMS stores
              are named differently?
              Tom
              Manikyala wrote:
              > Hi,
              >
              > Iam using Queues with filestore as persistence type. The Queues ,Conextion Factories are configured on Server A and Server B . Both are on different IP's. The MDB's are deployed on both the servers.
              >
              > When a message is send from Server A to Server B the MDB listening on server B is not pickingup that message.
              >
              > I configured the queues as normal queues. Is there any attribute needs to set for the Queues or connectionfactories to share the session between servers. I have the same JNDI names for the Queues and ConnectionFactories.
              >
              > Highly appriciate if anyone can tell me the solution.
              >
              > Regards
              >
              > Manikyala
              

  • JMS Listner: Test Configuration Successful but not listening the messages

    Hi,
    I have configured the JMS Listner adapter in IDM 7.0 with Sun MQ 3.5.
    My test configuration is susscessful. I have some messages on Sun MQ. I have one wotkflow associated with this adapter. I have mapped it via process rule of Edit Sync Policy. Now I want to read the messages from MQ and want to retrive in my workflow. But when I starts the scynchronization nothing comes to my workflow. The log is showing as
    2007-08-16T19:05:38.354+0530: SARunner: initialized adapter
    2007-08-16T19:05:38.404+0530: Initializing JMS Listener adapter.
    2007-08-16T19:05:38.414+0530: Setting up JMS: local_transaction:true ackMode:1
    2007-08-16T19:05:38.414+0530: Setting up JMS: user:admin password:<secret length=5/>
    2007-08-16T19:05:38.414+0530: Setting up JMS: destinationType=QUEUE connFactoryName=MyQueueConnectionFactory destinationName=MyQueue messageSelector=null
    2007-08-16T19:05:38.424+0530: Connection factory JNDI lookup returned an object of type com.sun.messaging.QueueConnectionFactory
    2007-08-16T19:05:38.504+0530: JMS connection and consumer successfully created.
    2007-08-16T19:05:38.514+0530: Connection JMS Info
    PROVIDER NAME = Sun Java(tm) System Message Queue
    PROVIDER VERSION = 3.5
    PROVIDER MAJOR = 3
    PROVIDER MINOR = 6
    JMS VERSION = 1.1
    JMS MAJOR = 1
    JMS MINOR = 1
    CLIENT_ID = null
    2007-08-16T19:05:38.524+0530: Done initializing JMS Listener adapter.
    2007-08-16T19:05:38.534+0530: SARunner: loop 0
    2007-08-16T19:05:38.955+0530: Started, paused until Thu Aug 16 19:05:38 GMT+05:30 2007
    2007-08-16T19:05:44.123+0530: Pause completed
    2007-08-16T19:05:44.333+0530: Polling
    2007-08-16T19:05:45.334+0530: Poll processed 0 messages.
    2007-08-16T19:05:45.334+0530: Poll complete.
    I am new with this adapter. Please anybody tell me what should I have to configure so that I would be able to read the messages from my JMS Listner Active Sync adapter?
    Thanks in Advance

    So, in order to get the message you have to map it. That is done be specifying the "Message Mapping", one of the Resource Parameters for JMS Listener. This can be done by specifying a rule that returns a <map> with the attribute. This would be, in my opinion, the preferred approach for text messages. For Map massages, the rule approach can't be used unless you use the jms java libraries, getString etc.
    You can also implement the com.waveset.adapter.jms.JmsMessageMapper if java is your cup of tea, and put that in the message mapping text box. Password synch uses a java class to do the mapping.
    To map the attribute called accId on the right side, you would use something like this:
    <Rule name='JMS Message Mapper Rule'>
        <block>
            <map>
                <s>accId</s>
                <ref>message</ref>
            </map>
        </block>The Message Mapping text box would in this case look like this:
    "rule:JMS Message Mapper Rule"
    The <ref>message</ref> part contains the JMS text message. In this case the message consist of only one word. In a real-life situation, you would send a bunch of information, perhaps using split to separate the data.

  • Anyone successfully deployed BPEL + JMS Adapter (for MQ) to WebSphere?

    Anyone successfully deployed BPEL Process Manager + JMS Adapter (for MQ) to WebSphere (i.e not OAS/OC4J)?
    If you have - I would love to see a valid example of the ra.xml and oc4j-ra.xml files in your jca/JmsAdapter.rar file - to see how you configured access for the JMS Adapter to your remote MQ queues.
    Thank you
    Dennis

    Hi Garima,
    Please check the following:
    1. Add dhbcore.jar also to aii_af_jmsproviderlib.sda and deploy it.
    2. Check the existence of your JMS drivers.
    3. Check the following link and Install the drivers as the way it is mentioned in the guide 'How To Install And Configure External Drivers For JDBC & JMS'
    https://websmp204.sap-ag.de/~form/sapnet?_SHORTKEY=01200252310000071155&_SCENARIO=01100035870000000202
    There are 4 files which needs to be added. http://help.sap.com/saphelp_nw04/helpdata/en/cd/d85a9d6fab7d4dbb7ae421f710626c/frameset.htm
    Any of the above solutions should help you solve the problem.
    Regards,
    Abhy

  • Lookup JMS resource from server level failed, but other level will success

    I have a jms resource in websphere the full jndi is
    cell/nodes/sampleNode/servers/sampleServer/jms/foundation/SimpleQueue.TCFIf I use
    Context jndiContext = (Context)jndiInitialContext.lookup("cell/nodes/sampleNode/servers/sampleServer/jms/foundation/SimpleQueue.TCF");No problem
    but if use
    Context jndiContext = (Context)jndiInitialContext.lookup("cell/nodes/sampleNode/servers/sampleServer");
    (TopicConnectionFactory)jndiContext.lookup("jms/foundation/SimpleQueue.TCF");This will fail with exception
    0000000a  W UOW=3-fc00fc-21429626:localhost source=com.ibm.ws.naming.util.Helpers org=IBM prod=WebSphere component=Application Server thread=[P=500142:O=0:CT]
              NMSV0610I: A NamingException is being thrown from a javax.naming.Context implementation. Details follow:
    Context implementation: com.ibm.ws.naming.jndicos.CNContextImpl
    Context method: lookupExt
    Target name: jms/foundation/SimpleQueue.TCF
    Other data: ""
    Exception stack trace: javax.naming.NamingException: Error during resolve [Root exception is org.omg.CORBA.INTERNAL: initial and forwarded IOR inaccessible  vmcid: IBM  minor code: 58C  completed: No]
            at com.ibm.ws.naming.jndicos.CNContextImpl.doLookup(CNContextImpl.java:1939)
            at com.ibm.ws.naming.jndicos.CNContextImpl.doLookup(CNContextImpl.java:1862)
            at com.ibm.ws.naming.jndicos.CNContextImpl.lookupExt(CNContextImpl.java:1552)
            at com.ibm.ws.naming.jndicos.CNContextImpl.lookup(CNContextImpl.java:1354)
            at Main.main(Main.java:98)
    Caused by: org.omg.CORBA.INTERNAL: initial and forwarded IOR inaccessible  vmcid: IBM  minor code: 58C  completed: No
            at com.ibm.rmi.corba.ClientDelegate.createRequest(ClientDelegate.java:1213)
            at com.ibm.CORBA.iiop.ClientDelegate.createRequest(ClientDelegate.java:1320)
            at com.ibm.rmi.corba.ClientDelegate.createRequest(ClientDelegate.java:1109)Even I change the lookup level to other like
    Context jndiContext = (Context)jndiInitialContext.lookup("cell/nodes/sampleNode/servers");
    (TopicConnectionFactory)jndiContext.lookup("sampleServer/jms/foundation/SimpleQueue.TCF");It will success, only from server level, exception happened.
    Any idea?
    Thank you.

    I haven't tried this before, but I think you need to tell Apache to tunnel t3 and/or iiop explicitly in the config:
    http://e-docs.bea.com/wls/docs103/plugins/apache.html#wp124662
    Which client jar are you using? The thin client or the wlfullclient.jar/weblogic.jar?
    If you read this section of the JMS thin client docs, it discusses how thin client t3 urls are transparently switched to iiop and http urls use iiop tunneling:
    http://e-docs.bea.com/wls/docs103/client/jms_thin_client.html#wp1026979

  • Problem to send a message with JMS

    Hi
    I'm doing some tests with the api JMS to know how works. I have got some problems. I have been looking for some information but i don't find so much. I have got too doubts.
    I am usinng Netbeans 5.5 with Sun Java System Application Server Platform Edition 9.0_01 (build b14).
    I am trying to do it with ejb. Because in the future the application can have got so many connection in the same time.
    The server shows me the next errors.
    Starting Sun Java System Application Server Platform Edition 9.0_01 (build b14) ...
    CORE5098: AS Socket Service Initialization has been completed.
    CORE5076: Using [Java HotSpot(TM) Client VM, Version 1.6.0_03] from [Sun Microsystems Inc.]
    SEC1002: Security Manager is OFF.
    ADM0001:MBeanServer initialized successfully
    SEC1143: Loading policy provider com.sun.enterprise.security.provider.PolicyWrapper.
    sgmt.service_initialized
    DPL5400:Exception occurred : error in opening zip file.
    ADM1079: Initialization of AMX MBeans successful
    ADM1504: Here is the JMXServiceURL for the Standard JMXConnectorServer: [service:jmx:rmi:///jndi/rmi://t1:8686/jmxrmi].  This is where the remote administrative clients should connect using the standard JMX connectors
    ADM1506: Status of Standard JMX Connector: Active = [true]
    JTS5014: Recoverable JTS instance, serverId = [3700]
    About to load the system app: MEjbApp
    LDR5010: All ejb(s) of [MEjbApp] loaded successfully!
    About to load the system app: __ejb_container_timer_app
    EJB5109:EJB Timer Service started successfully for datasource [jdbc/__TimerPool]
    LDR5010: All ejb(s) of [__ejb_container_timer_app] loaded successfully!
    NAM0008 : Invalid Destination: jndi/Topic for java:comp/env/jms/Topic
    EJB5090: Exception in creating EJB container [javax.naming.NamingException [Root exception is javax.naming.NameNotFoundException]]
    appId=Chat-ejb moduleName=Chat-ejb ejbName=publicarBean
    LDR5004: UnExpected error occured while creating ejb container
    javax.naming.NamingException [Root exception is javax.naming.NameNotFoundException]
            at com.sun.enterprise.naming.NamingManagerImpl.bindObjects(NamingManagerImpl.java:485)
            at com.sun.ejb.containers.BaseContainer.setupEnvironment(BaseContainer.java:2628)
            at com.sun.ejb.containers.BaseContainer.<init>(BaseContainer.java:629)
            at com.sun.ejb.containers.StatelessSessionContainer.<init>(StatelessSessionContainer.java:163)
            at com.sun.ejb.containers.ContainerFactoryImpl.createContainer(ContainerFactoryImpl.java:515)
            at com.sun.enterprise.server.AbstractLoader.loadEjbs(AbstractLoader.java:490)
            at com.sun.enterprise.server.EJBModuleLoader.load(EJBModuleLoader.java:158)
            at com.sun.enterprise.server.AbstractManager.load(AbstractManager.java:206)
            at com.sun.enterprise.server.ApplicationLifecycle.onStartup(ApplicationLifecycle.java:198)
            at com.sun.enterprise.server.ApplicationServer.onStartup(ApplicationServer.java:326)
            at com.sun.enterprise.server.ondemand.OnDemandServer.onStartup(OnDemandServer.java:112)
            at com.sun.enterprise.server.PEMain.run(PEMain.java:326)
            at com.sun.enterprise.server.PEMain.main(PEMain.java:260)
            at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
            at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
            at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
            at java.lang.reflect.Method.invoke(Method.java:597)
            at com.sun.enterprise.server.PELaunch.main(PELaunch.java:272)
    Caused by: javax.naming.NameNotFoundException
            at com.sun.enterprise.naming.TransientContext.resolveContext(TransientContext.java:255)
            at com.sun.enterprise.naming.TransientContext.lookup(TransientContext.java:178)
            at com.sun.enterprise.naming.SerialContextProviderImpl.lookup(SerialContextProviderImpl.java:61)
            at com.sun.enterprise.naming.LocalSerialContextProviderImpl.lookup(LocalSerialContextProviderImpl.java:98)
            at com.sun.enterprise.naming.SerialContext.lookup(SerialContext.java:309)
            at javax.naming.InitialContext.lookup(InitialContext.java:392)
            at com.sun.enterprise.naming.NamingManagerImpl.bindObjects(NamingManagerImpl.java:469)
            ... 17 more
    CORE5021: Application NOT loaded: [Chat-ejb]
    WEB0302: Starting Sun-Java-System/Application-Server.
    WEB0100: Loading web module [__default-admingui] in virtual server [__asadmin] at [/]
    WEB0100: Loading web module [adminapp] in virtual server [__asadmin] at [/web1]
    WEB0100: Loading web module [admingui] in virtual server [__asadmin] at [/asadmin]
    WEB0100: Loading web module [amserver] in virtual server [server] at [/amserver]
    Initializing Sun's JavaServer Faces implementation (1.2_02-b03-FCS) for context ''
    Completed initializing Sun's JavaServer Faces implementation (1.2_02-b03-FCS) for context ''
    Initializing Sun's JavaServer Faces implementation (1.2_02-b03-FCS) for context '/asadmin'
    Completed initializing Sun's JavaServer Faces implementation (1.2_02-b03-FCS) for context '/asadmin'
    WEB0712: Starting Sun-Java-System/Application-Server HTTP/1.1 on 8080
    WEB0712: Starting Sun-Java-System/Application-Server HTTP/1.1 on 8181
    WEB0712: Starting Sun-Java-System/Application-Server HTTP/1.1 on 4848
    About to load the system app: __JWSappclients
    WEB0100: Loading web module [__JWSappclients:sys.war] in virtual server [server] at [/__JWSappclients]
    Using MQ RA for Broker lifecycle control
    JMS Service Connection URL is :mq://t1:7676/
    MQJMSRA_RA1101: SJSMQ JMS Resource Adapter starting...
    EB-start:brokerProps={imq.instancename=imqbroker, imq.jmx.rmiregistry.port=8686, BrokerArgs=-port 7676 -name imqbroker -imqhome D:\Sun\AppServer\imq\bin\.. -varhome D:/sun/AppServer/domains/domain1\imq -useRmiRegistry -rmiRegistryPort 8686, imq.jmx.rmiregistry.use=true, imq.portmapper.port=7676}
    [07/nov/2007:18:35:03 CET]
    ================================================================================
    Sun Java(tm) System Message Queue 4.0
    Sun Microsystems, Inc.
    Version:  4.0  (Build 27-a)
    Compile:  Thu 03/02/2006
    Copyright (c) 2006 Sun Microsystems, Inc.  All rights reserved.
    SUN PROPRIETARY/CONFIDENTIAL.  Use is subject to license terms.
    This product includes code licensed from RSA Data Security.
    ================================================================================
    Java Runtime: 1.6.0_03 Sun Microsystems Inc. D:\sun\Java\jdk1.6.0_03\jre
    [07/nov/2007:18:35:03 CET]    IMQ_HOME=D:\sun\AppServer\imq
    [07/nov/2007:18:35:03 CET] IMQ_VARHOME=D:\sun\AppServer\domains\domain1\imq
    [07/nov/2007:18:35:03 CET] Windows XP 5.1 x86 t1 (1 cpu) pepepc
    [07/nov/2007:18:35:03 CET] Java Heap Size: max=506816k, current=46944k
    [07/nov/2007:18:35:03 CET] Arguments: -port 7676 -name imqbroker -imqhome D:\Sun\AppServer\imq\bin\.. -varhome D:/sun/AppServer/domains/domain1\imq -useRmiRegistry -rmiRegistryPort 8686
    [07/nov/2007:18:35:04 CET] [B1060]: Loading persistent data...
    [07/nov/2007:18:35:04 CET] Using built-in file-based persistent store: D:\sun\AppServer\domains\domain1\imq\instances\imqbroker\
    [07/nov/2007:18:35:04 CET] [B1189]: Cluster Service feature is not available
    [07/nov/2007:18:35:04 CET] [B1039]: Broker "imqbroker@t1:7676" ready.
    MQJMSRA_EB1101: run:EMBEDDED broker started with code =0
    MQJMSRA_RA1101: SJSMQ JMS ResourceAdaapter configuration=
            raUID                               =null
            brokerType                          =EMBEDDED
            brokerInstanceName                  =imqbroker
            brokerBindAddress                   =null
            brokerPort                          =7676
            brokerHomeDir                       =D:\Sun\AppServer\imq\bin\..
            brokerVarDir                        =D:/sun/AppServer/domains/domain1\imq
            brokerJavaDir                       =D:/sun/Java/jdk1.6.0_03
            brokerArgs                          =null
            brokerStartTimeout                  =60000
            adminUsername                       =admin
            adminPassFile                       =E:\tempWin\asmq21980.tmp
            useJNDIRmiServiceURL                =true
            rmiRegistryPort                     =8686
            startRmiRegistry                    =false
            useSSLJMXConnector                  =true
            brokerEnableHA                      =false
            clusterId                           =null
            brokerId                            =null
            jmxServiceURL                       =null
            dbType                              =null
            dbProps                             ={}
            dsProps                             ={}
            ConnectionURL                       =
            UserName                            =guest
            ReconnectEnabled                    =true
            ReconnectInterval                   =5000
            ReconnectAttempts                   =3
            AddressListBehavior                 =RANDOM
            AddressListIterations               =3
            InAppClientContainer                =false
            InClusteredContainer                =false
            GroupName                           =null
    MQJMSRA_RA1101: start:SJSMQ JMSRA Connection Factory Config={imqOverrideJMSPriority=false, imqConsumerFlowLimit=1000, imqOverrideJMSExpiration=false, imqAddressListIterations=3, imqLoadMaxToServerSession=true, imqConnectionType=TCP, imqPingInterval=30, imqSetJMSXUserID=false, imqConfiguredClientID=, imqSSLProviderClassname=com.sun.net.ssl.internal.ssl.Provider, imqJMSDeliveryMode=PERSISTENT, imqConnectionFlowLimit=1000, imqConnectionURL=http://localhost/imq/tunnel, imqBrokerServiceName=, imqJMSPriority=4, imqBrokerHostName=localhost, imqJMSExpiration=0, imqAckOnProduce=, imqEnableSharedClientID=false, imqAckTimeout=0, imqAckOnAcknowledge=, imqConsumerFlowThreshold=50, imqDefaultPassword=guest, imqQueueBrowserMaxMessagesPerRetrieve=1000, imqDefaultUsername=guest, imqReconnectEnabled=false, imqConnectionFlowCount=100, imqAddressListBehavior=PRIORITY, imqReconnectAttempts=3, imqSetJMSXAppID=false, imqConnectionHandler=com.sun.messaging.jmq.jmsclient.protocol.tcp.TCPStreamHandler, imqSetJMSXRcvTimestamp=false, imqBrokerServicePort=0, imqDisableSetClientID=false, imqSetJMSXConsumerTXID=false, imqOverrideJMSDeliveryMode=false, imqBrokerHostPort=7676, imqQueueBrowserRetrieveTimeout=60000, imqSetJMSXProducerTXID=false, imqSSLIsHostTrusted=false, imqConnectionFlowLimitEnabled=false, imqReconnectInterval=5000, imqAddressList=localhost:7676, imqOverrideJMSHeadersToTemporaryDestinations=false}
    MQJMSRA_RA1101: SJSMQ JMSRA Started
    endpoint.determine.destinationtype
    NAM0008 : Invalid Destination: jndi/Topic for java:comp/env/jms/Topic
    EJB5090: Exception in creating EJB container [javax.naming.NamingException [Root exception is javax.naming.NameNotFoundException]]
    appId=Chat moduleName=Chat-ejb_jar ejbName=publicarBean
    LDR5004: UnExpected error occured while creating ejb container
    javax.naming.NamingException [Root exception is javax.naming.NameNotFoundException]
            at com.sun.enterprise.naming.NamingManagerImpl.bindObjects(NamingManagerImpl.java:485)
            at com.sun.ejb.containers.BaseContainer.setupEnvironment(BaseContainer.java:2628)
            at com.sun.ejb.containers.BaseContainer.<init>(BaseContainer.java:629)
            at com.sun.ejb.containers.StatelessSessionContainer.<init>(StatelessSessionContainer.java:163)
            at com.sun.ejb.containers.ContainerFactoryImpl.createContainer(ContainerFactoryImpl.java:515)
            at com.sun.enterprise.server.AbstractLoader.loadEjbs(AbstractLoader.java:490)
            at com.sun.enterprise.server.ApplicationLoader.load(ApplicationLoader.java:184)
            at com.sun.enterprise.server.TomcatApplicationLoader.load(TomcatApplicationLoader.java:113)
            at com.sun.enterprise.server.AbstractManager.load(AbstractManager.java:206)
            at com.sun.enterprise.server.ApplicationLifecycle.onStartup(ApplicationLifecycle.java:204)
            at com.sun.enterprise.server.ApplicationServer.onStartup(ApplicationServer.java:326)
            at com.sun.enterprise.server.ondemand.OnDemandServer.onStartup(OnDemandServer.java:112)
            at com.sun.enterprise.server.PEMain.run(PEMain.java:326)
            at com.sun.enterprise.server.PEMain.main(PEMain.java:260)
            at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
            at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
            at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
            at java.lang.reflect.Method.invoke(Method.java:597)
            at com.sun.enterprise.server.PELaunch.main(PELaunch.java:272)
    Caused by: javax.naming.NameNotFoundException
            at com.sun.enterprise.naming.TransientContext.resolveContext(TransientContext.java:255)
            at com.sun.enterprise.naming.TransientContext.lookup(TransientContext.java:178)
            at com.sun.enterprise.naming.SerialContextProviderImpl.lookup(SerialContextProviderImpl.java:61)
            at com.sun.enterprise.naming.LocalSerialContextProviderImpl.lookup(LocalSerialContextProviderImpl.java:98)
            at com.sun.enterprise.naming.SerialContext.lookup(SerialContext.java:309)
            at javax.naming.InitialContext.lookup(InitialContext.java:392)
            at com.sun.enterprise.naming.NamingManagerImpl.bindObjects(NamingManagerImpl.java:469)
            ... 18 more
    Registering ad hoc servlet: WebPathPath: context root = "/Chat", path = "/Chat-app-client'
    Java Web Start services started for application com.sun.enterprise.appclient.jws.ApplicationContentOrigin@aabc2d registration name=Chat
        [email protected]56b4 registration name=Chat, context root=/Chat/Chat-app-client, module name=
    , parent=Chat
    CORE5021: Application NOT loaded: [Chat]
    SMGT0007: Self Management Rules service is enabled
    Application server startup complete.
    JBISE6013: JavaEEServiceEngine : Java EE Service Engine started successfully.
    CORE5024: EJB module [Chat-ejb] unloaded successfully!
    DeployedItemRef postDeregistration failed. Load Balancer Monitoring MBeans might be lying around if this application is being load balanced
    BPEL service engine started
    ADM1064:The upload file at [E:\tempWin\s1astempdomain1server-162970426\Chat-ejb.jar] exists and will be overwritten.
    ADM1006:Uploading the file to:[E:\tempWin\s1astempdomain1server-162970426\Chat-ejb.jar]
    deployed with moduleid = Chat-ejb
    ADM1041:Sent the event to instance:[ModuleDeployEvent -- enable ejb/Chat-ejb]
    endpoint.determine.destinationtype
    NAM0008 : Invalid Destination: jndi/Topic for java:comp/env/jms/Topic
    EJB5090: Exception in creating EJB container [javax.naming.NamingException [Root exception is javax.naming.NameNotFoundException]]
    appId=Chat-ejb moduleName=D__sun_AppServer_domains_domain1_applications_j2ee-modules_Chat-ejb ejbName=publicarBean
    LDR5004: UnExpected error occured while creating ejb container
    javax.naming.NamingException [Root exception is javax.naming.NameNotFoundException]
            at com.sun.enterprise.naming.NamingManagerImpl.bindObjects(NamingManagerImpl.java:485)
            at com.sun.ejb.containers.BaseContainer.setupEnvironment(BaseContainer.java:2628)
            at com.sun.ejb.containers.BaseContainer.<init>(BaseContainer.java:629)
            at com.sun.ejb.containers.StatelessSessionContainer.<init>(StatelessSessionContainer.java:163)
            at com.sun.ejb.containers.ContainerFactoryImpl.createContainer(ContainerFactoryImpl.java:515)
            at com.sun.enterprise.server.AbstractLoader.loadEjbs(AbstractLoader.java:490)
            at com.sun.enterprise.server.EJBModuleLoader.load(EJBModuleLoader.java:158)
            at com.sun.enterprise.server.StandAloneEJBModulesManager.moduleDeployed(StandAloneEJBModulesManager.java:219)
            at com.sun.enterprise.server.StandAloneEJBModulesManager.moduleDeployed(StandAloneEJBModulesManager.java:174)
            at com.sun.enterprise.server.StandAloneEJBModulesManager.moduleDeployed(StandAloneEJBModulesManager.java:406)
            at com.sun.enterprise.server.StandAloneEJBModulesManager.moduleEnabled(StandAloneEJBModulesManager.java:500)
            at com.sun.enterprise.admin.event.AdminEventMulticaster.invokeModuleDeployEventListener(AdminEventMulticaster.java:960)
            at com.sun.enterprise.admin.event.AdminEventMulticaster.handleModuleDeployEvent(AdminEventMulticaster.java:941)
            at com.sun.enterprise.admin.event.AdminEventMulticaster.processEvent(AdminEventMulticaster.java:448)
            at com.sun.enterprise.admin.event.AdminEventMulticaster.multicastEvent(AdminEventMulticaster.java:160)
            at com.sun.enterprise.admin.server.core.AdminNotificationHelper.sendNotification(AdminNotificationHelper.java:128)
            at com.sun.enterprise.admin.server.core.ConfigInterceptor.postInvoke(ConfigInterceptor.java:109)
            at com.sun.enterprise.admin.util.proxy.ProxyClass.invoke(ProxyClass.java:97)
            at $Proxy1.invoke(Unknown Source)
            at com.sun.enterprise.admin.server.core.jmx.SunoneInterceptor.invoke(SunoneInterceptor.java:297)
            at com.sun.enterprise.admin.jmx.remote.server.callers.InvokeCaller.call(InvokeCaller.java:56)
            at com.sun.enterprise.admin.jmx.remote.server.MBeanServerRequestHandler.handle(MBeanServerRequestHandler.java:142)
            at com.sun.enterprise.admin.jmx.remote.server.servlet.RemoteJmxConnectorServlet.processRequest(RemoteJmxConnectorServlet.java:109)
            at com.sun.enterprise.admin.jmx.remote.server.servlet.RemoteJmxConnectorServlet.doPost(RemoteJmxConnectorServlet.java:180)
            at javax.servlet.http.HttpServlet.service(HttpServlet.java:727)
            at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
            at org.apache.catalina.core.ApplicationFilterChain.servletService(ApplicationFilterChain.java:397)
            at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:303)
            at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:184)
            at org.netbeans.modules.web.monitor.server.MonitorFilter.doFilter(MonitorFilter.java:174)
            at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:216)
            at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:184)
            at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:276)
            at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:566)
            at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:536)
            at org.apache.catalina.core.StandardContextValve.invokeInternal(StandardContextValve.java:240)
            at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:179)
            at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:566)
            at com.sun.enterprise.web.WebPipeline.invoke(WebPipeline.java:73)
            at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:182)
            at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:566)
            at com.sun.enterprise.web.VirtualServerPipeline.invoke(VirtualServerPipeline.java:120)
            at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:939)
            at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:137)
            at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:566)
            at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:536)
            at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:939)
            at org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:239)
            at com.sun.enterprise.web.connector.grizzly.ProcessorTask.invokeAdapter(ProcessorTask.java:667)
            at com.sun.enterprise.web.connector.grizzly.ProcessorTask.processNonBlocked(ProcessorTask.java:574)
            at com.sun.enterprise.web.connector.grizzly.ProcessorTask.process(ProcessorTask.java:844)
            at com.sun.enterprise.web.connector.grizzly.ReadTask.executeProcessorTask(ReadTask.java:287)
            at com.sun.enterprise.web.connector.grizzly.ReadTask.doTask(ReadTask.java:212)
            at com.sun.enterprise.web.connector.grizzly.TaskBase.run(TaskBase.java:252)
            at com.sun.enterprise.web.connector.grizzly.WorkerThread.run(WorkerThread.java:75)
    Caused by: javax.naming.NameNotFoundException
            at com.sun.enterprise.naming.TransientContext.resolveContext(TransientContext.java:255)
            at com.sun.enterprise.naming.TransientContext.lookup(TransientContext.java:178)
            at com.sun.enterprise.naming.SerialContextProviderImpl.lookup(SerialContextProviderImpl.java:61)
            at com.sun.enterprise.naming.LocalSerialContextProviderImpl.lookup(LocalSerialContextProviderImpl.java:98)
            at com.sun.enterprise.naming.SerialContext.lookup(SerialContext.java:309)
            at javax.naming.InitialContext.lookup(InitialContext.java:392)
            at com.sun.enterprise.naming.NamingManagerImpl.bindObjects(NamingManagerImpl.java:469)
            ... 54 more
    CORE5020: Error while loading ejb module
    {code}
    I know it is very large. I think the error it is in this line.
    {code}
    NAM0008 : Invalid Destination: jndi/Topic for java:comp/env/jms/Topic
    EJB5090: Exception in creating EJB container [javax.naming.NamingException [Root exception is javax.naming.NameNotFoundException]]
    {code}
    also I am going to put the code.
    file PublicarBean.java
    {code}
    package org.pepes;
    import com.sun.tools.ws.processor.model.java.JavaArrayType;
    import javax.annotation.Resource;
    import javax.ejb.SessionContext;
    import javax.ejb.Stateless;
    import javax.jms.ConnectionFactory;
    import javax.jms.QueueConnectionFactory;
    import javax.jms.Topic;
    import javax.naming.NamingException;
    * @author pepes
    @Stateless(mappedName="ejb/publicar")
    public class publicarBean implements org.pepes.publicarRemote {
        /** Creates a new instance of publicarBean */
        @Resource(name="jms/QueueConnectionFactory")
        private QueueConnectionFactory connectionFactory;
        @Resource(name="jms/Topic", mappedName="jndi/Topic")
        private Topic topic;
        private javax.naming.InitialContext ctx;
        public publicarBean() {
        public void creaMensaje() throws javax.naming.NamingException , javax.jms.JMSException {
            try {       
                javax.naming.InitialContext ctx = new javax.naming.InitialContext();
                this.connectionFactory = (javax.jms.QueueConnectionFactory)ctx.lookup("jms/QueueConnectionFactory");
                this.topic = (javax.jms.Topic)ctx.lookup("jms/Topic");
                javax.jms.Connection connection = this.connectionFactory.createConnection();
                javax.jms.TopicSession ts = (javax.jms.TopicSession)connection.createSession(false, javax.jms.Session.AUTO_ACKNOWLEDGE);
                javax.jms.TopicPublisher tp = ts.createPublisher(this.topic);
                javax.jms.TextMessage msg = ts.createTextMessage();
                for (int i = 0; i<3;i++) {
                    msg.setText("Prueba: " + i);
                    tp.publish(msg);
            catch (javax.jms.JMSException jmex) {
                throw jmex;
    {code}
    the file publicarRemote.java
    {code}
    package org.pepes;
    import javax.ejb.Remote;
    * This is the business interface for publicar enterprise bean.
    @Remote
    public interface publicarRemote {
         public void creaMensaje() throws javax.naming.NamingException , javax.jms.JMSException;
    {code}
    file mensaje.java
    {code}
    package org.pepes;
    import javax.annotation.Resource;
    import javax.ejb.ActivationConfigProperty;
    import javax.ejb.MessageDriven;
    import javax.ejb.MessageDrivenContext;
    import javax.jms.Message;
    import javax.jms.MessageListener;
    * Entity class Mensaje
    * @author pepes
    @MessageDriven(mappedName = "jms/Mensaje", activationConfig =  {
            @ActivationConfigProperty(propertyName = "acknowledgeMode", propertyValue = "Auto-acknowledge"),
            @ActivationConfigProperty(propertyName = "destinationType", propertyValue = "javax.jms.Queue")
    public class Mensaje implements MessageListener {
        /** Creates a new instance of Mensaje */
        @Resource
        private MessageDrivenContext mdc;
        public Mensaje() {
        public void onMessage(Message message) {
            javax.jms.TextMessage msg = null;
            try {
                if (message instanceof javax.jms.TextMessage) {
                    msg = (javax.jms.TextMessage) message;
                    System.out.println(msg.getText());
                } else {
                    System.out.println("Message of wrong type: "
                            + message.getClass().getName());
            } catch (javax.jms.JMSException e) {
                e.printStackTrace();
                mdc.setRollbackOnly();
            } catch (Throwable te) {
                te.printStackTrace();
    {code}
    the file prueba.jsp
    {code}
    <%@page contentType="text/html"%>
    <%@page pageEncoding="UTF-8"%>
    <%--
    The taglib directive below imports the JSTL library. If you uncomment it,
    you must also add the JSTL library to the project. The Add Library... action
    on Libraries node in Projects view can be used to add the JSTL 1.1 library.
    --%>
    <%--
    <%@taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
    --%>
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
       "http://www.w3.org/TR/html4/loose.dtd">
    <html>
        <head>
            <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
            <title>JSP Page</title>
        </head>
        <body>
        <h1>JSP Page</h1>
        <%--
        This example uses JSTL, uncomment the taglib directive above.
        To test, display the page like this: index.jsp?sayHello=true&name=Murphy
        --%>
        <%--
        <c:if test="${param.sayHello}">
            <!-- Let's welcome the user ${param.name} -->
            Hello ${param.name}!
        </c:if>
        --%>
        <%    
            try {
            javax.naming.InitialContext ctx = new javax.naming.InitialContext();
            org.pepes.publicarRemote publisher = (org.pepes.publicarRemote)ctx.lookup("ejb/publicar");
            if (publisher==null) {
                System.out.println("INFO: Es null");
            else {
                System.out.println("INFO: No es null");
            publisher.creaMensaje();
            } catch (javax.naming.NamingException ex) {
                System.out.println("ERROR naming: " + ex.getMessage());
            catch (javax.jms.JMSException jmex) {
                System.out.println("ERROR jms: " + jmex.getMessage());
            catch (java.lang.NullPointerException nullex) {
                System.out.println("ERROR null: " + nullex.getMessage());
    %>
        </body>
    </html>
    {code}
    I think the problem is because i don't put destination address. if it is so, the true where do I put this address?. if not where is the problem?
    I hope your help.
    Thanks you  in advanced.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    

    Hi,
    Did you create your destinations in your application server? It seems that the destinations such as topics and queues are not created. First you should create them and then start using them.
    For example, in here, it says that jndi/Topic is not valid. To check if the destinations are valid or not; you can do it either through the graphical user interface or the command line console.

  • Problem with EJB and JMS - Failed to obtain/create connection

    hello ejb and jms programmers,
    My problem is my topic MDB keep on retrieving the same message when there is a database connection failure. Maybe somebody could help me how to prevent to retrieve the same data?
    Given:
    - I purposedly turn off the pointbase database because im testing my error handling.
    - Im using SJSAS 8 as my application server.
    - My message Driven Bean of topic type.
    - Im using CMP for my entity bean
    Here is the scenario of whats happening - step by step:
    1. A separate application publishes a message to JMS queue server
    2. My MDB retrieves this message and do some processing then inserts a record (transaction history) in my database
    3. But my db is turned off or down
    4. My MDB sends a successful processing reply to the JMS queue server
    5. Then i noticed that my server.log keeps on growing so when i opened it, the record was not inserted and printed the stacktrace below "RAR5117 : Failed to obtain/create connection. Reason : javax.transaction.SystemException" (complete stacktrace below)
    6. I understand the cause of the stacktrace is because the DB is turned off. But what i dont understand is that my MDB keeps on reading the same message. Since my MDB is of topic type, isnt a topic MDB supposedly reads a message only once???
    So my questions are:
    1. how do i handle insert database error?
    2. how can i stop my MDB from processing the same message?
    3. any better suggestions?
    Thank you in advance :)
    leigh
    *** more complete stack trace ***
    [#|2005-01-09T15:35:57.097+0800|WARNING|sun-appserver-pe8.0.0_01|javax.enterprise.system.core.transaction|_ThreadID=17;|JTS5041: The resource manager is doing work outside a global transaction
    javax.transaction.xa.XAException
         at com.pointbase.xa.xaException.getXAException(Unknown Source)
         at com.pointbase.xa.xaConnectionResource.start(Unknown Source)
         at com.sun.gjc.spi.XAResourceImpl.start(XAResourceImpl.java:162)
    [#|2005-01-09T15:35:57.167+0800|SEVERE|sun-appserver-pe8.0.0_01|javax.enterprise.resource.resourceadapter|_ThreadID=17;|RAR5027:Unexpected exception in resource pooling
    javax.transaction.SystemException
         at com.sun.jts.jta.TransactionImpl.enlistResource(TransactionImpl.java:185)
         at com.sun.enterprise.distributedtx.J2EETransaction.enlistResource(J2EETransaction.java:360)
         at com.sun.enterprise.distributedtx.J2EETransactionManagerImpl.enlistResource(J2EETransactionManagerImpl.java:303)
         at com.sun.enterprise.distributedtx.J2EETransactionManagerOpt.enlistResource(J2EETransactionManagerOpt.java:115)
    [#|2005-01-09T15:35:57.177+0800|WARNING|sun-appserver-pe8.0.0_01|javax.enterprise.resource.resourceadapter|_ThreadID=17;|RAR5117 : Failed to obtain/create connection. Reason : javax.transaction.SystemException|#]
    [#|2005-01-09T15:35:57.227+0800|WARNING|sun-appserver-pe8.0.0_01|javax.enterprise.resource.resourceadapter|_ThreadID=17;|RAR5114 : Error allocating connection : [Error in allocating a connection. Cause: javax.transaction.SystemException]|#]
    [#|2005-01-09T15:35:57.237+0800|SEVERE|sun-appserver-pe8.0.0_01|javax.enterprise.system.container.ejb|_ThreadID=17;|EJB5071: Some remote or transactional roll back exception occurred
    com.sun.jdo.api.persistence.support.JDODataStoreException: JDO77006: SQL exception: state = null, error code = 0.
    NestedException: java.sql.SQLException: Error in allocating a connection. Cause: javax.transaction.SystemException
    FailedObjectArray: [[email protected]5ac]
         at com.sun.jdo.spi.persistence.support.sqlstore.impl.TransactionImpl.getConnectionInternal(TransactionImpl.java:1444)
         at com.sun.jdo.spi.persistence.support.sqlstore.impl.TransactionImpl.getConnection(TransactionImpl.java:1339)

    Hi annie,
    Wherever you are handling database transactions,
    you'd not be able to create a Connection if database
    is closed (I think you mentioned turning off the
    database) then at this condition, you should
    certainly throw a System level exception and stop all
    processing with some meaningful flow to indicate a
    failure (like display message on UI). Even
    network problems are handled by exceptions... so I
    don't see a reason why you didn't wrap it in the
    first place.
    Anyway, try handling specific exceptions rather than
    the general Exception... this will give you a better
    idea of what to do in case of an exception.Yes i know this. I am practicing this in my non-j2ee server applications. But the j2ee app im making, i just pass the db url in the descriptor and the app server automatically creates the connection for my app. So where would i put exception handling?
    2. how can i stop my MDB from processing the same
    message?Guaranteed delivery is not supposed to stop
    processing. It will continue to process the message
    after certain intervals till the message is
    delivered. You shouldn't deliver it at all, if you
    are able to detect that the database is off
    The problem here is that my MDB automatically retrieves the message from the JMS queue server. Im not the one retrieving the messages manually.
    My assumed behavior of topic MDB is once the a certain MDB retrieves a message it will not retrieve the same message anymore.
    thank you in advance.
    leigh

  • Problem with JMS in a Cluster

    In summary I am having a problem with my application when it is running on the server that does not contain the JMS.
              Setup:
              2 machines:- Server 1 with the Admin Server and a Managed Server with JMS and a Distributed Queue. Second machine (Server 2) with a managed server. The two managed servers are in a Cluster.
              The connection factory has xa enabled.
              The queue is a distributed queue, with one member queue - on server 1.
              Scenario 1 (works):
              Deploy my application on Server 1 only
              Scenario 2 (works):
              Deploy my application on Server 1 and Server 2
              When the application puts messages on the JMS queue, the messages are processed round robin by the MDB on both Server 1 and Server 2 - as expected.
              Scenario 3 - Does not work
              Deploy my application on Server 2 only
              The application successfully sends a message to the queue - I can see it in queue through the console.
              However the MDB never processes the message. On the queue, I can see 0 consumers.
              Essentially the MDB appears to deploy correctly from the server log but never appears as a consumer on the queue.
              I know the above information is very brief, however I can provide more configuration details and detailed logging if required.

    On a further look through the logs, I have found the following Warning message which may point to the reason why my MDB is not receiving messages from JMS:
              <25-Apr-2005 17:26:01 o'clock IST> <Warning> <EJB> <BEA-010220> <The jms destination 'AsyncMessageQueue' is a distributed destination and it has no physical destination(s) on the current weblogic server. As per distributed destination co-location rules, no pool was creted for the MDB 'AsyncMessage(Application: m3-j2ee_Weblogic21apr_2, EJBComponent: ejb_framework.jar)' on this weblogic server. Hence the MDB 'AsyncMessage(Application: m3-j2ee_Weblogic21apr_2, EJBComponent: ejb_framework.jar)' cannot receive any messages on this server.>
              I have created a Destination on the JMS Server ("Replicate JNDI Name In Cluster" is set), and I have created a Distributed Destination, which has as its member the Destination associated with the JMS Server.
              If the JMS is not on the same server as the deployed application, how do I get the MDB to connect to the physical destination?
              Do I always need a Physical Destination on the the same server as my deployed application? If so, how do I create a Physical Destination on the server that does not have the JMS?
              Any help appreciated.

  • Report and Alert don't executed in the error handler with a JMS proxy service

    Hi,
    I'm working with OSB 11.1.1.4.0 and I'm facing a problem with the error handler of my JMS proxy service.
    My error handler contains two main elements :
    - a Report action
    - an Alert with a JMS destination defined
    When the business service failed the message remain in the queue. It's the expected behavior.
    The problem is :
    - the report is missing
    - the alert is raised but missing in the JMS destination defined in the Alert setting.
    I've noticed if I add a Reply with Failure or Success, Report and Alert are successfully executed.
    Unfortunately the message don't remain in the JMS queue.
    What can I do in order to have my report/alert done and the JMS transaction rollback in order to keep the message in the queue ?
    I've already met this problem in the past with alsb v3 and my solution was to add Service Callout in the error handler in order to externalize these actions.
    This solution is not convenient and I hope another solution is possible.

    Inventorying workgroups can be difficult, especially when it comes to remote access and network security. Because workgroups are not centrally managed, some of the items discussed in this
    wiki article on preparing your workgroup environment may require you to visit each machine individually.
    For non-domain credentials, you do not use the <systemname>\<user> format, you simply enter the user name. Regarding how to enter the credentials, if you have an account that uses the same username and password on all machines and is an administrator
    on all of those machines, then you can enter that in the All computers credentials page of the wizard. You can also do this if they are different user names. However, if some machines have an account with the same user name, such as Administrator,
    but different passwords on each machine, you will need to use the Manually enter computer names discovery method, and then enter the information for each group or each machine.
    As you can tell, workgroup environments can quickly negate any benefit that the agentless inventory nature of MAP provides.
    Please remember to click "Mark as Answer" on the post that helps you, and to click
    "Unmark as Answer" if a marked post does not actually answer your question. Please
    VOTE as HELPFUL if the post helps you. This can be beneficial to other community members reading the thread.

  • Server boot takes a lot of time due to JMS persistence file store

    Hi,
    We're using WebLogic 9.2 on a windows machine.
    Recently, we enhanced our application to work with JMS.
    We're using 2 JMS servers on 2 different servers in a cluster, and working with distributed destinations.
    We're using file store as our persistence store.
    Lately, we found that server boot takes a lot of time due to actions which are performed on the file-store.
    Analyzing this problem, we saw that the file size is ~2GB.
    We understand that the file size does not shrink (unless manually compacted), and its size is matching the highest number ever of pending messages in the queues (like a high water-mark).
    We also turned store debug on, using weblogic.Debug.DebugStoreIOPhysical, and we saw a lot of recovery logs after the file-store is opened.
    We've checked and verified that our JMS transactions are completed successfully. We also verified that the number of pending and current messages is 0.
    We've stopped the server gracefully, verifying there are no pending messages.
    However, server boot repeatedly takes ~30 minutes due to heavy work done on the persistence store.
    Compacting or removing the file store eliminates the delay.
    However, we want to avoid manual operations every time we want to boot the server.
    Please share your ideas.
    Thanks,
    Itsik

    The only suggestions I have off the top of my head are:
    * Ensure (1) the host system has at least 2GB (file store size) of free physical memory in addition to the memory used by current processes, and (2) the host system is not rebooted between each WebLogic restart. If you make sure of these two items, then the operating system will implicitly cache the store's file contents in memory even between boots -- when WebLogic subsequently boots the file store, the O/S should serve the file contents up much more quickly.
    * Consider moving to a JDBC store. JDBC store runtime performance is lower, but since you have a typically only have a small amount of records to recover, boot performance should be higher in this case.
    * Not that it helps your particular case, but it happens that we have boot performance enhancements in process for a future release (hopefully a near future release).
    Tom

  • Does JMS support reliable messaging (store-and-forward) for app clients?

    I need to write an enterprise application client (launched with Java web start or packaged with a tool like Sun's package-appclient) that can send messages reliably from Linux to Windows. JMS seems like the obvious solution, so I deployed an EAR file with an MDB and an application client on a Windows machine (running SJSAS 9). I was able to download the client jar file onto Linux and send JMS messages successfully. However, if the Windows machine is not available, the Linux client immediately throws exceptions and fails. Are there any JMS providers that provide a store-and-forward mechanism for enterprise clients, so that if the remote server is not available immediately, messages are delivered later? (Note that the client can't be a servlet or other server-managed component.)
    I'd prefer an open-source solution, but this requirement has an extremely high priority for my customer, so I'll use a commercial product if necessary. And if there's something other than JMS that works, that would be fine. (In my case, the messages on the remote side ultimately go to a .NET service, so WS-ReliableMessaging would be ideal, but it looks WS-RM won't be integrated into .NET until Vista, and the current WS-RM implementation is a beta, etc., etc.)
    Thanks,
    Mike

    You could use Apache ActiveMQ
    http://incubator.apache.org/activemq/
    which supports embedded brokers inside each JVM which can be networked together in a store-forward mechanism so that each application keeps working and store-forwarding messages.
    http://incubator.apache.org/activemq/networks-of-brokers.html
    or you can use failover transport to handle automatic reconnection...
    http://incubator.apache.org/activemq/how-can-i-support-auto-reconnection.html
    If you need to communicate with some .Net you can use the NMS - the .Net Messaging API which has a client for ActiveMQ as well...
    http://incubator.apache.org/activemq/nms.html
    James
    http://logicblaze.com/
    Open Source SOA

  • Problem with transacted JMS connection factory and transaction timeouts

              We encountered an interesting problem using transacted JMS connection factories.
              An EJB starts a container managed transaction and tries to validate a credit card
              before creating some information to a database for the user, in case of success
              an SMS is sent to the user via the transacted JMS queue. If the credit card authentications
              duration is about the same as the transactions timeout (in this case the default
              30 seconds) sometimes the database inserts is committed but the JMS insert is
              rollbacked. How can this be?
              If the authorization duration is much longer than 30 seconds everything works
              fine (both database and JMS inserts rollbacked), the same is true if a rollback
              is insured by calling EJBContext.setRollbackOnly(). The problem thus occurs only
              if the duration is approximately the same as the transaction timeout, it appears
              that the database insert is not timeouted but the JMS insert is. How can this
              be if they are both participating in the same transaction.
              The JMSConnectionFactory used is a Connection factory with XA-enabled. The result
              is the same also with the default "javax.jms.QueueConnectionFactory" and if we
              configure our own factory with user transactions enabled.
              Any help appreciated!
              

    Tomas Granö wrote:
              > We encountered an interesting problem using transacted JMS connection factories.
              > An EJB starts a container managed transaction and tries to validate a credit card
              > before creating some information to a database for the user, in case of success
              > an SMS is sent to the user via the transacted JMS queue. If the credit card authentications
              > duration is about the same as the transactions timeout (in this case the default
              > 30 seconds) sometimes the database inserts is committed but the JMS insert is
              > rollbacked. How can this be?
              It should not be.
              >
              > If the authorization duration is much longer than 30 seconds everything works
              > fine (both database and JMS inserts rollbacked), the same is true if a rollback
              > is insured by calling EJBContext.setRollbackOnly(). The problem thus occurs only
              > if the duration is approximately the same as the transaction timeout, it appears
              > that the database insert is not timeouted but the JMS insert is. How can this
              > be if they are both participating in the same transaction.
              >
              > The JMSConnectionFactory used is a Connection factory with XA-enabled. The result
              > is the same also with the default "javax.jms.QueueConnectionFactory" and if we
              > configure our own factory with user transactions enabled.
              >
              > Any help appreciated!
              Make sure that your session is not "transacted". In other words,
              the first parameter to createSession() must be false. There is an
              unfortunate name re-use here. If a session is "transacted", it
              maintains an independent "inner transaction" independent of the
              outer transaction. From the above description, it seems unlikely
              that your application has this wrong, as you say that
              "setRollbackOnly" works - but please check anyway.
              Make sure that you are using a true XA capable driver and database
              (XA "emulation" may not suffice)
              Beyond the above, I do not see what can be going wrong. You
              may want to try posting to the transactions and jdbc newsgroups. Note
              that JMS is appears to be exhibiting the correct behavior, but the
              JDBC operation is not. The JDBC operation appears to have
              its timeout independent of the transaction monitor's timeout.
              Tom
              

  • Foreign JMS and XA

    Hi everybody,
              Is anybody successfully using remote IBM MQseries 5.3 server as
              Foreign JMS in WLS 8.1sp2?
              We're observing some strange behavior in this case. Here is our setup:
              WLS and IBM MQ server deployed on separate boxes.
              WLS version 8.1sp2 running on Windows 2000/Intel
              IBM MQ version 5.3 running on Solaris/SPARC
              We're using "WebSphere MQ classes for Java, version 5.303 - j5303-L030225"
              and "WebSphere MQ Extended Transactional Client Feature, version 5.300 -
              j5303-L030122"
              MQ files added in WLS POST_CLASSPATH variable in WLS starup script.
              Foreign JMS server configured in WLS via fscontext JNDI.
              MDB bean deployed with Transaction attribute "Required".
              Everything seems to work fine, if we're posting message to MQ queue MDB
              receives it and process successfully (just print message content to the
              console for now).
              Problem: In WLS console, under Server->Monitoring->JTA->Monitor inflight
              transactions we can constantly see one transaction enlisted for our MDB
              bean with following details:
              =====================================================
              Transaction ID: BEA1-00DFC5EB4B7B7F28EDB9
              Coordinator: mydomain+myserver
              Name: JMSMessagePoller.xxx.xxx.MyMessageProcessorMdb
              Status: Active
              Seconds Active: 17
              Resources:
              weblogic.ejb20.JMSConnectionPoller.xxx.xxx.MyMessageProcessorMdb=started
              Properties
              (key=value):
              weblogic.transaction.name=JMSMessagePoller.xxx.xxx.MyMessageProcessorMdb
              =====================================================
              This transaction seems to be Active for 30 seconds and then rolled back
              (no error messages on WLS console displayed).On JTA statistics page in
              WLS console "Total Rolled Back" counter keeps increneting with every
              rollback.
              Does anybody observerd similar problem? May be it's normal behaviour but
              I'm kind of worrying about those transactions and constant rollback. I'd
              appreciate any feedback.
              Sincerely,
              Dmitri Maximovich
              

    Hi Dmitri,
              The shutdown "suspend" failure has nothing to do with transactions
              or JMS. It looks like the failure is due to a
              java.util.ConcurrentModificationException during undeployment
              which indicates a bug in WL - something is not getting
              synchronized that should be.
              As for MQ, their new extended client supports remote XA, which I think
              is the reason for the product in the first place. Even so, I
              still recommend testing to make sure that its messages
              participate in transactions. (Actually, I recommend such testing
              for any transactional app, including those built on WL JMS.)
              Tom
              Dmitri Maximovich wrote:
              > Hi Tom,
              >
              > Thanks for info, that's a relief. Unfortunately there is no hints in WLS
              > documentation that it's normal, that's why we were worried about it.
              >
              > Now there is one more issue, which I believe is related. You see with
              > those 'in-flight' transactions graceful shutdown of WLS doesn't quite
              > work. There is suspicious exception thrown and after that WLS is still
              > running in some state but console is not available anymore. Please see
              > console messages attached (sorry for long post). at the time of shutdown
              > there is no messages in the queue(s) so as far as I can tell those
              > 'pending transactions' mentioned is those from foreign JMS wrappers.
              >
              > I'd appreciate any comments on that. We have case opened with BEA about
              > this but so far they cannot reproduce it in their lab. That's why I
              > start wondering if we're doing something wrong here, like using remote
              > MQ server for example, may be you not supposed to (I remember there was
              > an issue before with IBM MQ that XA support required binding mode, I was
              > kind of hope that it's not the case anymore)?
              >
              > <Mar 3, 2004 1:47:56 PM EST> <Notice> <WebLogicServer> <BEA-000365>
              > <Server state changed to SUSPENDING>
              > <Mar 3, 2004 1:47:56 PM EST> <Info> <Deployer> <BEA-149236> <Preparing
              > to suspend.>
              > <Mar 3, 2004 1:47:56 PM EST> <Info> <Deployer> <BEA-149237> <Ready to
              > suspend.>
              > <Mar 3, 2004 1:47:56 PM EST> <Info> <WebService> <BEA-220028> <Web
              > Service reliable agents are suspended.>
              > <Mar 3, 2004 1:47:56 PM EST> <Notice> <JTA> <BEA-110476> <The server has
              > detected pending transactions during graceful shutdown. The server will
              > wait for the pending transactions to complete before suspending the RMI
              > service. A force shutdown command can be issued to shutdown the server
              > immediately.>
              > <Mar 3, 2004 1:48:26 PM EST> <Info> <Management> <BEA-141080> <A request
              > has been received to force shut down of the server.>
              > <Mar 3, 2004 1:48:26 PM EST> <Alert> <WebLogicServer> <BEA-000228> <The
              > disabling of server logins has been requested by <WLS Kernel>>
              > <Mar 3, 2004 1:48:26 PM EST> <Alert> <WebLogicServer> <BEA-000229>
              > <Server logins have been disabled.>
              > <Mar 3, 2004 1:48:26 PM EST> <Info> <WebService> <BEA-220028> <Web
              > Service reliable agents are suspended.>
              > <Mar 3, 2004 1:48:26 PM EST> <Info> <EJB> <BEA-010084> <The
              > message-driven beans are being suspended. This may take a minute or two.>
              > <Mar 3, 2004 1:48:32 PM EST> <Info> <EJB> <BEA-010085> <The
              > message-driven beans have all been suspended.>
              > <Mar 3, 2004 1:48:32 PM EST> <Info> <EJB> <BEA-010084> <The
              > message-driven beans are being suspended. This may take a minute or two.>
              > <Mar 3, 2004 1:48:32 PM EST> <Info> <EJB> <BEA-010085> <The
              > message-driven beans have all been suspended.>
              > [MessageDrivenBeanPoolInfoImpl] : Couldn't unregister MBean
              > javax.management.InstanceNotFoundException:
              > mydomain:ApplicationRuntime=myserver_otis-dasl-ejb,EJBComponentRuntime=myserver_otis-dasl-ejb_otis-dasl-ejb.jar,Location=myserver,Name=myserver_otis-dasl-ejb_otis-dasl-ejb.jar_com.cibcwm.go.otis.dasl.submission.DASLSubmissionMdb_wls.mqs.dasl.dev.adp.reply3,ServerRuntime=myserver,Type=EJBTransactionRuntime
              >
              > at
              > com.sun.management.jmx.MBeanServerImpl.getMBean(MBeanServerImpl.java:1680)
              > at
              > com.sun.management.jmx.MBeanServerImpl.invoke(MBeanServerImpl.java:1524)
              > at
              > weblogic.management.internal.RemoteMBeanServerImpl.private_invoke(RemoteMBeanServerImpl.java:947)
              >
              > at
              > weblogic.management.internal.RemoteMBeanServerImpl.invoke(RemoteMBeanServerImpl.java:908)
              >
              > at weblogic.management.internal.MBeanProxy.invoke(MBeanProxy.java:946)
              > at
              > weblogic.management.internal.MBeanProxy.invokeForCachingStub(MBeanProxy.java:481)
              >
              > at
              > weblogic.management.runtime.EJBTransactionRuntimeMBean_Stub.preDeregister(EJBTransactionRuntimeMBean_Stub.java:433)
              >
              > at
              > weblogic.management.internal.MBeanHomeImpl.internalDeleteMBean(MBeanHomeImpl.java:996)
              >
              > at
              > weblogic.management.internal.MBeanHomeImpl.privateDeleteMBean(MBeanHomeImpl.java:982)
              >
              > at
              > weblogic.management.internal.MBeanHomeImpl.access$000(MBeanHomeImpl.java:74)
              >
              > at
              > weblogic.management.internal.MBeanHomeImpl$2.run(MBeanHomeImpl.java:948)
              > at
              > weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:317)
              >
              > at
              > weblogic.security.service.SecurityManager.runAs(SecurityManager.java:118)
              > at
              > weblogic.management.internal.MBeanHomeImpl.deleteMBeanWithKernelID(MBeanHomeImpl.java:944)
              >
              > at
              > weblogic.management.internal.MBeanHomeImpl.deleteMBean(MBeanHomeImpl.java:939)
              >
              > at
              > weblogic.management.internal.MBeanHomeImpl.deleteMBean(MBeanHomeImpl.java:933)
              >
              > at
              > weblogic.management.runtime.RuntimeMBeanDelegate.unregister(RuntimeMBeanDelegate.java:140)
              >
              > at
              > weblogic.ejb20.monitoring.EJBRuntimeMBeanImpl.unregisterDependents(EJBRuntimeMBeanImpl.java:58)
              >
              > at
              > weblogic.ejb20.monitoring.MessageDrivenEJBRuntimeMBeanImpl.unregisterDependents(MessageDrivenEJBRuntimeMBeanImpl.java:50)
              >
              > at
              > weblogic.ejb20.deployer.MessageDrivenBeanPoolInfoImpl.unInitPool(MessageDrivenBeanPoolInfoImpl.java:208)
              >
              > at
              > weblogic.ejb20.deployer.MessageDrivenBeanPoolInfoImpl.onUndeploy(MessageDrivenBeanPoolInfoImpl.java:121)
              >
              > at
              > weblogic.ejb20.deployer.MessageDrivenBeanInfoImpl.onUndeploy(MessageDrivenBeanInfoImpl.java:628)
              >
              > at weblogic.ejb20.internal.BaseEJBHome.undeploy(BaseEJBHome.java:203)
              > at
              > weblogic.ejb20.internal.MessageDrivenEJBHome.undeploy(MessageDrivenEJBHome.java:260)
              >
              > at
              > weblogic.ejb20.deployer.EJBDeployer.deactivate(EJBDeployer.java:1802)
              > at weblogic.ejb20.deployer.EJBModule.doDeactivate(EJBModule.java:865)
              > at weblogic.ejb20.deployer.EJBModule.deactivate(EJBModule.java:712)
              > at
              > weblogic.j2ee.J2EEApplicationContainer.deactivateModule(J2EEApplicationContainer.java:3161)
              >
              > at
              > weblogic.j2ee.J2EEApplicationContainer.deactivate(J2EEApplicationContainer.java:2186)
              >
              > at
              > weblogic.j2ee.J2EEApplicationContainer.deactivate(J2EEApplicationContainer.java:2131)
              >
              > at
              > weblogic.j2ee.J2EEApplicationContainer.stop(J2EEApplicationContainer.java:1915)
              >
              > at
              > weblogic.j2ee.J2EEApplicationContainerFactory.removeDeployedApplications(J2EEApplicationContainerFactory.java:761)
              >
              > at
              > weblogic.j2ee.J2EEApplicationService.shutdown(J2EEApplicationService.java:115)
              >
              > at
              > weblogic.management.deploy.DeploymentManagerServerLifeCycleImpl.shutdownHelper(DeploymentManagerServerLifeCycleImpl.java:257)
              >
              > at
              > weblogic.application.ApplicationService.prepareToSuspend(ApplicationService.java:46)
              >
              > at
              > weblogic.t3.srvr.SubsystemManager.prepareToSuspend(SubsystemManager.java:168)
              >
              > at weblogic.t3.srvr.T3Srvr.prepareToSuspend(T3Srvr.java:1085)
              > at
              > weblogic.t3.srvr.ServerLifeCycleWorkerThread.prepareToSuspend(ServerLifeCycleWorkerThread.java:51)
              >
              > at
              > weblogic.t3.srvr.ServerLifeCycleWorkerThread$1.run(ServerLifeCycleWorkerThread.java:35)
              >
              > at
              > weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:317)
              >
              > at
              > weblogic.security.service.SecurityManager.runAs(SecurityManager.java:118)
              > at
              > weblogic.t3.srvr.ServerLifeCycleWorkerThread.run(ServerLifeCycleWorkerThread.java:32)
              >
              > --------------- nested within: ------------------
              > weblogic.management.ManagementException: An error has occurred during
              > preDeregister().
              > nullmydomain:ApplicationRuntime=myserver_otis-dasl-ejb,EJBComponentRuntime=myserver_otis-dasl-ejb_otis-dasl-ejb.jar,Location=myserver,Name=myserver_otis-dasl-ejb_otis-dasl-ejb.jar_com.cibcwm.go.otis.dasl.submission.DASLSubmissionMdb_wls.mqs.dasl.dev.adp.reply3,ServerRuntime=myserver,Type=EJBTransactionRuntime
              > - with nested exception:
              > [javax.management.InstanceNotFoundException:
              > mydomain:ApplicationRuntime=myserver_otis-dasl-ejb,EJBComponentRuntime=myserver_otis-dasl-ejb_otis-dasl-ejb.jar,Location=myserver,Name=myserver_otis-dasl-ejb_otis-dasl-ejb.jar_com.cibcwm.go.otis.dasl.submission.DASLSubmissionMdb_wls.mqs.dasl.dev.adp.reply3,ServerRuntime=myserver,Type=EJBTransactionRuntime]
              >
              > at
              > weblogic.management.runtime.RuntimeMBeanDelegate.unregister(RuntimeMBeanDelegate.java:148)
              >
              > at
              > weblogic.ejb20.monitoring.EJBRuntimeMBeanImpl.unregisterDependents(EJBRuntimeMBeanImpl.java:58)
              >
              > at
              > weblogic.ejb20.monitoring.MessageDrivenEJBRuntimeMBeanImpl.unregisterDependents(MessageDrivenEJBRuntimeMBeanImpl.java:50)
              >
              > at
              > weblogic.ejb20.deployer.MessageDrivenBeanPoolInfoImpl.unInitPool(MessageDrivenBeanPoolInfoImpl.java:208)
              >
              > at
              > weblogic.ejb20.deployer.MessageDrivenBeanPoolInfoImpl.onUndeploy(MessageDrivenBeanPoolInfoImpl.java:121)
              >
              > at
              > weblogic.ejb20.deployer.MessageDrivenBeanInfoImpl.onUndeploy(MessageDrivenBeanInfoImpl.java:628)
              >
              > at weblogic.ejb20.internal.BaseEJBHome.undeploy(BaseEJBHome.java:203)
              > at
              > weblogic.ejb20.internal.MessageDrivenEJBHome.undeploy(MessageDrivenEJBHome.java:260)
              >
              > at
              > weblogic.ejb20.deployer.EJBDeployer.deactivate(EJBDeployer.java:1802)
              > at weblogic.ejb20.deployer.EJBModule.doDeactivate(EJBModule.java:865)
              > at weblogic.ejb20.deployer.EJBModule.deactivate(EJBModule.java:712)
              > at
              > weblogic.j2ee.J2EEApplicationContainer.deactivateModule(J2EEApplicationContainer.java:3161)
              >
              > at
              > weblogic.j2ee.J2EEApplicationContainer.deactivate(J2EEApplicationContainer.java:2186)
              >
              > at
              > weblogic.j2ee.J2EEApplicationContainer.deactivate(J2EEApplicationContainer.java:2131)
              >
              > at
              > weblogic.j2ee.J2EEApplicationContainer.stop(J2EEApplicationContainer.java:1915)
              >
              > at
              > weblogic.j2ee.J2EEApplicationContainerFactory.removeDeployedApplications(J2EEApplicationContainerFactory.java:761)
              >
              > at
              > weblogic.j2ee.J2EEApplicationService.shutdown(J2EEApplicationService.java:115)
              >
              > at
              > weblogic.management.deploy.DeploymentManagerServerLifeCycleImpl.shutdownHelper(DeploymentManagerServerLifeCycleImpl.java:257)
              >
              > at
              > weblogic.application.ApplicationService.prepareToSuspend(ApplicationService.java:46)
              >
              > at
              > weblogic.t3.srvr.SubsystemManager.prepareToSuspend(SubsystemManager.java:168)
              >
              > at weblogic.t3.srvr.T3Srvr.prepareToSuspend(T3Srvr.java:1085)
              > at
              > weblogic.t3.srvr.ServerLifeCycleWorkerThread.prepareToSuspend(ServerLifeCycleWorkerThread.java:51)
              >
              > at
              > weblogic.t3.srvr.ServerLifeCycleWorkerThread$1.run(ServerLifeCycleWorkerThread.java:35)
              >
              > at
              > weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:317)
              >
              > at
              > weblogic.security.service.SecurityManager.runAs(SecurityManager.java:118)
              > at
              > weblogic.t3.srvr.ServerLifeCycleWorkerThread.run(ServerLifeCycleWorkerThread.java:32)
              >
              > <Mar 3, 2004 1:48:33 PM EST> <Info> <Management> <BEA-141082>
              > <ServerRuntime:java.util.ConcurrentModificationException>
              > <Mar 3, 2004 1:48:33 PM EST> <Info> <Management> <BEA-141082>
              > <ServerRuntime:java.util.ConcurrentModificationException
              > at
              > java.util.LinkedList$ListItr.checkForComodification(LinkedList.java:552)
              > at java.util.LinkedList$ListItr.next(LinkedList.java:488)
              > at
              > weblogic.ejb20.deployer.EJBDeployer.deactivate(EJBDeployer.java:1801)
              > at weblogic.ejb20.deployer.EJBModule.doDeactivate(EJBModule.java:865)
              > at weblogic.ejb20.deployer.EJBModule.deactivate(EJBModule.java:712)
              > at
              > weblogic.j2ee.J2EEApplicationContainer.deactivateModule(J2EEApplicationContainer.java:3161)
              >
              > at
              > weblogic.j2ee.J2EEApplicationContainer.deactivate(J2EEApplicationContainer.java:2186)
              >
              > at
              > weblogic.j2ee.J2EEApplicationContainer.deactivate(J2EEApplicationContainer.java:2131)
              >
              > at
              > weblogic.j2ee.J2EEApplicationContainer.stop(J2EEApplicationContainer.java:1915)
              >
              > at
              > weblogic.j2ee.J2EEApplicationContainerFactory.removeDeployedApplications(J2EEApplicationContainerFactory.java:761)
              >
              > at
              > weblogic.j2ee.J2EEApplicationService.shutdown(J2EEApplicationService.java:115)
              >
              > at
              > weblogic.management.deploy.DeploymentManagerServerLifeCycleImpl.shutdownHelper(DeploymentManagerServerLifeCycleImpl.java:257)
              >
              > at
              > weblogic.application.ApplicationService.prepareToSuspend(ApplicationService.java:46)
              >
              > at
              > weblogic.t3.srvr.SubsystemManager.prepareToSuspend(SubsystemManager.java:168)
              >
              > at weblogic.t3.srvr.T3Srvr.prepareToSuspend(T3Srvr.java:1085)
              > at
              > weblogic.t3.srvr.ServerLifeCycleWorkerThread.prepareToSuspend(ServerLifeCycleWorkerThread.java:51)
              >
              > at
              > weblogic.t3.srvr.ServerLifeCycleWorkerThread$1.run(ServerLifeCycleWorkerThread.java:35)
              >
              > at
              > weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:317)
              >
              > at
              > weblogic.security.service.SecurityManager.runAs(SecurityManager.java:118)
              > at
              > weblogic.t3.srvr.ServerLifeCycleWorkerThread.run(ServerLifeCycleWorkerThread.java:32)
              >
              > >
              > <Mar 3, 2004 1:48:35 PM EST> <Critical> <WebLogicServer> <BEA-000217>
              > <Failed to fully suspend the server due to:
              > java.util.ConcurrentModificationException
              > java.util.ConcurrentModificationException
              > at java.util.HashMap$HashIterator.nextEntry(HashMap.java:782)
              > at java.util.HashMap$KeyIterator.next(HashMap.java:818)
              > at
              > weblogic.j2ee.J2EEApplicationContainerFactory.removeDeployedApplications(J2EEApplicationContainerFactory.java:751)
              >
              > at
              > weblogic.j2ee.J2EEApplicationService.shutdown(J2EEApplicationService.java:115)
              >
              > at
              > weblogic.management.deploy.DeploymentManagerServerLifeCycleImpl.shutdownHelper(DeploymentManagerServerLifeCycleImpl.java:257)
              >
              > at
              > weblogic.application.ApplicationService.forceSuspend(ApplicationService.java:82)
              >
              > at
              > weblogic.t3.srvr.SubsystemManager.forceSuspend(SubsystemManager.java:184)
              > at weblogic.t3.srvr.T3Srvr.forceSuspend(T3Srvr.java:1097)
              > at
              > weblogic.t3.srvr.ServerRuntime.uprotectedForceShutdown(ServerRuntime.java:629)
              >
              > at weblogic.t3.srvr.ServerRuntime.access$300(ServerRuntime.java:83)
              > at weblogic.t3.srvr.ServerRuntime$4.run(ServerRuntime.java:563)
              > at
              > weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:317)
              >
              > at
              > weblogic.security.service.SecurityManager.runAs(SecurityManager.java:118)
              > at weblogic.t3.srvr.ServerRuntime.forceShutdown(ServerRuntime.java:559)
              > at weblogic.t3.srvr.ServerRuntime.shutdown(ServerRuntime.java:547)
              > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
              > at
              > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
              >
              > at
              > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
              >
              > at java.lang.reflect.Method.invoke(Method.java:324)
              > at
              > weblogic.management.internal.DynamicMBeanImpl.invokeLocally(DynamicMBeanImpl.java:711)
              >
              > at
              > weblogic.management.internal.DynamicMBeanImpl.invoke(DynamicMBeanImpl.java:690)
              >
              > at
              > com.sun.management.jmx.MBeanServerImpl.invoke(MBeanServerImpl.java:1557)
              > at
              > com.sun.management.jmx.MBeanServerImpl.invoke(MBeanServerImpl.java:1525)
              > at
              > weblogic.management.internal.RemoteMBeanServerImpl.private_invoke(RemoteMBeanServerImpl.java:947)
              >
              > at
              > weblogic.management.internal.RemoteMBeanServerImpl.invoke(RemoteMBeanServerImpl.java:908)
              >
              > at weblogic.management.internal.MBeanProxy.invoke(MBeanProxy.java:946)
              > at
              > weblogic.management.internal.MBeanProxy.invokeForCachingStub(MBeanProxy.java:481)
              >
              > at
              > weblogic.management.runtime.ServerRuntimeMBean_Stub.shutdown(ServerRuntimeMBean_Stub.java:1184)
              >
              > at
              > weblogic.server.ServerLifeCycleRuntime$ShutdownRequest.execute(ServerLifeCycleRuntime.java:585)
              >
              > at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:197)
              > at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:170)
              > >
              > <Mar 3, 2004 1:48:35 PM EST> <Debug> <Management> <BEA-141132> <Dynamic
              > invocation while executing action shutdown on
              > mydomain:Location=myserver,Name=myserver,Type=ServerRuntime MBean
              > instance failed. The method shutdown with signature [int, boolean] was
              > invoked with parameters as [30, true].
              > java.util.ConcurrentModificationException
              > at java.util.HashMap$HashIterator.nextEntry(HashMap.java:782)
              > at java.util.HashMap$KeyIterator.next(HashMap.java:818)
              > at
              > weblogic.j2ee.J2EEApplicationContainerFactory.removeDeployedApplications(J2EEApplicationContainerFactory.java:751)
              >
              > at
              > weblogic.j2ee.J2EEApplicationService.shutdown(J2EEApplicationService.java:115)
              >
              > at
              > weblogic.management.deploy.DeploymentManagerServerLifeCycleImpl.shutdownHelper(DeploymentManagerServerLifeCycleImpl.java:257)
              >
              > at
              > weblogic.application.ApplicationService.forceSuspend(ApplicationService.java:82)
              >
              > at
              > weblogic.t3.srvr.SubsystemManager.forceSuspend(SubsystemManager.java:184)
              > at weblogic.t3.srvr.T3Srvr.forceSuspend(T3Srvr.java:1097)
              > at
              > weblogic.t3.srvr.ServerRuntime.uprotectedForceShutdown(ServerRuntime.java:629)
              >
              > at weblogic.t3.srvr.ServerRuntime.access$300(ServerRuntime.java:83)
              > at weblogic.t3.srvr.ServerRuntime$4.run(ServerRuntime.java:563)
              > at
              > weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:317)
              >
              > at
              > weblogic.security.service.SecurityManager.runAs(SecurityManager.java:118)
              > at weblogic.t3.srvr.ServerRuntime.forceShutdown(ServerRuntime.java:559)
              > at weblogic.t3.srvr.ServerRuntime.shutdown(ServerRuntime.java:547)
              > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
              > at
              > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
              >
              > at
              > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
              >
              > at java.lang.reflect.Method.invoke(Method.java:324)
              > at
              > weblogic.management.internal.DynamicMBeanImpl.invokeLocally(DynamicMBeanImpl.java:711)
              >
              > at
              > weblogic.management.internal.DynamicMBeanImpl.invoke(DynamicMBeanImpl.java:690)
              >
              > at
              > com.sun.management.jmx.MBeanServerImpl.invoke(MBeanServerImpl.java:1557)
              > at
              > com.sun.management.jmx.MBeanServerImpl.invoke(MBeanServerImpl.java:1525)
              > at
              > weblogic.management.internal.RemoteMBeanServerImpl.private_invoke(RemoteMBeanServerImpl.java:947)
              >
              > at
              > weblogic.management.internal.RemoteMBeanServerImpl.invoke(RemoteMBeanServerImpl.java:908)
              >
              > at weblogic.management.internal.MBeanProxy.invoke(MBeanProxy.java:946)
              > at
              > weblogic.management.internal.MBeanProxy.invokeForCachingStub(MBeanProxy.java:481)
              >
              > at
              > weblogic.management.runtime.ServerRuntimeMBean_Stub.shutdown(ServerRuntimeMBean_Stub.java:1184)
              >
              > at
              > weblogic.server.ServerLifeCycleRuntime$ShutdownRequest.execute(ServerLifeCycleRuntime.java:585)
              >
              > at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:197)
              > at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:170)
              > >
              >
              > Tom Barnes wrote:
              >
              >> Hi Dmitri,
              >>
              >> This is normal behavior.
              >> The internal rollbacks are a side effect of WL MDBs
              >> necessarily starting a transaction before they (internally)
              >> post a synchronous
              >> receive on the remote foreign JMS server. If the synchronous receive
              >> receives nothing, the tx is rolled back, and another
              >> synch receive is posted with a new tx. (When interacting with
              >> foreign vendors, tx MDBs usually must post synchronous receives
              >> in order to infect the received message - there is no
              >> standard JMS API for infecting asynchronously received messages
              >> with a user transaction.)
              >>
              >> Tom
              >>
              >> Dmitri Maximovich wrote:
              >>
              >>> Hi everybody,
              >>>
              >>> Is anybody successfully using remote IBM MQseries 5.3 server as
              >>> Foreign JMS in WLS 8.1sp2?
              >>> We're observing some strange behavior in this case. Here is our setup:
              >>>
              >>> WLS and IBM MQ server deployed on separate boxes.
              >>> WLS version 8.1sp2 running on Windows 2000/Intel
              >>> IBM MQ version 5.3 running on Solaris/SPARC
              >>>
              >>> We're using "WebSphere MQ classes for Java, version 5.303 -
              >>> j5303-L030225"
              >>> and "WebSphere MQ Extended Transactional Client Feature, version
              >>> 5.300 - j5303-L030122"
              >>>
              >>> MQ files added in WLS POST_CLASSPATH variable in WLS starup script.
              >>>
              >>> Foreign JMS server configured in WLS via fscontext JNDI.
              >>>
              >>> MDB bean deployed with Transaction attribute "Required".
              >>>
              >>> Everything seems to work fine, if we're posting message to MQ queue
              >>> MDB receives it and process successfully (just print message content
              >>> to the console for now).
              >>>
              >>> Problem: In WLS console, under Server->Monitoring->JTA->Monitor
              >>> inflight transactions we can constantly see one transaction enlisted
              >>> for our MDB bean with following details:
              >>>
              >>> =====================================================
              >>> Transaction ID: BEA1-00DFC5EB4B7B7F28EDB9
              >>> Coordinator: mydomain+myserver
              >>> Name: JMSMessagePoller.xxx.xxx.MyMessageProcessorMdb
              >>> Status: Active
              >>> Seconds Active: 17
              >>> Resources:
              >>> weblogic.ejb20.JMSConnectionPoller.xxx.xxx.MyMessageProcessorMdb=started
              >>> Properties
              >>> (key=value):
              >>> weblogic.transaction.name=JMSMessagePoller.xxx.xxx.MyMessageProcessorMdb
              >>> =====================================================
              >>>
              >>> This transaction seems to be Active for 30 seconds and then rolled
              >>> back (no error messages on WLS console displayed).On JTA statistics
              >>> page in WLS console "Total Rolled Back" counter keeps increneting
              >>> with every rollback.
              >>>
              >>> Does anybody observerd similar problem? May be it's normal behaviour
              >>> but I'm kind of worrying about those transactions and constant
              >>> rollback. I'd appreciate any feedback.
              >>>
              >>> ---
              >>> Sincerely,
              >>> Dmitri Maximovich
              >>
              >>
              >>
              

  • JMS Adaptor error in JDeveloper 10.1.3.1

    1. We have JMSTOPIC on 10.1.2 application server.
    2. Created Application server connection in Jdeveloper 10.1.3.1 to the 10.1.2 application server.
    Created Connection Type as "Oracle Application Server 10g 10.1.2 (Unix)"
    RMI server URL:
    ormi://galileo:12409
    User: admin
    Password: welcome
    When I do a "test connection", comes back with "success"
    3. In 10.1.3.1 Jdeveloper create an ESB or BPEL project. When I am configuring the JMS Adaptor, I get "Connection can't be opened to the specfied OAS", which is 10.1.2 app server connection I created in the previous step.
    4. I am struck at "Step 3 of 6:Server Connection" window in the wizard. on this window under the connection information section, URL is blank.
    Any help on this would be greatly appreciated.

    Hi,
    there is a bug entry on this which suggests a work around:
    "If you delete the content of the WEB-INF/classes/ directory then it works."
    Frank

  • Reading Opaque data from jms queue  and decoded  in java embedding

    Hi ,
    Objective:Fetch text message from queue and print it from java embedding in BPEL
    I am fetching text message from a jms queue using JMS adapter in BPEL.Then converting the opaque data(Base64 binary)to string using java embedding.My build got successful but I am getting runtime error at the time of deployment.
    I have added fabric-runtime.jar file into SCA-INF\lib folder as well as project library directory.
    <extensionActivity>
    <bpelx:exec name="Java_Embedding1" version="1.5" language="java">
    <bpelx:exec import="java.io.*"/>
    <bpelx:exec import="oracle.soa.common.util.Base64Decoder"/>
    <![CDATA[//Write your java code below e.g.        
         System.out.println("Hello, World");       
    //   String input = ((Element)getVariableData("Receive1_Consume_Message_InputVariable")).getTextContent();              
      // String inputName = (String)getVariableData("input");     
      String input = (String)getVariableData("Receive1_Consume_Message_InputVariable");            
    //Receive1_Consume_Message_InputVariable.opaque          
          System.out.println("input:"+input);          
          addAuditTrailEntry(input);           
          Base64Decoder Decoder = new Base64Decoder();             
         try {            
          String decoded = Base64Decoder.decode(input);            
          setVariableData("Variable_opaque_decoded",decoded);            
          addAuditTrailEntry(decoded);           
    catch(UnsupportedEncodingException uee)
    uee.printStackTrace();
    }]]>
    </bpelx:exec>
    </extensionActivity>
    Error:
    Error deploying archive sca_JMSToDBInsert_rev1.0.jar to partition "default" on server AdminServer [http://localhost:7001]
    HTTP error code returned [500]
    Error message from server:
    There was an error deploying the composite on AdminServer: Error occurred during deployment of component: BPELProcess1 to service engine: implementation.bpel, for composite: JMSToDBInsert: ORABPEL-05250
    Error deploying BPEL suitcase.
    error while attempting to deploy the BPEL component file "C:\Oracle\Middleware\user_projects\domains\soa_domain\servers\AdminServer\dc\soa_0fb06e23-bac3-4753-aae9-0fc4b54b4dd1"; the exception reported is: java.lang.RuntimeException: failed to compile execlets of BPELProcess1
    This error contained an exception thrown by the underlying deployment module.
    Verify the exception trace in the log (with logging level set to debug mode).
    Check server log for more details.
    Error deploying archive sca_JMSToDBInsert_rev1.0.jar to partition "default" on server AdminServer [http://localhost:7001]
    #### Deployment incomplete. ####
    Error deploying archive file:/C:/SOA Suite/SOA_POC/Client2JMSapps/Client2JMSapps/JMSToDBInsert/deploy/sca_JMSToDBInsert_rev1.0.jar
    (oracle.tip.tools.ide.fabric.deploy.common.SOARemoteDeployer)
    Could you guys please help me regarding this?
    Thanks & Regards,
    Souvik
    Edited by: Souvik Pal on Apr 16, 2012 9:40 PM

    You probably want to try the SOA Suite forum for OSB questions.
    SOA Suite
    There is an excellent book also:
    http://jeffdavies.org/
    The documentation goes over the fundamentals, but the book will be better for step by step examples.

Maybe you are looking for