Exception Starting JMS listener bean on iAs 10.1.3.1 using Database Persist

Hi,
I'm getting this exception
Unexpected exception by JMS provider: javax.jms.InvalidDestinationException: Destination "oracle.j2ee.ra.jms.generic.AdminObjectQueueImpl[SECOND]" has invalid type "class oracle.j2ee.ra.jms.generic.AdminObjectQueueImpl" and cannot be used with OC4J JMS..
on deploy of an application containing the a Message Driven Bean
It is marked as failed in EM.
This is the relevant snippet from my orion-ejb-jar.xml
<message-driven-deployment name="CommunicatorMessageBean" destination-location="jmsResourceAdaptor/AutoWrap/Queues/SECOND" />
thanks in advance
Dan

That seems to be a bug in the ADF Runtime Installer.
The file jsp-el-api.jar from JDev 10.1.3 must be copied manually to the oc4j container /applib directory - and if you have more than one oc4j instance on your application server it must be copied to all of them.
I have been in contact with Oracle Support because of this and hopefully a patch and/or proper documentation will be release soon.

Similar Messages

  • Problem starting JMS

    Hi,
    being an Oracle Developer, I recently installed Oracle XML Publisher. At first it went apparently fine, but one day it suddenly wouldn't start anymore ... No, you may be wondering why I'm posting this on an JSM forum? Well, I got the following message (afterwards XML Publisher simply shut down) :
    C:\oracle\product\10.1.0\Db_1\xmlpserver>"C:\oracle\product\10.1.0\Db_1\jdk\bin\
    java" -Xms256M -Xmx256M -jar "C:\oracle\product\10.1.0\Db_1\oc4j\j2ee\home\oc4j
    .jar" -config "C:\oracle\product\10.1.0\Db_1\oc4j\j2ee\home\config\server.xml"
    2006-12-04 09:47:57.453 ERROR Failed to set the internal configuration of the OC
    4J JMS Server with: XMLJMSServerConfig[file:/C:/oracle/product/10.1.0/db_1/oc4j/
    j2ee/home/config/jms.xml]
    06/12/04 09:47:57 *** (SEVERE) Failed to set the internal configuration of the O
    C4J JMS Server with: XMLJMSServerConfig[file:/C:/oracle/product/10.1.0/db_1/oc4j
    /j2ee/home/config/jms.xml]
    2006-12-04 09:47:57.453 ERROR J2EE OJR0011 Exception starting JMS server: Failed
    to set the internal configuration of the OC4J JMS Server with: XMLJMSServerConf
    ig[file:/C:/oracle/product/10.1.0/db_1/oc4j/j2ee/home/config/jms.xml]
    2006-12-04 09:47:59.281 WARNING J2EE JNDI0001 Resource Environment reference jms
    /store not found. Allowing J2EEContext creation to continue anyway.
    2006-12-04 09:47:59.281 WARNING J2EE JNDI0001 Resource Environment reference jms
    /eventQueue not found. Allowing J2EEContext creation to continue anyway.
    2006-12-04 09:47:59.281 WARNING J2EE JNDI0001 Resource Environment reference jms
    /notificationQueue not found. Allowing J2EEContext creation to continue anyway.
    2006-12-04 09:47:59.328 WARNING J2EE JNDI0001 Resource Environment reference jms
    /eventQueue not found. Allowing J2EEContext creation to continue anyway.
    2006-12-04 09:47:59.328 WARNING J2EE JNDI0001 Resource Environment reference jms
    /notificationQueue not found. Allowing J2EEContext creation to continue anyway.
    2006-12-04 09:47:59.328 ERROR J2EE EJB3027 [default] An error occured deploying
    EJB module: java.lang.InstantiationException: Resource exception(OracleASjms) fo
    r MessageDrivenBean event during endpoint activation: failure looking up Connect
    ionFactoryJndiName:jms/XAQueueConnectionFactory: javax.resource.spi.ResourceAdap
    terInternalException: Looking up jms/XAQueueConnectionFactory: javax.naming.Name
    NotFoundException: jms/XAQueueConnectionFactory not found
    06/12/04 09:47:59 WARNING: Application.setConfig Application: default is in fail
    ed state as initialization failedjava.lang.InstantiationException: Error initial
    izing ejb-modules: Resource exception(OracleASjms) for MessageDrivenBean event d
    uring endpoint activation: failure looking up ConnectionFactoryJndiName:jms/XAQu
    eueConnectionFactory: javax.resource.spi.ResourceAdapterInternalException: Looki
    ng up jms/XAQueueConnectionFactory: javax.naming.NameNotFoundException: jms/XAQu
    eueConnectionFactory not found
    4-dec-2006 9:47:59 com.evermind.server.Application setConfig
    WARNING: Application: default is in failed state as initialization failedjava.la
    ng.InstantiationException: Error initializing ejb-modules: Resource exception(Or
    acleASjms) for MessageDrivenBean event during endpoint activation: failure looki
    ng up ConnectionFactoryJndiName:jms/XAQueueConnectionFactory: javax.resource.spi
    .ResourceAdapterInternalException: Looking up jms/XAQueueConnectionFactory: java
    x.naming.NameNotFoundException: jms/XAQueueConnectionFactory not found
    2006-12-04 09:47:59.344 WARNING DEBUG GJRA-1100, oracle.j2ee.connector.messagein
    flow.MessageEndpointFactoryImpl@1ad4feb.
    06/12/04 09:47:59 Error initializing server: Error initializing ejb-modules: Res
    ource exception(OracleASjms) for MessageDrivenBean event during endpoint activat
    ion: failure looking up ConnectionFactoryJndiName:jms/XAQueueConnectionFactory:
    javax.resource.spi.ResourceAdapterInternalException: Looking up jms/XAQueueConne
    ctionFactory: javax.naming.NameNotFoundException: jms/XAQueueConnectionFactory n
    ot found
    2006-12-04 09:47:59.938 WARNING J2EE JTA RecoveryManager is null during shut
    down
    I don't know much about Java, JMS, ... But recently, I figured out that when I disabled the "Wireless Network Connection" on my computer, it worked fine again!!! I don't have a clue on what's happening, but I would like to know ...
    So, anybody who knows more about this, feel free to add comment!
    Thanks in advance!
    Greetings,
    P.
    Message was edited by:
    L@ncelot
    Message was edited by:
    L@ncelot

    Well, same occurrence of described problem and no solution-
    thx

  • Unable to start a Listener Port on Websphere 6

    Im trying to use Websphere6 with a Message Driven Bean.
    I dont know if this is Websphere Specific but you have to create a listener port for the server then you reference the listener port in your MDB.
    But my server fails to the start the listener port complaining about jndi problems.
    TradePort is the name of my ListenerPort and jms/JMSTradePortDestination is the name of my DestinationJNDIName, trade is the name of my MDB.
    I havent specified my DestinationJNDIName anywhere else as I understood it it is an arbitary name that the listener will use to accept jms requests.
    [04/05/05 15:49:26:656 BST] 00000011 MDBListenerIm W   WMSG0019E: Unable to start MDB Listener Trade, jms/JMSDestination TradePortDestination : javax.naming.NameNotFoundException: Context: kestrelNode01Cell/nodes/kestrelNode01/servers/server1, name: TradePortDestination: First component in name TradePortDestination not found.  Root exception is org.omg.CosNaming.NamingContextPackage.NotFound: IDL:omg.org/CosNaming/NamingContext/NotFound:1.0
         at com.ibm.ws.naming.ipcos.WsnOptimizedNamingImpl.do_resolve_complete_info(WsnOptimizedNamingImpl.java:970)
         at com.ibm.ws.naming.cosbase.WsnOptimizedNamingImplBase.resolve_complete_info(WsnOptimizedNamingImplBase.java:1435)
         at com.ibm.WsnOptimizedNaming._NamingContextStub.resolve_complete_info(Unknown Source)
         at com.ibm.ws.naming.jndicos.CNContextImpl.cosResolve(CNContextImpl.java:4045)
         at com.ibm.ws.naming.jndicos.CNContextImpl.doLookup(CNContextImpl.java:1742)
         at com.ibm.ws.naming.jndicos.CNContextImpl.doLookup(CNContextImpl.java:1703)
         at com.ibm.ws.naming.jndicos.CNContextImpl.lookupExt(CNContextImpl.java:1410)
         at com.ibm.ws.naming.jndicos.CNContextImpl.lookup(CNContextImpl.java:1290)
         at com.ibm.ws.naming.util.WsnInitCtx.lookup(WsnInitCtx.java:144)
         at javax.naming.InitialContext.lookup(InitialContext.java:361)
         at com.ibm.ejs.jms.listener.MDBListenerImpl.createResources(MDBListenerImpl.java:230)
         at com.ibm.ejs.jms.listener.MDBListenerImpl.internalStart(MDBListenerImpl.java:681)
         at com.ibm.ejs.jms.listener.MDBListenerImpl.restart(MDBListenerImpl.java:654)
         at com.ibm.ejs.jms.listener.MDBListenerImpl.alarm(MDBListenerImpl.java:969)
         at com.ibm.ejs.util.am._Alarm.run(_Alarm.java(Compiled Code))
         at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:1394)
    ---- Begin backtrace for Nested Throwables
    org.omg.CosNaming.NamingContextPackage.NotFound: IDL:omg.org/CosNaming/NamingContext/NotFound:1.0
         at com.ibm.ws.naming.ipcos.WsnOptimizedNamingImpl.do_resolve_complete_info(WsnOptimizedNamingImpl.java:970)
         at com.ibm.ws.naming.cosbase.WsnOptimizedNamingImplBase.resolve_complete_info(WsnOptimizedNamingImplBase.java:1435)
         at com.ibm.WsnOptimizedNaming._NamingContextStub.resolve_complete_info(Unknown Source)
         at com.ibm.ws.naming.jndicos.CNContextImpl.cosResolve(CNContextImpl.java:4045)
         at com.ibm.ws.naming.jndicos.CNContextImpl.doLookup(CNContextImpl.java:1742)
         at com.ibm.ws.naming.jndicos.CNContextImpl.doLookup(CNContextImpl.java:1703)
         at com.ibm.ws.naming.jndicos.CNContextImpl.lookupExt(CNContextImpl.java:1410)
         at com.ibm.ws.naming.jndicos.CNContextImpl.lookup(CNContextImpl.java:1290)
         at com.ibm.ws.naming.util.WsnInitCtx.lookup(WsnInitCtx.java:144)
         at javax.naming.InitialContext.lookup(InitialContext.java:361)
         at com.ibm.ejs.jms.listener.MDBListenerImpl.createResources(MDBListenerImpl.java:230)
         at com.ibm.ejs.jms.listener.MDBListenerImpl.internalStart(MDBListenerImpl.java:681)
         at com.ibm.ejs.jms.listener.MDBListenerImpl.restart(MDBListenerImpl.java:654)
         at com.ibm.ejs.jms.listener.MDBListenerImpl.alarm(MDBListenerImpl.java:969)
         at com.ibm.ejs.util.am._Alarm.run(_Alarm.java(Compiled Code))
         at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:1394)
    [04/05/05 16:08:13:701 BST] 00000010 MDBListenerIm W   WMSG0017E: Unable to lookup JMS resources, JNDI lookup exception: IDL:omg.org/CosNaming/NamingContext/NotFound:1.0
    [04/05/05 16:08:13:717 BST] 00000010 MDBListenerIm W   WMSG0019E: Unable to start MDB Listener Trade, JMSDestination jms/TradePortDestination : javax.naming.NameNotFoundException: Context: kestrelNode01Cell/nodes/kestrelNode01/servers/server1, name: jms/TradePortDestination: First component in name jms/TradePortDestination not found.  Root exception is org.omg.CosNaming.NamingContextPackage.NotFound: IDL:omg.org/CosNaming/NamingContext/NotFound:1.0
         at com.ibm.ws.naming.ipcos.WsnOptimizedNamingImpl.handleNameNotFound(WsnOptimizedNamingImpl.java:2006)
         at com.ibm.ws.naming.ipcos.WsnOptimizedNamingImpl.getNextWsnOptimizedNamingContext(WsnOptimizedNamingImpl.java:1322)
         at com.ibm.ws.naming.cosbase.WsnOptimizedNamingImplBase.getTargetContext(WsnOptimizedNamingImplBase.java:3024)
         at com.ibm.ws.naming.cosbase.WsnOptimizedNamingImplBase$LeafOperationData.<init>(WsnOptimizedNamingImplBase.java:3489)
         at com.ibm.ws.naming.cosbase.WsnOptimizedNamingImplBase.resolve_complete_info(WsnOptimizedNamingImplBase.java:1427)
         at com.ibm.WsnOptimizedNaming._NamingContextStub.resolve_complete_info(Unknown Source)
         at com.ibm.ws.naming.jndicos.CNContextImpl.cosResolve(CNContextImpl.java:4045)
         at com.ibm.ws.naming.jndicos.CNContextImpl.doLookup(CNContextImpl.java:1742)
         at com.ibm.ws.naming.jndicos.CNContextImpl.doLookup(CNContextImpl.java:1703)
         at com.ibm.ws.naming.jndicos.CNContextImpl.lookupExt(CNContextImpl.java:1410)
         at com.ibm.ws.naming.jndicos.CNContextImpl.lookup(CNContextImpl.java:1290)
         at com.ibm.ws.naming.util.WsnInitCtx.lookup(WsnInitCtx.java:144)
         at javax.naming.InitialContext.lookup(InitialContext.java:361)
         at com.ibm.ejs.jms.listener.MDBListenerImpl.createResources(MDBListenerImpl.java:230)
         at com.ibm.ejs.jms.listener.MDBListenerImpl.internalStart(MDBListenerImpl.java:681)
         at com.ibm.ejs.jms.listener.MDBListenerImpl.restart(MDBListenerImpl.java:654)
         at com.ibm.ejs.jms.listener.MDBListenerImpl.alarm(MDBListenerImpl.java:969)
         at com.ibm.ejs.util.am._Alarm.run(_Alarm.java:90)
         at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:1394)

    Am also facing same problem, plz help me if u have found the solution....but MQ will not support BUS concept as reply earlier ...........
    Listener Port Start Problem, when integrating on WAS6.0 using Websphere MQ Publisher Subscriber
    1)Websphere MQ is installed and top of that Publisher/subscriber support pack is also installed.
    2)RAD6.0 with WAS6.0 is installed.
    3)Aim: To run a MDB on WAS6.0 using Websphere MQ as JMS Provider.
    4)Configured the item as specified at (MDB using MQ and WAS with RAD)
    http://www-128.ibm.com/developerworks/websphere/techjournal/0505_woolf/0505_woolf.html
    5)Below is the error message displayed onto the server console....
    [7/29/05 12:08:43:125 IST] 0000001b MDBListenerIm I WMSG0058I: Listener Port JMSExampleTopicPort will attempt to restart in 60 seconds
    [7/29/05 12:08:43:125 IST] 00000032 MDBListenerIm I WMSG0058I: Listener Port JMSExampleTopicPort will attempt to restart in 60 seconds
    [7/29/05 12:08:43:141 IST] 0000001b MsgListenerPo W WMSG0049E: Failed to start MDB SubscriberDMDB against listener port JMSExampleTopicPort
    [7/29/05 12:08:43:359 IST] 0000001b MDBListenerIm I WMSG0042I: MDB Listener JMSExampleQueuePort started successfully for JMSDestination jms/JMSExampleQueue
    [7/29/05 12:09:43:219 IST] 0000002c ConnectionEve A J2CA0056I: The Connection Manager received a fatal connection error from the Resource Adaptor for resource jms/JMSExampleConnectionFactory. The exception which was received is javax.jms.JMSException: MQJMS2008: failed to open MQ queue
    [7/29/05 12:09:43:266 IST] 0000002c WASLogger E CLASSNAME METHODNAME an internal error has occurred. Please contact your system administrator. Detail: com.ibm.mq.MQException: MQJE001: Completion Code 2, Reason 2019
    [7/29/05 12:09:43:266 IST] 00000036 JMSExceptionL E WMSG0018E: Error on JMSConnection for MDB SubscriberDMDB , JMSDestination jms/JMSExampleTopic : javax.jms.JMSException: MQJMS2008: failed to open MQ queue
    [7/29/05 12:17:03:703 IST] 0000004b ConnectionEve A J2CA0056I: The Connection Manager received a fatal connection error from the Resource Adaptor for resource jms/JMSExampleConnectionFactory. The exception which was received is javax.jms.JMSException: MQJMS2008: failed to open MQ queue
    [7/29/05 12:17:03:719 IST] 0000004b WASLogger E CLASSNAME METHODNAME an internal error has occurred. Please contact your system administrator. Detail: com.ibm.mq.MQException: MQJE001: Completion Code 2, Reason 2019
    [7/29/05 12:17:03:719 IST] 00000056 JMSExceptionL E WMSG0018E: Error on JMSConnection for MDB SubscriberDMDB , JMSDestination jms/JMSExampleTopic : javax.jms.JMSException: MQJMS2008: failed to open MQ queue
         at com.ibm.mq.jms.services.ConfigEnvironment.newException(ConfigEnvironment.java:553)
         at com.ibm.mq.jms.MQBrokerSubscriptionEngine.sendBrokerMessageInternal(MQBrokerSubscriptionEngine.java:2546)
         at com.ibm.mq.jms.MQBrokerSubscriptionEngine.sendBrokerMessageInternal(MQBrokerSubscriptionEngine.java:2747)
         at com.ibm.mq.jms.MQBrokerSubscriptionEngine.sendBrokerMessage(MQBrokerSubscriptionEngine.java:2785)
         at com.ibm.mq.jms.MQBrokerSubscriptionEngine.openDurableSubscription(MQBrokerSubscriptionEngine.java:888)
         at com.ibm.mq.jms.MQMigrateSubscriptionEngine.openDurableSubscription(MQMigrateSubscriptionEngine.java:544)
         at com.ibm.mq.jms.MQConnectionBrowser.pubSubSetup(MQConnectionBrowser.java:400)
         at com.ibm.mq.jms.MQConnectionBrowser.MQConnectionBrowserInit(MQConnectionBrowser.java:266)
         at com.ibm.mq.jms.MQConnectionBrowser.<init>(MQConnectionBrowser.java:143)
         at com.ibm.mq.jms.MQConnection.createDurableConnectionBrowser(MQConnection.java:3438)
         at com.ibm.mq.jms.MQConnectionConsumer.<init>(MQConnectionConsumer.java:463)
         at com.ibm.mq.jms.MQConnection.createDurableConnectionConsumer(MQConnection.java:3349)
         at com.ibm.mq.jms.MQXAConnection.createDurableConnectionConsumer(MQXAConnection.java:328)
         at com.ibm.ejs.jms.JMSConnectionHandle.createDurableConnectionConsumer(JMSConnectionHandle.java:1016)
         at com.ibm.ejs.jms.listener.MDBListenerImpl.createResources(MDBListenerImpl.java:509)
         at com.ibm.ejs.jms.listener.MDBListenerImpl.internalStart(MDBListenerImpl.java:680)
         at com.ibm.ejs.jms.listener.MDBListenerImpl.start(MDBListenerImpl.java:611)
         at com.ibm.ejs.jms.listener.MDBListenerManagerImpl.start(MDBListenerManagerImpl.java:605)
         at com.ibm.ejs.jms.listener.MsgListenerPort.start(MsgListenerPort.java:250)
         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
         at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:85)
         at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:58)
         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java(Compiled Code))
         at java.lang.reflect.Method.invoke(Method.java(Compiled Code))
         at javax.management.modelmbean.RequiredModelMBean.invokeMethod(RequiredModelMBean.java:1366)
         at javax.management.modelmbean.RequiredModelMBean.invoke(RequiredModelMBean.java:1012)
         at mx4j.server.interceptor.InvokerMBeanServerInterceptor.invoke(InvokerMBeanServerInterceptor.java:233)
         at mx4j.server.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:128)
         at mx4j.server.interceptor.SecurityMBeanServerInterceptor.invoke(SecurityMBeanServerInterceptor.java:86)
         at mx4j.server.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:128)
         at mx4j.server.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:128)
         at mx4j.server.interceptor.ContextClassLoaderMBeanServerInterceptor.invoke(ContextClassLoaderMBeanServerInterceptor.java:167)
         at mx4j.server.MX4JMBeanServer.invoke(MX4JMBeanServer.java:1249)
         at com.ibm.ws.management.AdminServiceImpl$1.run(AdminServiceImpl.java:901)
         at com.ibm.ws.security.util.AccessController.doPrivileged(AccessController.java(Compiled Code))
         at com.ibm.ws.management.AdminServiceImpl.invoke(AdminServiceImpl.java:817)
         at com.ibm.ws.console.servermanagement.messagelistener.ListenerPortCollectionAction.execute(ListenerPortCollectionAction.java:317)
         at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:484)
         at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:275)
         at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1486)
         at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:528)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:763)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
         at com.ibm.ws.webcontainer.servlet.ServletWrapper.service(ServletWrapper.java:1212)
         at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:629)
         at com.ibm.ws.webcontainer.servlet.CacheServletWrapper.handleRequest(CacheServletWrapper.java:80)
         at com.ibm.ws.webcontainer.WebContainer.handleRequest(WebContainer.java:1657)
         at com.ibm.ws.webcontainer.channel.WCChannelLink.ready(WCChannelLink.java:77)
         at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleDiscrimination(HttpInboundLink.java:421)
         at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleNewInformation(HttpInboundLink.java:367)
         at com.ibm.ws.http.channel.inbound.impl.HttpICLReadCallback.complete(HttpICLReadCallback.java:94)
         at com.ibm.ws.tcp.channel.impl.WorkQueueManager.requestComplete(WorkQueueManager.java:548)
         at com.ibm.ws.tcp.channel.impl.WorkQueueManager.attemptIO(WorkQueueManager.java:601)
         at com.ibm.ws.tcp.channel.impl.WorkQueueManager.workerRun(WorkQueueManager.java:934)
         at com.ibm.ws.tcp.channel.impl.WorkQueueManager$Worker.run(WorkQueueManager.java:1021)
         at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:1332)
    6)in JMSAdmin.config file the propertied used are :
    INITIAL_CONTEXT_FACTORY=com.sun.jndi.fscontext.RefFSContextFactory
    PROVIDER_URL=file:C:/JNDI-Directory
    Help in resolving this is appreciated.
    Thanx in Advance,
    Sanjeev Kumar

  • JMS Listener within a workflow

    I have a JMS listener, waiting for new messages on a queue. Once there is a new message it uses that message which contains an object to begin the work flow process. The first step in the work flow calls an external engine we built that does quite a bit. At each critical point in the engine it adds a message to a topic. I want to have a listener for each one of the steps that will listen for the results to be added to the topic. Once it's there if everything is good go to the next listener and wait for the next result set. If it's bad I want to take the results and send the message to another queue and end that work flow. I'm not having much luck finding how to put a listener within the work flow. I have the listener that starts the process going fine using a Global Automatic event.
    I thought the best solution would be do a subflow process at each points of them listeners. Have another global automatic event listener waiting which will then start the subflow process which stores the results and then returns which step to take back to the original process. But that didn't work it was completing all of the subflow's w/o waiting for a listener to find a message. So nothing ended up happening.
    Any help?

    That's what I figured with that global interactive I was trying to access the instance variables before so it wasn't showing up under my user. Now instead of an error pop up the error message shows up at the bottom of the runtime UI.
    Error at bottom of page: (Followed by a bunch of package names)
    Unexpected Error
    javax.faces.el.EvaluationException: /jsf/menu/menuActionNormal.xhtml @24,147 onActivate="#{componentBean.doExecuteAction}": fuego.papi.exception.InvalidTaskNumberException: Invalid task number '0' for activity '/Manager#Default-1.0/Global'.
    Warning in the Log:
    There was an error when trying to obtain the environement information: null
    Application: Engine, Module: Main, Thread: <0> StartUpServerIt gives me the top error when I have the notification set up to receive an external notification and gives me the warning for both cases either external notification or internal event. Its an internal event but in the documentation it never covers internal event situations for NotificationWait so I tried both.
    Another thing is when I have 2 or more instances waiting at the wait how does it know which one to go too? In the real example it will be receiving an object from the thread that will have an id number. But in this little test set up how does it know which instance the global activity is for?

  • After 10g Upgrade, Unable to start apps listener.

    1. Apps 11.5.10.2 DB 9.2.0.8
    2. Successfully upgraded DB to 10.2.0 (Metalink Note: 362203.1)
    3. Ran ADCONFIG on DB successfully
    4. Ran ADCONFIG on Apps successfully.
    5. Restarted Server
    All services started successfully except
    1. Apps Listener
    2. Report Server
    3. Concurrent Manager
    Further investigation reveals the issue is with Apps Listener. When I start apps listener manually ...
    E:\oracle\prodcomn\admin\scripts\PROD_r12srvr>adalnctl start apps/fumble
    ECHO is off.
    ECHO is off.
    Mon 05/12/2008 08:14 PM
    ECHO is off.
    The environment settings are as follows ...
    ECHO is off.
    ORACLE_HOME : e:\oracle\prodora2\8.0.6
    LOCAL : PROD
    ORACLE_SID :
    PATH : e:\oracle\prodora2\8.0.6\bin;c:\jdk13\bin;e:\oracle\prodora2\8.0.6\bin;c:\jdk13\bin;e:\oracle\prodappl\au\11.5.0\bin;e:
    \oracle\prodappl\fnd\11.5.0\bin;e:\oracle\prodappl\ad\11.5.0\bin;E:\oracle\prodora2\iAS\appsoui\jre\1.3.1\bin;E:\oracle\prodora2\iAS\Apache\
    perl\5.00503\bin\MSWin32-x86\;e:\oracle\prodcomn\util\unzip\unzip;e:\oracle\prodora2\8.0.6\bin;c:\jdk13\bin;C:\vscommon\msdev98\BIN;c:\vc8\B
    IN;C:\vscommon\TOOLS\WINNT;C:\vscommon\TOOLS;e:\oracle\prodappl\au\11.5.0\bin;e:\oracle\prodappl\fnd\11.5.0\bin;e:\oracle\prodappl\ad\11.5.0
    \bin;E:\oracle\prodora2\iAS\appsoui\jre\1.3.1\bin;E:\oracle\prodora2\iAS\Apache\perl\5.00503\bin\MSWin32-x86\;e:\oracle\prodcomn\util\unzip\
    unzip;e:\oracle\prodora2\8.0.6\bin;c:\jdk13\bin;C:\MKS\bin\x11;C:\vscommon\Tools\WinNT;C:\vscommon\MSDev98\Bin;C:\vscommon\Tools;c:\vc8\bin;
    c:\mks\mksnt;c:\mks\bin;c:\jdk13;c:\r11itools;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\system32\wbem;
    LD_LIBRARY_PATH : e:\oracle\prodora2\8.0.6\lib
    ECHO is off.
    ECHO is off.
    Starting listener process "APPS_PROD" ...
    ECHO is off.
    LSNRCTL80 for 32-bit Windows: Version 8.0.6.3.0 - Production on 12-MAY-2008 20:14:58
    (c) Copyright 1999 Oracle Corporation. All rights reserved.
    Connecting to (ADDRESS=(PROTOCOL=TCP)(Host=r12srvr)(Port=1627))
    TNS-12224: TNS:no listener
    TNS-12541: TNS:no listener
    TNS-12560: TNS:protocol adapter error
    TNS-00511: No listener
    32-bit Windows Error: 61: Unknown error
    LSNRCTL80 for 32-bit Windows: Version 8.0.6.3.0 - Production on 12-MAY-2008 20:15:00
    (c) Copyright 1999 Oracle Corporation. All rights reserved.
    Starting tnslsnr80: please wait...
    Service OraclePRODOra806_3TNSListener80APPS_PROD start pending.
    Service OraclePRODOra806_3TNSListener80APPS_PROD started.
    TNS-12560: TNS:protocol adapter error
    adalnctl.cmd exiting with status 3
    The error 3 means "The system cannot find the path specified".
    Anyone! Please help me. It is very very urgent.
    Thanks in advance.
    S. Sundar

    This is Oracle Apps. Did you check all requirements before upgrading only the database layer to 10g?
    You may need to change your start/stop scripts to reflect the changes to the database layer (listener ports etc).
    E-Business Suite Forum?
    http://forums.oracle.com/forums/category.jspa?categoryID=3

  • BPM for WebLogic 10.3 JMS listener problem: SecurityException

    Hi!
    I have a BPM 10.3 engine running on WebLogic 10.3 and a BPM process that uses JMS listener global automatic activity. The JMS queue is located in a WebLogic 8.1 server.
    The global activity receives a message and tries to create a new process instance. At runtime a strange error occurs (see below). If I just log the message and comment the process creation out, the message is successfully consumed, but with the creation part it is not. The process creation itself is not the problem because other message listeners that call other process activities fail with similar errors.
    Btw, it's working in Studio, but not in WL10.
    Could someone explain me what happens and how to fix it?
    Have I misconfigured something?
    Thanks in advance,
    Jaanus
    The BPM engine log:
    The task could not be successfully executed.
    Reason: 'fuego.papi.exception.ActivityFailedException: Activity '/MyProcess#Default-1.0/Begin[Begin]' task 'BeginIn' could not execute successfully.
    Detail:Method: 'BeginIn', Exception: 'Process execution engine execution error.'
    Caused by: Activity '/MyProcess#Default-1.0/Begin[Begin]' task 'BeginIn' could not execute successfully.
    Detail:Method: 'BeginIn', Exception: 'Process execution engine execution error.'
    Caused by: Process execution engine execution error.
    Caused by: Connector [TrinityEngine_J2EE_RUNTIME_FUEGOLABS_ARG:SQL:REMOTE_JDBC] caused an exception when getting a resource of type [0].
    Detail:Connector [TrinityEngine_J2EE_RUNTIME_FUEGOLABS_ARG:SQL:REMOTE_JDBC] caused an exception when getting a resource of type [0].
    Caused by: [Security:090398]Invalid Subject: principals=[weblogic, Administrators]
    fuego.lang.ComponentExecutionException: The task could not be successfully executed.
    Reason: 'fuego.papi.exception.ActivityFailedException: Activity '/MyProcess#Default-1.0/Begin[Begin]' task 'BeginIn' could not execute successfully.
    Detail:Method: 'BeginIn', Exception: 'Process execution engine execution error.'
         at fuego.server.execution.EngineExecutionContext.invokeMethodAsCil(EngineExecutionContext.java:1094)
         at fuego.server.execution.EngineExecutionContext.runCil(EngineExecutionContext.java:1280)
         at fuego.server.execution.GlobalAutomaticJMSListeningHelper.executeJmsListener(GlobalAutomaticJMSListeningHelper.java:94)
         at fuego.server.AbstractProcessBean$45.execute(AbstractProcessBean.java:3017)
         at fuego.server.execution.DefaultEngineExecution$AtomicExecutionTA.runTransaction(DefaultEngineExecution.java:304)
         at fuego.transaction.TransactionAction.startBaseTransaction(TransactionAction.java:470)
         at fuego.transaction.TransactionAction.startTransaction(TransactionAction.java:551)
         at fuego.transaction.TransactionAction.start(TransactionAction.java:212)
         at fuego.server.execution.DefaultEngineExecution.executeImmediate(DefaultEngineExecution.java:123)
         at fuego.server.execution.EngineExecution.executeImmediate(EngineExecution.java:66)
         at fuego.server.AbstractProcessBean.runGlobalJmsActivity(AbstractProcessBean.java:3023)
         at fuego.server.execution.GlobalJMSExecutor$1.run(GlobalJMSExecutor.java:113)
         at fuego.ejbengine.EJBProcessBean.executeTask(EJBProcessBean.java:147)
         at fuego.server.execution.GlobalJMSExecutor.execute(GlobalJMSExecutor.java:105)
         at fuego.ejbengine.EJBGlobalJMSExecutor.access$400(EJBGlobalJMSExecutor.java:43)
         at fuego.ejbengine.EJBGlobalJMSExecutor$JMSExecutorWorker.run(EJBGlobalJMSExecutor.java:213)
         at java.lang.Thread.run(Thread.java:619)
    Caused by: fuego.papi.exception.ActivityFailedException: Activity '/MyProcess#Default-1.0/Begin[Begin]' task 'BeginIn' could not execute successfully.
    Detail:Method: 'BeginIn', Exception: 'Process execution engine execution error.'
         at fuego.papi.exception.ActivityFailedException.create(ActivityFailedException.java:66)
         at fuego.server.AbstractProcessBean.createActivityFailedException(AbstractProcessBean.java:3690)
         at fuego.server.AbstractProcessBean.internalCreateInstance(AbstractProcessBean.java:4326)
         at fuego.server.AbstractProcessBean._doCreateInstance(AbstractProcessBean.java:3650)
         at fuego.server.AbstractProcessBean.createInstance(AbstractProcessBean.java:665)
         at fuego.server.AbstractProcessBean.createInstance(AbstractProcessBean.java:736)
         at fuego.components.Process.createInstance(Process.java:106)
         at fuego.components.ProcessInstance.create(ProcessInstance.java:392)
         at fuego.components.ProcessInstance.create(ProcessInstance.java:503)
         at oracle.MyProcess.Default_1_0.Instance.CIL_ootaJMSSonumit(Instance.xcdl:12)
         at sun.reflect.GeneratedMethodAccessor132.invoke(Unknown Source)
         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
         at java.lang.reflect.Method.invoke(Method.java:597)
         at fuego.server.execution.EngineExecutionContext.invokeMethodAsCil(EngineExecutionContext.java:1085)
         ... 16 more
    Caused by: fuego.papi.impl.EngineExecutionException: Process execution engine execution error.
         at fuego.server.execution.DefaultEngineExecution.executeImmediate(DefaultEngineExecution.java:139)
         at fuego.server.execution.EngineExecution.executeImmediate(EngineExecution.java:66)
         at fuego.server.AbstractProcessBean.internalCreateInstance(AbstractProcessBean.java:4320)
         ... 27 more
    Caused by: class fuego.lang.RuntimeExceptionShell ->> fuego.connector.ConnectorException: Connector [TrinityEngine_J2EE_RUNTIME_FUEGOLABS_ARG:SQL:REMOTE_JDBC] caused an exception when getting a resource of type [0].
    Detail:Connector [TrinityEngine_J2EE_RUNTIME_FUEGOLABS_ARG:SQL:REMOTE_JDBC] caused an exception when getting a resource of type [0].
         at fuego.server.service.EngineConnectorService.getConnection(EngineConnectorService.java:581)
         at fuego.server.service.EngineConnectorService.getEngineConnection(EngineConnectorService.java:300)
         at fuego.transaction.TransactionAction.getEngineHandle(TransactionAction.java:179)
         at fuego.server.execution.EngineExecutionContext.getEngineHandle(EngineExecutionContext.java:443)
         at fuego.server.AbstractInstanceService.create(AbstractInstanceService.java:302)
         at fuego.server.execution.microactivity.BeginMicroActivity.createInstance(BeginMicroActivity.java:95)
         at fuego.server.AbstractProcessBean$53.execute(AbstractProcessBean.java:3642)
         at fuego.server.execution.DefaultEngineExecution$AtomicExecutionTA.runTransaction(DefaultEngineExecution.java:304)
         at fuego.transaction.TransactionAction.startNestedTransaction(TransactionAction.java:527)
         at fuego.transaction.TransactionAction.startTransaction(TransactionAction.java:548)
         at fuego.transaction.TransactionAction.start(TransactionAction.java:213)
         at fuego.server.execution.DefaultEngineExecution.executeImmediate(DefaultEngineExecution.java:125)
         at fuego.server.execution.EngineExecution.executeImmediate(EngineExecution.java:66)
         at fuego.server.AbstractProcessBean.internalCreateInstance(AbstractProcessBean.java:4320)
         at fuego.server.AbstractProcessBean._doCreateInstance(AbstractProcessBean.java:3650)
         at fuego.server.AbstractProcessBean.createInstance(AbstractProcessBean.java:665)
         at fuego.server.AbstractProcessBean.createInstance(AbstractProcessBean.java:736)
         at fuego.components.Process.createInstance(Process.java:106)
         at fuego.components.ProcessInstance.create(ProcessInstance.java:392)
         at fuego.components.ProcessInstance.create(ProcessInstance.java:503)
         at oracle.MyProcess.Default_1_0.Instance.CIL_ootaJMSSonumit(Instance.xcdl:12)
         at sun.reflect.GeneratedMethodAccessor132.invoke(Unknown Source)
         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
         at java.lang.reflect.Method.invoke(Method.java:597)
         at fuego.server.execution.EngineExecutionContext.invokeMethodAsCil(EngineExecutionContext.java:1085)
         at fuego.server.execution.EngineExecutionContext.runCil(EngineExecutionContext.java:1280)
         at fuego.server.execution.GlobalAutomaticJMSListeningHelper.executeJmsListener(GlobalAutomaticJMSListeningHelper.java:94)
         at fuego.server.AbstractProcessBean$45.execute(AbstractProcessBean.java:3017)
         at fuego.server.execution.DefaultEngineExecution$AtomicExecutionTA.runTransaction(DefaultEngineExecution.java:304)
         at fuego.transaction.TransactionAction.startBaseTransaction(TransactionAction.java:472)
         at fuego.transaction.TransactionAction.startTransaction(TransactionAction.java:551)
         at fuego.transaction.TransactionAction.start(TransactionAction.java:213)
         at fuego.server.execution.DefaultEngineExecution.executeImmediate(DefaultEngineExecution.java:125)
         ... 8 more
    Caused by: fuego.connector.ConnectorException: Connector [TrinityEngine_J2EE_RUNTIME_FUEGOLABS_ARG:SQL:REMOTE_JDBC] caused an exception when getting a resource of type [0].
    Detail:Connector [TrinityEngine_J2EE_RUNTIME_FUEGOLABS_ARG:SQL:REMOTE_JDBC] caused an exception when getting a resource of type [0].
         at fuego.connector.ConnectorException.exceptionOnGetResource(ConnectorException.java:95)
         at fuego.connector.ConnectorTransaction.getResource(ConnectorTransaction.java:324)
         at fuego.connector.ConnectorTransaction.getResource(ConnectorTransaction.java:298)
         at fuego.connector.JDBCHelper.getConnection(JDBCHelper.java:41)
         at fuego.server.service.EngineConnectorService.getConnection(EngineConnectorService.java:578)
         at fuego.server.service.EngineConnectorService.getEngineConnection(EngineConnectorService.java:300)
         at fuego.transaction.TransactionAction.getEngineHandle(TransactionAction.java:179)
         at fuego.server.execution.EngineExecutionContext.getEngineHandle(EngineExecutionContext.java:443)
         at fuego.server.AbstractInstanceService.create(AbstractInstanceService.java:302)
         at fuego.server.execution.microactivity.BeginMicroActivity.createInstance(BeginMicroActivity.java:91)
         at fuego.server.AbstractProcessBean$53.execute(AbstractProcessBean.java:3642)
         at fuego.server.execution.DefaultEngineExecution$AtomicExecutionTA.runTransaction(DefaultEngineExecution.java:304)
         at fuego.transaction.TransactionAction.startNestedTransaction(TransactionAction.java:527)
         at fuego.transaction.TransactionAction.startTransaction(TransactionAction.java:548)
         at fuego.transaction.TransactionAction.start(TransactionAction.java:212)
         at fuego.server.execution.DefaultEngineExecution.executeImmediate(DefaultEngineExecution.java:123)
         at fuego.server.execution.EngineExecution.executeImmediate(EngineExecution.java:66)
         at fuego.server.AbstractProcessBean.internalCreateInstance(AbstractProcessBean.java:4320)
         at fuego.server.AbstractProcessBean._doCreateInstance(AbstractProcessBean.java:3650)
         at fuego.server.AbstractProcessBean.createInstance(AbstractProcessBean.java:665)
         at fuego.server.AbstractProcessBean.createInstance(AbstractProcessBean.java:736)
         at fuego.components.Process.createInstance(Process.java:106)
         at fuego.components.ProcessInstance.create(ProcessInstance.java:392)
         at fuego.components.ProcessInstance.create(ProcessInstance.java:503)
         at oracle.MyProcess.Default_1_0.Instance.CIL_ootaJMSSonumit(Instance.xcdl:12)
         at sun.reflect.GeneratedMethodAccessor132.invoke(Unknown Source)
         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
         at java.lang.reflect.Method.invoke(Method.java:597)
         at fuego.server.execution.EngineExecutionContext.invokeMethodAsCil(EngineExecutionContext.java:1085)
         at fuego.server.execution.EngineExecutionContext.runCil(EngineExecutionContext.java:1280)
         at fuego.server.execution.GlobalAutomaticJMSListeningHelper.executeJmsListener(GlobalAutomaticJMSListeningHelper.java:94)
         at fuego.server.AbstractProcessBean$45.execute(AbstractProcessBean.java:3017)
         at fuego.server.execution.DefaultEngineExecution$AtomicExecutionTA.runTransaction(DefaultEngineExecution.java:304)
         at fuego.transaction.TransactionAction.startBaseTransaction(TransactionAction.java:470)
         at fuego.transaction.TransactionAction.startTransaction(TransactionAction.java:551)
         at fuego.transaction.TransactionAction.start(TransactionAction.java:212)
         at fuego.server.execution.DefaultEngineExecution.executeImmediate(DefaultEngineExecution.java:123)
         ... 8 more
    Caused by: java.lang.SecurityException: [Security:090398]Invalid Subject: principals=[weblogic, Administrators]
         at weblogic.security.service.SecurityServiceManager.seal(Unknown Source)
         at weblogic.security.service.IdentityUtility.authenticatedSubjectToIdentity(Unknown Source)
         at weblogic.security.service.RoleManager.getRoles(Unknown Source)
         at weblogic.security.service.AuthorizationManager.isAccessAllowed(Unknown Source)
         at weblogic.jndi.internal.ServerNamingNode.checkPermission(ServerNamingNode.java:442)
         at weblogic.jndi.internal.ServerNamingNode.checkLookup(ServerNamingNode.java:423)
         at weblogic.jndi.internal.ServerNamingNode.lookupHere(ServerNamingNode.java:180)
         at weblogic.jndi.internal.BasicNamingNode.lookup(BasicNamingNode.java:206)
         at weblogic.jndi.internal.WLEventContextImpl.lookup(WLEventContextImpl.java:254)
         at weblogic.jndi.internal.WLContextImpl.lookup(WLContextImpl.java:380)
         at javax.naming.InitialContext.lookup(InitialContext.java:392)
         at fuego.connector.impl.BaseRemoteConnector.getReferencedObject(BaseRemoteConnector.java:116)
         at fuego.connector.impl.BaseRemoteConnector.getReferencedObject(BaseRemoteConnector.java:107)
         at fuego.connector.impl.RemoteJDBCConnector.getConnection(RemoteJDBCConnector.java:75)
         at fuego.connector.impl.RemoteJDBCConnector.getConnection(RemoteJDBCConnector.java:64)
         at fuego.connector.impl.RemoteJDBCConnector.getResource(RemoteJDBCConnector.java:147)
         at fuego.connector.ConnectorTransaction.getResource(ConnectorTransaction.java:319)
         ... 43 more

    I managed to solve the problem by configuring the domain's security settings on both WebLogic servers as follows:
    *) checked "Anonymous Admin Lookup Enabled",
    *) entered the same value to Advanced->Credential on both WLs.

  • Deadlock in TopLink when using JMS listener on WebLogic

    I am experiencing a deadlock in TopLink 10.1.3 on WebLogic 9 in code that previously worked on TopLink 9.0.4 with WebLogic 8.1. As such, I'm not sure if it's due to the TopLink change, the WebLogic change or both. Anyway, we have a JMS listener (note, NOT a MessageDrivenBean) that is updating an existing TopLink cached domaing object. The JMS listener thread gets stuck when attempting to commit the transaction. The thread-dump shows that there is another thread which is blocked in the ConcurrencyManager waiting to obtain the lock on an object which is being updated by the listener thread. It appears to me that the root cause is that the Synchronization.afterCompletion() listener is running on a different thread than the one which owns the locks which were obtained beforeCompletion.
    See stack traces.
    First, the message listener thread which is waiting for participants in the transaction to commit:
    "[ACTIVE] ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'" daemon prio=9 tid=0x3a4a4728 nid=0xa48 in Object.wait() [0x3a0cf000..0x3a0cfbec]
         at java.lang.Object.wait(Native Method)
         - waiting on <0x0c7a0908> (a weblogic.transaction.internal.ServerTransactionImpl)
         at weblogic.transaction.internal.ServerTransactionImpl.globalRetryCommit(ServerTransactionImpl.java:2665)
         - locked <0x0c7a0908> (a weblogic.transaction.internal.ServerTransactionImpl)
         at weblogic.transaction.internal.ServerTransactionImpl.globalCommit(ServerTransactionImpl.java:2570)
         at weblogic.transaction.internal.ServerTransactionImpl.internalCommit(ServerTransactionImpl.java:277)
         at weblogic.transaction.internal.ServerTransactionImpl.commit(ServerTransactionImpl.java:226)
         at weblogic.ejb.container.internal.BaseEJBObject.postInvoke1(BaseEJBObject.java:539)
         at weblogic.ejb.container.internal.StatelessEJBObject.postInvoke1(StatelessEJBObject.java:72)
         at weblogic.ejb.container.internal.BaseEJBObject.postInvokeTxRetry(BaseEJBObject.java:374)
         at com.avinamart.BusinessLogic.Bean.JobService.JobService_u1ylwo_EOImpl.submitJobAndRun(JobService_u1ylwo_EOImpl.java:1388)
         at com.avinamart.Framework.Event.Task.OptimizationTaskListener._submitAsAJob(OptimizationTaskListener.java:253)
         at com.avinamart.Framework.Event.Task.OptimizationTaskListener._submitAsAJob(OptimizationTaskListener.java:217)
         at com.avinamart.Framework.Event.Task.OptimizationTaskListener.processMessage(OptimizationTaskListener.java:344)
         at com.emptoris.base.event.EPASSMessageBaseListener.onMessage(EPASSMessageBaseListener.java:722)
         at weblogic.jms.client.JMSSession.onMessage(JMSSession.java:3824)
         at weblogic.jms.client.JMSSession.execute(JMSSession.java:3738)
         at weblogic.jms.client.JMSSession.pushMessage(JMSSession.java:3253)
         at weblogic.jms.client.JMSSession.invoke(JMSSession.java:4195)
         at weblogic.messaging.dispatcher.Request.wrappedFiniteStateMachine(Request.java:674)
         at weblogic.messaging.dispatcher.DispatcherServerRef.invoke(DispatcherServerRef.java:262)
         at weblogic.messaging.dispatcher.DispatcherServerRef.handleRequest(DispatcherServerRef.java:134)
         at weblogic.messaging.dispatcher.DispatcherServerRef.access$000(DispatcherServerRef.java:36)
         at weblogic.messaging.dispatcher.DispatcherServerRef$1.run(DispatcherServerRef.java:105)
         at weblogic.work.ExecuteThread.execute(ExecuteThread.java:207)
         at weblogic.work.ExecuteThread.run(ExecuteThread.java:179)
    Next, the other thread which is participating in the transaction which is stuck:
    "[ACTIVE] ExecuteThread: '2' for queue: 'weblogic.kernel.Default (self-tuning)'" daemon prio=5 tid=0x3adb80a0 nid=0xb30 in Object.wait() [0x3c7af000..0x3c7afd6c]
         at java.lang.Object.wait(Native Method)
         - waiting on <0x0c7a0000> (a oracle.toplink.internal.helper.ConcurrencyManager)
         at java.lang.Object.wait(Object.java:474)
         at oracle.toplink.internal.helper.ConcurrencyManager.acquire(ConcurrencyManager.java:76)
         - locked <0x0c7a0000> (a oracle.toplink.internal.helper.ConcurrencyManager)
         at oracle.toplink.internal.identitymaps.CacheKey.acquire(CacheKey.java:80)
         at oracle.toplink.internal.identitymaps.FullIdentityMap.remove(FullIdentityMap.java:164)
         at oracle.toplink.internal.identitymaps.HardCacheWeakIdentityMap.remove(HardCacheWeakIdentityMap.java:82)
         at oracle.toplink.internal.helper.WriteLockManager.releaseAllAcquiredLocks(WriteLockManager.java:363)
         at oracle.toplink.publicinterface.UnitOfWork.afterTransaction(UnitOfWork.java:2123)
         at oracle.toplink.transaction.AbstractSynchronizationListener.afterCompletion(AbstractSynchronizationListener.java:135)
         at oracle.toplink.transaction.JTASynchronizationListener.afterCompletion(JTASynchronizationListener.java:66)
         at weblogic.transaction.internal.ServerSCInfo.callAfterCompletions(ServerSCInfo.java:862)
         at weblogic.transaction.internal.ServerTransactionImpl.callAfterCompletions(ServerTransactionImpl.java:2913)
         at weblogic.transaction.internal.ServerTransactionImpl.afterCommittedStateHousekeeping(ServerTransactionImpl.java:2806)
         at weblogic.transaction.internal.ServerTransactionImpl.setCommittedUnsync(ServerTransactionImpl.java:2857)
         at weblogic.transaction.internal.ServerTransactionImpl.ackCommit(ServerTransactionImpl.java:1097)
         - locked <0x0c7a0908> (a weblogic.transaction.internal.ServerTransactionImpl)
         at weblogic.transaction.internal.CoordinatorImpl.ackCommit(CoordinatorImpl.java:211)
         at weblogic.transaction.internal.CoordinatorImpl_WLSkel.invoke(Unknown Source)
         at weblogic.rmi.internal.BasicServerRef.invoke(BasicServerRef.java:517)
         at weblogic.rmi.internal.BasicServerRef$1.run(BasicServerRef.java:407)
         at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:363)
         at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:147)
         at weblogic.rmi.internal.BasicServerRef.handleRequest(BasicServerRef.java:403)
         at weblogic.rmi.internal.BasicServerRef.access$300(BasicServerRef.java:56)
         at weblogic.rmi.internal.BasicServerRef$BasicExecuteRequest.run(BasicServerRef.java:934)
         at weblogic.work.ExecuteThread.execute(ExecuteThread.java:207)
         at weblogic.work.ExecuteThread.run(ExecuteThread.java:179)
    Is this the same concurrency bug which was fixed in 10.1.3.1??? As I am writing this, I am attempting to build the application with the updated TopLink jar to test for myself. Has anyone else seen this scenario with WebLogic? I should also point out that the problem only occurs when the listener is running on a separate server than the one hosting the JMS queue it reads from. It may be that when the listener runs on the same server, it does not use multiple threads in the transaction.
    Any ideas are greatly appreciated.
    - Bruno

    We've got the same kind of issue with toplink 10.1.3.0.0 and bea weblogic 8.1 SP5.
    I 've not tried with 10.1.3.1.0, did you?
    Do you have a new status for this issue.
    Chris

  • How to notify the exceptions in JMS sychronous request-response processing?

              Hi All,
              Pl. help me with ur expertise in the foll. scenario we are facing.
              Scenario:
              I have a requirement where I need to notify the exceptions to my client while
              the client request's are processed asynchronously and my client is waiting in
              synchronous for the response.
              The client is sending a message to one queue (QueueA) and waiting for response
              in another queue (QueueB). The message from "QueueA" is picked up by a MDB listening
              to "QueueA" and it throws an exception while processing some "business logic".
              In this case how do I notify to my client who is waiting in another queue. i.e.
              "QueueB" that there is an exception occurred while processing the business logic.
              I am using JMSCorrelationID to uniquely identify a response for a request sent
              by the client.
              What are the possible options to handle exceptions in JMS for an implementation
              like the one mentioned above.
              Any comments/feedback/pointers will be REALLY REALLY appreciated.
              Tks and regds
              C R Baradwaj
              

              Raghuram Bharadwaj C wrote:
              > Tom,
              >
              > Once again thanks a lot for your prompt response!
              >
              > Yes, A Knows how many downstream queues are involved.
              >
              > For unanticipated multiple responses
              >
              > If I do a select for update in all the MDB's listening to "QueueB/QueueC/QueueD",
              > only one response message will be sent to the "ResponseQ".
              Does this run the risk of serializing the database access? If
              B/C/D have no messages so that a new operation causes all
              three to fire at once, will they end up serializing on their
              respective selectForUpdate calls, losing parallelism?
              >
              > The response from all the datasource(s) are updated in the database by the MDB.
              > The MDB which updates the database last will consolidate all the response(s) and
              > send one final response to the "ResponseQ".
              >
              > This will be picked up the client who is waiting in the "ResponseQ". There wont
              > be multiple message(s) placed in the "ResponseQ".
              >
              > In this situation, How do I handle exceptions that occur in downstream MDB's?
              Use multiple responses. MDB's send error message on response.
              Or have failing MDB put an error message in the database table, so
              that the final responder can read the error message?
              >
              > Many Thanks in Advance,
              > C R Baradwaj
              >
              >
              >
              >
              >
              >
              >
              >
              >
              >
              > Tom Barnes <[email protected]> wrote:
              >
              >>
              >>Raghuram Bharadwaj C wrote:
              >>
              >>>Thanks tom for your support!
              >>>
              >>>Let me explain more about the problem.
              >>>
              >>>Scenario
              >>>========
              >>>Lets take a simplest case where the client is sending a message to
              >>
              >>"QueueA" and
              >>
              >>>he is now waiting for a response in the "ResponseQ"
              >>>
              >>>The MDB listening to "QueueA" wakes up and split the message(s) into
              >>
              >>three and
              >>
              >>>passing it to the next layer of datasource specific queue(s). The queue(s)
              >>
              >>are
              >>
              >>>"QueueB", "QueueC" and "QueueD".
              >>>
              >>>The MDB listening to the datasource specific queue(s) picks up the
              >>
              >>datasource
              >>
              >>>request sends it to the datasource and gets the response back from
              >>
              >>the datasource.
              >>
              >>>The MDB also updates a table in the database with the response. The
              >>
              >>MDB also check(s)
              >>
              >>>after updating the database to see all response(s) from all the datasource(s)
              >>>are reached. If yes, one of the MDB also sends a acknowledgement to
              >>
              >>the "ResponseQ".
              >>
              >>>
              >>>The client listening to the "ResponseQ" gets the acknowledgement and
              >>
              >>hit the database
              >>
              >>>to collect all the response(s) from all the datasource(s). These response(s)
              >>
              >>are
              >>
              >>>formatted and sent a response to the client. We have also created uniqueid
              >>
              >>for
              >>
              >>>identifying each request. This uniqueid is set in the JMSCorrelationID.
              >>
              >>The client
              >>
              >>>uses the uniqueid to collect all the response(s) for the request he
              >>
              >>had sent.
              >>
              >>>Problem
              >>>=======
              >>>If an error/exception occurred in a one of the MDB which is listening
              >>
              >>to QueueB/QueueC/QueueD.
              >>
              >>>How do we handle this?
              >>>
              >>>Please let me know all the possibilities that you would have done in
              >>
              >>this case.
              >>
              >>>
              >>Does A know how many downstream queues are involved? As part of its
              >>transaction it can send a message to the responseQ stating which
              >>queues to expect responses from. The client gets this message
              >>and knows that it must get responses from all of B, C, D, etc.
              >>before assuming success. On a failure, B, C, D, etc. can send
              >>an error message back to the response Q, or the client can
              >>simply timeout.
              >>
              >>This way there are no race conditions
              >>involving unanticipated multiple responses or missing
              >>responses, which I think the
              >>algorithm you mention above can create.
              >>Assuming just B and C (no D):
              >> B detects C is done by checking the DB
              >> C detects B is done by checking the DB **at the same time**
              >> Two response messages get sent
              >> - or -
              >> B finishes detects C not done, and sends no message.
              >> C finishes, B is finished but not reflected in DB yet, sends
              >> no message.
              >>
              >>NOTE: Be aware that when a transaction commits, different
              >>resources can response "faster" than others. The transaction
              >>monitor has no control over this. So, if as part of the
              >>same commit, a database insert and a queue insert is
              >>performed, it is possible for a consumer to receive the
              >>new message BEFORE the new database insert actually completes.
              >>
              >>
              >>>
              >>>Many Thanks in Advance,
              >>>
              >>>C R Baradwaj
              >>>
              >>>
              >>>
              >>>
              >>>
              >>>
              >>>
              >>>
              >>>Assuming that
              >>>
              >>>Tom Barnes <[email protected]> wrote:
              >>>
              >>>
              >>>>One approach is to send an "error" message to QB that uses
              >>>>the JMSCorrelationID the consumer is expecting. This will
              >>>>wake up the consumer, and the consumer can react to
              >>>>the error as needed.
              >>>>
              >>>>Another is to use two asynchronous listeners, one on the
              >>>>response queue, and one on a temporary (client created)
              >>>>queue. On error detection the MDB can send error messages
              >>>>to the temporary queue.
              >>>>
              >>>>You may want to skim the book "Professional JMS" - as I
              >>>>recall, it contains a section on queueing design patterns.
              >>>>
              >>>>Tom
              >>>>
              >>>>Raghuram Bharadwaj C wrote:
              >>>>
              >>>>
              >>>>
              >>>>>Hi All,
              >>>>>
              >>>>>Pl. help me with ur expertise in the foll. scenario we are facing.
              >>>>>
              >>>>>Scenario:
              >>>>>I have a requirement where I need to notify the exceptions to my client
              >>>>
              >>>>while
              >>>>
              >>>>
              >>>>>the client request's are processed asynchronously and my client is
              >>>>
              >>>>waiting in
              >>>>
              >>>>
              >>>>>synchronous for the response.
              >>>>>
              >>>>>The client is sending a message to one queue (QueueA) and waiting
              >>
              >>for
              >>
              >>>>response
              >>>>
              >>>>
              >>>>>in another queue (QueueB). The message from "QueueA" is picked up
              >>
              >>by
              >>
              >>>>a MDB listening
              >>>>
              >>>>
              >>>>>to "QueueA" and it throws an exception while processing some "business
              >>>>
              >>>>logic".
              >>>>
              >>>>
              >>>>>In this case how do I notify to my client who is waiting in another
              >>>>
              >>>>queue. i.e.
              >>>>
              >>>>
              >>>>>"QueueB" that there is an exception occurred while processing the
              >>
              >>business
              >>
              >>>>logic.
              >>>>
              >>>>
              >>>>>I am using JMSCorrelationID to uniquely identify a response for a
              >>
              >>request
              >>
              >>>>sent
              >>>>
              >>>>
              >>>>>by the client.
              >>>>>
              >>>>>What are the possible options to handle exceptions in JMS for an implementation
              >>>>>like the one mentioned above.
              >>>>>
              >>>>>Any comments/feedback/pointers will be REALLY REALLY appreciated.
              >>>>>
              >>>>>Tks and regds
              >>>>>C R Baradwaj
              >>>>
              >
              

  • Error starting JMS-Server

    I get an exception in starting OC4J (oc4j_extended_1013_dp4.zip file, version 10.1.3)
    java -jar oc4j.jar
    (SEVERE) Failed to set the internal configuration of the OC4J JMS Server with:
    XMLJMSServerConfig[file:/C:/oc4j_1013/j2ee/home/config/jms.xml]
    Error starting JMS-Server...
    On my computer I succeeded to start the same OC4J ok, but on other 2 computers I get the same exception.
    What can be the problem?
    Thanks.

    The OC4J instance that is having the problem may have .lock file issues. Some quotes from the JMS chapter of the services guide:
    If OC4J terminates normally, then the lock files are cleaned up automatically. However, if OC4J terminates abnormally, for example, a kill -9 command, then the lock files remain in the file system. OC4J can usually recognize leftover lock files. If not, you must manually remove lock files before restarting OC4J after abnormal termination.
    JMS persistence lock files are tagged with (contain) server and persistence directory location info. If the lock file exists when the JMS server starts, and the lock file was created by the same server (having the same ip address) and using the same persistence directory location, then the JMS server will assume control of the lock file and start up successfully.
    If, for some reason, the jms.state file itself is corrupted, then the only recourse is to delete it, with the attendant loss of all pending transactions - that is, transactions that have been committed, but the commits not yet performed by all individual destination objects participating in the transactions.
    Note that the use of an IP address can cause issues if you have abnormal terminations and are using DHCP (so next time you start OC4J you also have a new IP address). There was also an issue in the dev preview versions if you are running on MS-Windows where the .lock files would not be automatically deleted on normal shut down - even if you have since moved to the release version, the old .lock files may still be there.

  • Failure: WebModule[/amserver]: WEB2680: Exception starting filter amlcontro

    We have installed JES2005Q1 on solaris 10, and it worked well. But after setting some configrations on WEB server admin console and apply changes, the server.xml has been changed automatically, returning to original unconfigured version, many items such as /amserver,/amconsole lost. Then we fix this problem as following steps:
    1.We insert these lost items(/amserver,/amconsole, etc) into server.xml, and restart.
    2.It prompted that some classes can not found. Then we add these related jar(all jars under SUNWam/lib) to "Classpath Suffix" on admin console, restart.
    3.It still throw exception during the loading of /amserver, the output on console when the exception occured is attached.
    4.Then we do not know how to go on without detailed prompt about the exception.
    **********************************************copyed from solaris console begin************************************
    # ./start
    Sun ONE Web Server 6.1SP4 B12/16/2004 11:42
    info: CORE3016: daemon is running as super-user
    info: CORE5076: Using [Java HotSpot(TM) Server VM, Version 1.5.0_01] from [Sun Microsystems Inc.]
    info: WEB0100: Loading web module in virtual server [https-tspportal.gdsoftpark.com] at []
    info: WEB0100: Loading web module in virtual server [https-tspportal.gdsoftpark.com] at [amconsole]
    warning: WEB6100: locale-charset-info is deprecated, please use parameter-encoding
    info: WEB0100: Loading web module in virtual server [https-tspportal.gdsoftpark.com] at [amserver]
    warning: WEB6100: locale-charset-info is deprecated, please use parameter-encoding
    info: WEB0100: Loading web module in virtual server [https-tspportal.gdsoftpark.com] at [ampassword]
    warning: WEB6100: locale-charset-info is deprecated, please use parameter-encoding
    info: WEB0100: Loading web module in virtual server [https-tspportal.gdsoftpark.com] at [amcommon]
    info: WEB0100: Loading web module in virtual server [https-tspportal.gdsoftpark.com] at [search]
    failure: WebModule[amserver]: WEB2680: Exception starting filter amlcontroller
    java.lang.NoClassDefFoundError
    at com.iplanet.services.ldap.LDAPUser.getPasswd(LDAPUser.java:117)
    at com.iplanet.services.ldap.ServerInstance.getPasswd(ServerInstance.java:128)
    at com.sun.identity.security.ServerInstanceAction.run(ServerInstanceAction.java:92)
    at java.security.AccessController.doPrivileged(Native Method)
    at com.iplanet.ums.DataLayer.getInstance(DataLayer.java:210)
    at com.sun.identity.sm.ldap.SMSLdapObject.initialize(SMSLdapObject.java:143)
    at com.sun.identity.sm.ldap.SMSLdapObject.<init>(SMSLdapObject.java:118)
    at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
    at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
    at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
    at java.lang.reflect.Constructor.newInstance(Constructor.java:494)
    at java.lang.Class.newInstance0(Class.java:350)
    at java.lang.Class.newInstance(Class.java:303)
    at com.sun.identity.sm.SMSEntry.<clinit>(SMSEntry.java:116)
    at com.sun.identity.sm.ServiceSchemaManager.<clinit>(ServiceSchemaManager.java:67)
    at com.iplanet.am.util.AMClientDetector.getServiceSchemaManager(AMClientDetector.java:219)
    at com.iplanet.am.util.AMClientDetector.<clinit>(AMClientDetector.java:94)
    at com.sun.mobile.filter.AMLController.init(AMLController.java:85)
    at org.apache.catalina.core.ApplicationFilterConfig.getFilter(ApplicationFilterConfig.java:262)
    at org.apache.catalina.core.ApplicationFilterConfig.setFilterDef(ApplicationFilterConfig.java:322)
    at org.apache.catalina.core.ApplicationFilterConfig.<init>(ApplicationFilterConfig.java:120)
    at org.apache.catalina.core.StandardContext.filterStart(StandardContext.java:3271)
    at org.apache.catalina.core.StandardContext.start(StandardContext.java:3747)
    at com.iplanet.ias.web.WebModule.start(WebModule.java:251)
    at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1133)
    at org.apache.catalina.core.StandardHost.start(StandardHost.java:652)
    at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1133)
    at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:355)
    at org.apache.catalina.startup.Embedded.start(Embedded.java:995)
    at com.iplanet.ias.web.WebContainer.start(WebContainer.java:431)
    at com.iplanet.ias.web.WebContainer.startInstance(WebContainer.java:500)
    at com.iplanet.ias.server.J2EERunner.confPostInit(J2EERunner.java:161)
    failure: WebModule[amserver]: WEB2705: Context startup failed due to previous errors
    info: HTTP3072: [LS ls1] http://tspportal.gdsoftpark.com:80 ready to accept requests
    startup: server started successfully
    **********************************************end************************************

    I have the same problem , I am using JES 2005Q4 on Redhat LE 3 AS, I have tried to remove the access manager and reinstall it again , but the same problem still, also I have re install the mobile access packages again (--force) but it does not fix my problem.
    Is there is any recommednations ????
    Please update me on [email protected]
    the error message as follows :
    [17/Jan/2006:11:10:47] failure (11396):      WebModule[amserver]: WEB2680: Exception starting filter amlcontroller
         java.lang.ClassNotFoundException: com.sun.mobile.filter.AMLController
         at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1465)
         at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1301)
         at org.apache.catalina.core.ApplicationFilterConfig.getFilter(ApplicationFilterConfig.java:260)
         at org.apache.catalina.core.ApplicationFilterConfig.setFilterDef(ApplicationFilterConfig.java:322)
         at org.apache.catalina.core.ApplicationFilterConfig.<init>(ApplicationFilterConfig.java:120)
         at org.apache.catalina.core.StandardContext.filterStart(StandardContext.java:3271)
         at org.apache.catalina.core.StandardContext.start(StandardContext.java:3747)
         at com.iplanet.ias.web.WebModule.start(WebModule.java:251)
         at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1133)
         at org.apache.catalina.core.StandardHost.start(StandardHost.java:652)
         at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1133)
         at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:355)
         at org.apache.catalina.startup.Embedded.start(Embedded.java:995)
         at com.iplanet.ias.web.WebContainer.start(WebContainer.java:431)
         at com.iplanet.ias.web.WebContainer.startInstance(WebContainer.java:500)
         at com.iplanet.ias.server.J2EERunner.confPostInit(J2EERunner.java:161)
    [17/Jan/2006:11:10:47] failure (11396):      WebModule[amserver]: WEB2705: Context startup failed due to previous errors
    [17/Jan/2006:11:10:50] info (11396):      HTTP3072: [LS ls1] http://redhat.omnixco.com:90 ready to accept requests
    [17/Jan/2006:11:10:53] info (11396):      CORE3274: successful server startup

  • Could not start the listener with a domain user

    Hi all,
    I am working on Windows 2003 with Oracle 10.2.0.2 !
    With user "local system account", I can start the listener and I have no problems!
    after chaning the user that runs the listener from local system account to a domain user, I cannot start the listener again!
    (for the oracle service itself for the database, is it possible to change the user from local system to that domain user without problems)
    attached the error message when starting the listener with cmd.
    by starting the listener with the restart of the windows service, the listener crashed down after a few minutes
    do I have to set additional permissions for that domain user?
    thanks in advance
    Stefan
    C:\Documents and Settings\Administrator>lsnrctl start listener
    LSNRCTL for 32-bit Windows: Version 10.2.0.2.0 - Production on 17-JAN-2008 11:51:29
    Copyright (c) 1991, 2005, Oracle. All rights reserved.
    tnslsnr wird gestartet: Bitte warten...
    TNS-12537: TNS: Verbindung beendet
    TNS-12560: TNS: Fehler bei Protokolladapter
    TNS-00507: Verbindung beendet
    32-bit Windows Error: 109: Unknown error

    In this case I see three error messages:
    TNS-12537:     TNS:connection closed
    Cause:     "End of file" condition has been reached; partner has disconnected.
    Action:     None needed; this is an information message.
    TNS-12560:     TNS:protocol adapter error
    Cause:     A generic protocol adapter error occurred.
    Action:     Check addresses used for proper protocol specification. Before reporting this error, look at the error stack and check for lower level transport errors. For further details, turn on tracing and reexecute the operation. Turn off tracing when the operation is complete.
    TNS-00507:     Connection closed
    Cause:     Normal "end of file" condition has been reached; partner has disconnected.
    Action:     None needed; this is an information message.
    The most important is the tns-12560 error message, this means that an unsupported protocol exception was raised. Assuming you are using the same environment configuration when starting the listener with the local account and starting it with the domain authenticated user, then it has to do with permissions. Both the local administrator account and the domain authenticated user must belong to the ORA_DBA group, otherwise the user won't have enough privileges to start the listener.
    On the other hand, make sure the sqlnet.ora file includes this line:
    SQLNET.AUTHENTICATION_SERVICES= (NTS)
    If you use a domain user name, log on under a domain with username and password which has administrative privileges on each node
    ~ Madrid

  • JMS Listener Bug??

    I am implementing SIM 7.0 and have enabled a JMS Listener resource. The resource works well and we have no issues with it.
    The problem is when you try to edit the Synchronization policy for the JMS Listener and then cancel it without saving i.e.
    1. Select the JMS Listener
    2. Edit Synchronization Policy
    3. Cancel the dit, you need not change anything
    This throws a Task may have been deleted error. Can someone help me with solving this issue?
    I have been trying to raise this as a bug but have not been successful. Can someone help me with how to report a bug. I went to the Bugs Reporting page but could not determine the proper set of options to pick to report a bug with the JMS Listener resource on Sun IdM.

    That's what I figured with that global interactive I was trying to access the instance variables before so it wasn't showing up under my user. Now instead of an error pop up the error message shows up at the bottom of the runtime UI.
    Error at bottom of page: (Followed by a bunch of package names)
    Unexpected Error
    javax.faces.el.EvaluationException: /jsf/menu/menuActionNormal.xhtml @24,147 onActivate="#{componentBean.doExecuteAction}": fuego.papi.exception.InvalidTaskNumberException: Invalid task number '0' for activity '/Manager#Default-1.0/Global'.
    Warning in the Log:
    There was an error when trying to obtain the environement information: null
    Application: Engine, Module: Main, Thread: <0> StartUpServerIt gives me the top error when I have the notification set up to receive an external notification and gives me the warning for both cases either external notification or internal event. Its an internal event but in the documentation it never covers internal event situations for NotificationWait so I tried both.
    Another thing is when I have 2 or more instances waiting at the wait how does it know which one to go too? In the real example it will be receiving an object from the thread that will have an id number. But in this little test set up how does it know which instance the global activity is for?

  • A RunTime exception in JMS

              I am using weblogic server 6.0 service pack 2.
              The problem is in runtime exception in JMS.
              Here is an exception I am getting:
              java.lang.RuntimeException: Client possibly malfunctioning as RuntimeException thrown
              from the onMessage routine of the client
              at weblogic.jms.client.JMSSession.onMessage(JMSSession.java:1938)
              at weblogic.jms.client.JMSSession.run(JMSSession.java:881)
              at weblogic.jms.backend.BEServerSession.execute(BEServerSession.java:83)
              at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:137)
              at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:120)
              This occurs in the line
              >bsender = bsession.createSender(bqueue);
              of the class, in the onMessage method.
              What is the reason for the exception? What can be done to fix it? I just need to
              process several messages in parallel.
              I have a startup class RateQuoteJMSResponse, that calls JMS.
              This happens only when I have a message listeners pool. When I did not use the pool,
              it worked OK. But I want to allow processing messages in parallel, and as I understand,
              there is no other option except using ServerSessionPool.
              When I tried to do that just with QueueReceiver, it worked OK:
                        qreceiver = qsession.createReceiver (queue);
                        qreceiver.setMessageListener (this);
                        qcon.start();
              However, that way messages were not processed in parallel.
              Here is my code:
              package com.bbb.object.jms;
              import java.io.*;
              import java.util.*;
              import javax.jts.*;
              import javax.naming.*;
              import javax.jms.*;
              import com.bbb.object.*;
              import com.bbb.object.RateQuote.*;
              import org.apache.crimson.tree.*;
              import org.w3c.dom.*;
              import weblogic.jms.extensions.JMSHelper;
              import weblogic.jms.ServerSessionPoolFactory;
              public class RateQuoteJMSResponse implements MessageListener
                   private final static String JNDI_FACTORY="weblogic.jndi.WLInitialContextFactory";
                   private final static String JMS_FACTORY="weblogic.closs.jms.QueueConnectionFactory";
                   private final static String SESSION_POOL_FACTORY="weblogic.jms.ServerSessionPoolFactory:ClossJMSServer";
                   private final static int ALL_OCCUPIED = -1;
                   private static REServer servers [];
                   private static REServersThrottle throttle;
                   private QueueConnectionFactory qconFactory;
                   private QueueConnection qcon;
                   private QueueSession qsession;
                   private QueueSession bsession;
                   //private QueueReceiver qreceiver;
                   private QueueSender bsender = null;
                   private Queue queue;
                   private Queue bqueue;
                   private ServerSessionPoolFactory sessionPoolFactory;
                   private ServerSessionPool sessionPool;
                   private ConnectionConsumer consumer;
                   private int findUnoccupiedServer ()
                        for (int ii = 0; ii < servers.length; ii++)
                             if (servers[ii].isActive () && !servers [ii].isOccupied ())
                                  return ii;
                        return ALL_OCCUPIED;
                   private synchronized void updateServers (ActiveServers activeServers)
                        for (int ii = 0; ii < servers.length; ii++)
                             boolean wasActive = servers[ii].isActive ();
                             boolean nowActive = activeServers.isAlive (servers[ii].getHostName ());
                             if (wasActive && !nowActive)
                                  throttle.removeResource ();
                                  Logging.debugInfoLog ("Resource removed");
                             else if (!wasActive && nowActive)
                                  throttle.addResource ();
                                  Logging.debugInfoLog ("Resource added");
                             servers [ii].setActive (nowActive);
                   // MessageListener interface
                   //public void processMessage (Message msgIn)
                   public void onMessage (Message msgIn)
                        Logging.debugInfoLog ("Starting onMessage");
                        ActiveServers activeServers = null;
                        try
                             activeServers = new ActiveServers();
                        catch (Exception ignored) {}
                        Logging.debugInfoLog ("Active Servers file read");
                        updateServers (activeServers);
                        Logging.debugInfoLog ("Servers updated");
                        throttle.getResource ();
                        Logging.debugInfoLog ("Resource got");
                        try
              Logging.debugInfoLog ("0");
                        String msgTextIn;
                             ObjectMessage msgOut;
                             RateQuoteGetBase rateQuoteGet;
                             RateQuoteGetXML rateQuoteGetXML;
              Logging.debugInfoLog ("1");
                             if (msgIn == null)
              Logging.debugInfoLog ("2");
                                  rateQuoteGet = new RateQuoteGetBase ("Cannot receive a rate quote back from JMS.");
                                  msgTextIn = "";
                             else
              Logging.debugInfoLog ("3");
                                  if (msgIn instanceof TextMessage)
                                  msgTextIn = ((TextMessage)msgIn).getText();
                                  else
                                  msgTextIn = msgIn.toString();
              Logging.debugInfoLog ("4");
                                  bqueue = (Queue) msgIn.getJMSReplyTo ();
              Logging.debugInfoLog ("8");
                                  bsender = bsession.createSender(bqueue);
              Logging.debugInfoLog ("9");
                                  bsender.setDeliveryMode (javax.jms.DeliveryMode.NON_PERSISTENT);
              Logging.debugInfoLog ("10");
                                  Logging.debugInfoLog ("Prepareing to find unoccupied server");
                                  int selectedServer = findUnoccupiedServer ();
                                  Logging.debugInfoLog ("Unoccupied server found: " + selectedServer);
                                  if (selectedServer == ALL_OCCUPIED)
                                       rateQuoteGet = new RateQuoteGetBase ("No nonoccupied rating engines found.");
                                       msgTextIn = "";
                                  else
                                       servers [selectedServer].setOccupied ();
                                       Logging.debugInfoLog ("Set occupied: " + selectedServer);
                                       String hostname = servers [selectedServer].getHostName ();
                                       int portId = servers [selectedServer].getPortId ();
                                       rateQuoteGet = new RateQuoteGetBase (hostname, portId);
                                       rateQuoteGetXML = new RateQuoteGetXML (new RateQuoteGet (rateQuoteGet));
                                       rateQuoteGetXML.prepareXML ();
                                       servers [selectedServer].setUnOccupied ();
                                       Logging.debugInfoLog ("Set unoccupied: " + selectedServer);
                                       if (!rateQuoteGetXML.hasErrorOccured ())
                                            rateQuoteGet.sendXML (msgTextIn);
                                            rateQuoteGet.prepareXML ();
                             Logging.debugInfoLog("Message Received: " + msgTextIn );
                             msgOut = bsession.createObjectMessage ();
                             msgOut.setObject (rateQuoteGet);
                             bsender.send (msgOut, javax.jms.DeliveryMode.NON_PERSISTENT,
                                            javax.jms.Message.DEFAULT_PRIORITY, 18000000L);
                        Logging.debugInfoLog("Message Sent Back: " + rateQuoteGet.getXML());
                             Logging.debugInfoLog ("End of massage sent back");
                             rateQuoteGet.debugPrint ();
                        catch (JMSException jmse)
              Logging.debugInfoLog ("5");
                        jmse.printStackTrace();
              Logging.debugInfoLog ("6");
                        try
                             if (bsender != null)
                                  bsender.close ();
                        catch (JMSException ignored) {}
                        finally
                             bsender = null;
              Logging.debugInfoLog ("7");
                        try
                             throttle.freeResource ();
                             Logging.debugInfoLog ("Resource freed");
                             Logging.debugInfoLog ("Finishing onMessage");
                        catch (Exception ignored) {}
              * Create all the necessary objects for receiving
              * messages from a JMS queue.
                   public void init(Context ctx, String queueName, int countListeners) throws NamingException,
              JMSException
                        //Logging.debugInfoLog ("Class name: " + this.getClass().getName());
                        qconFactory = (QueueConnectionFactory) ctx.lookup(JMS_FACTORY);
                        qcon = qconFactory.createQueueConnection();
                        qsession = qcon.createQueueSession(false, Session.AUTO_ACKNOWLEDGE);
                        bsession = qcon.createQueueSession(false, Session.AUTO_ACKNOWLEDGE);
                        try
                        queue = (Queue) ctx.lookup(queueName);
                        catch (NamingException ne)
                             ne.printStackTrace ();
                             //queue = (Queue) ctx.lookup (queueName);
                        //queue = qsession.createQueue (queueName);
                             //queue = JMSHelper.createPermanentQueueAsync(ctx, "closs", "ClossJMSServer",
              queueName, JNDI_FACTORY);
                             //JMSHelper.createPermanentQueueAsync(ctx, "ClossJMSServer", queueName, JNDI_FACTORY);
                             //queue = qsession.createQueue("ClossJMSServer/" + queueName);
                             //queue = createPermanentQueueAsync(ctx, jmsServerName, queueName, jndiName);
                        //ctx.bind(queueName, queue);
                        //qreceiver = qsession.createReceiver (queue);
                        //qreceiver.setMessageListener (this);
                        qcon.start();
                        sessionPoolFactory = (ServerSessionPoolFactory) ctx.lookup (SESSION_POOL_FACTORY);
                        sessionPool = sessionPoolFactory.getServerSessionPool (     qcon,
                                                                          countListeners,
                                                                          false,
                                                      Session.AUTO_ACKNOWLEDGE,
                                                      this.getClass().getName());
                        ConnectionConsumer consumer = qcon.createConnectionConsumer (queue, "", sessionPool,
              3*countListeners);
              * Close JMS objects.
                   public void close()
                        try
                             //if (qreceiver != null)
                             //     qreceiver.close();
                             if (consumer != null)
                                  consumer.close();
                        catch (JMSException ignored){}
                        //qreceiver = null;
                        consumer = null;
                        try
                             if (qsession != null)
                                  qsession.close();
                        catch (JMSException ignored){}
                        qsession = null;
                        try
                             if (bsender != null)
                                  bsender.close();
                        catch (JMSException ignored){}
                        bsender = null;
                        try
                             if (bsession != null)
                                  bsession.close();
                        catch (JMSException ignored){}
                        bsession = null;
                        try
                             if (qcon != null)
                                  qcon.close();
                        catch (JMSException ignored){}
                        qcon = null;
              * Receive a JMS message.
                   //public Message receive() throws JMSException
                   //     return qreceiver.receive ();
                   public static void main (String[] args) throws Exception
                        Message msg;
                        int len = args.length;
                        if (len %2 != 0 || len == 0)
                        Logging.debugInfoLog("Usage: java RateQuoteJMSResponse hostname portid hostname
              portid ...");
                        return;
                        int reCount = len/2;
                        throttle = new REServersThrottle (0);
                        servers = new REServer [reCount];
                        for (int ii = 0; ii < reCount; ii++)
                             servers [ii] = new REServer (args [2*ii], args [2*ii + 1]);
                        //Logging.debugInfoLog ("Arguments: " + args[0] + " " + args[1]);
                        InitialContext ic = getInitialContext (ClickProperties.getInitialContext());
                        RateQuoteJMSResponse qr = new RateQuoteJMSResponse ();
                        qr.init (ic, ClickProperties.getJMSQueue(), reCount);
                        Logging.debugInfoLog("JMS Rating Engine Responser Is Ready To Receive Messages.");
                        // Wait until a "quit" message has been received.
                        //synchronized (qr)
                   //     while (true)
                        //          msg = qr.receive ();
                        //          Logging.debugInfoLog ("Message received");
                        //          qr.processMessage (msg);
                        //qr.close();
                   private static InitialContext getInitialContext (String url) throws NamingException
                        Hashtable env = new Hashtable();
                        env.put (Context.INITIAL_CONTEXT_FACTORY, JNDI_FACTORY);
                        env.put (Context.PROVIDER_URL, url);
                        return new InitialContext(env);
              And here is the output from weblogic console:
              <May 15, 2002 11:11:57 AM EDT> <Debug> <Debug Info Log> <Active Servers file rea
              d>
              <May 15, 2002 11:11:57 AM EDT> <Debug> <Debug Info Log> <Throttle max increased
              to: 1>
              <May 15, 2002 11:11:57 AM EDT> <Debug> <Debug Info Log> <Resource added>
              <May 15, 2002 11:11:57 AM EDT> <Debug> <Debug Info Log> <Servers updated>
              <May 15, 2002 11:11:57 AM EDT> <Debug> <Debug Info Log> <Throttle count increase
              d to: 1>
              <May 15, 2002 11:11:57 AM EDT> <Debug> <Debug Info Log> <Resource got>
              <May 15, 2002 11:11:57 AM EDT> <Debug> <Debug Info Log> <0>
              <May 15, 2002 11:11:57 AM EDT> <Debug> <Debug Info Log> <1>
              <May 15, 2002 11:11:57 AM EDT> <Debug> <Debug Info Log> <3>
              <May 15, 2002 11:11:57 AM EDT> <Debug> <Debug Info Log> <4>
              <May 15, 2002 11:11:57 AM EDT> <Debug> <Debug Info Log> <8>
              java.lang.RuntimeException: Client possibly malfunctioning as RuntimeException t
              hrown from the onMessage routine of the client
              at weblogic.jms.client.JMSSession.onMessage(JMSSession.java:1938)
              at weblogic.jms.client.JMSSession.run(JMSSession.java:881)
              at weblogic.jms.backend.BEServerSession.execute(BEServerSession.java:83)
              at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:137)
              at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:120)
              [config.xml]
              

              Thanks. It creates a new class each time onMessage () is called. I thought it uses
              an existing instance of the class.
              "Zach" <[email protected]> wrote:
              >You need to trap the exception inside the onMessage so you can see the
              >exception that is being thrown by the bsession.createSender call. This
              >stack trace doesn't give enough information. It is just a message saying
              >your code failed to handle and leaked an exception out of the onMessage.
              >If that is the line that failed, then try catch around it and look at the
              >stack trace for that exception.
              >
              >_sjz.
              >
              >"Alexander Rabinowitz" <[email protected]> wrote in message
              >news:[email protected]...
              >>
              >> I am using weblogic server 6.0 service pack 2.
              >> The problem is in runtime exception in JMS.
              >> Here is an exception I am getting:
              >> java.lang.RuntimeException: Client possibly malfunctioning as
              >RuntimeException thrown
              >> from the onMessage routine of the client
              >> at weblogic.jms.client.JMSSession.onMessage(JMSSession.java:1938)
              >> at weblogic.jms.client.JMSSession.run(JMSSession.java:881)
              >> at
              >weblogic.jms.backend.BEServerSession.execute(BEServerSession.java:83)
              >> at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:137)
              >> at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:120)
              >>
              >> This occurs in the line
              >>
              >> >bsender = bsession.createSender(bqueue);
              >>
              >> of the class, in the onMessage method.
              >>
              >> What is the reason for the exception? What can be done to fix it? I just
              >need to
              >> process several messages in parallel.
              >
              >
              >
              

  • Exception starting xend (Broken capability chain: 0000:0c:00.0

    Hi all,
    i just installed ovm on my lab pc for learning purposes.
    my lab pc is a Gigabyte X79-UD5 motherboard with sandy bridge processor and 32 gb ram.
    the installation went ok but when i wanted to discover it with OVM manager i received :
    "Caused by: com.oracle.ovm.mgr.api.exception.IllegalOperationException: OVMAPI_4004E Server Failed Command: discover_server , Status: org.apache.xmlrpc.XmlRpcException: exceptions.RuntimeError:Command: ['xm', 'info'] failed (1): stderr: Error: Unable to connect to xend: No such file or directory. Is xend running?
    stdout:
    Sat Jan 12 21:21:19 CET 2013
    at com.oracle.ovm.mgr.action.ActionEngine.sendAction(ActionEngine.java:798)
    at com.oracle.ovm.mgr.action.ActionEngine.sendCommandToServer(ActionEngine.java:503)
    ... 36 more
    i had a look on the ovm server and noticed following in /var/log/xen
    PciDeviceParseError: Broken capability chain: 0000:0c:00.0
    [2013-01-12 20:50:38 3756] INFO (SrvDaemon:227) Xend stopped due to signal 15.
    [2013-01-12 20:50:42 4206] INFO (SrvDaemon:332) Xend Daemon started
    [2013-01-12 20:50:42 4206] INFO (SrvDaemon:336) Xend changeset: unavailable.
    [2013-01-12 20:50:42 4206] DEBUG (tcp:96) Listening on :8002
    [2013-01-12 20:50:42 4206] DEBUG (tcp:193) Listening on :8003
    [2013-01-12 20:50:42 4206] ERROR (SrvDaemon:349) Exception starting xend (Broken capability chain: 0000:0c:00.0)
    Traceback (most recent call last):
    File "/usr/lib64/python2.4/site-packages/xen/xend/server/SrvDaemon.py", line 341, in run
    servers = SrvServer.create()
    File "/usr/lib64/python2.4/site-packages/xen/xend/server/SrvServer.py", line 258, in create
    root.putChild('xend', SrvRoot())
    File "/usr/lib64/python2.4/site-packages/xen/xend/server/SrvRoot.py", line 40, in __init__
    self.get(name)
    File "/usr/lib64/python2.4/site-packages/xen/web/SrvDir.py", line 84, in get
    val = val.getobj()
    File "/usr/lib64/python2.4/site-packages/xen/web/SrvDir.py", line 52, in getobj
    self.obj = klassobj()
    File "/usr/lib64/python2.4/site-packages/xen/xend/server/SrvNode.py", line 30, in __init__
    self.xn = XendNode.instance()
    File "/usr/lib64/python2.4/site-packages/xen/xend/XendNode.py", line 1181, in instance
    inst = XendNode()
    File "/usr/lib64/python2.4/site-packages/xen/xend/XendNode.py", line 159, in __init__
    self._init_PPCIs()
    File "/usr/lib64/python2.4/site-packages/xen/xend/XendNode.py", line 282, in initPPCIs
    for pci_dev in PciUtil.get_all_pci_devices():
    File "/usr/lib64/python2.4/site-packages/xen/util/pci.py", line 476, in get_all_pci_devices
    return map(PciDevice, get_all_pci_dict())
    File "/usr/lib64/python2.4/site-packages/xen/util/pci.py", line 701, in __init__
    self.get_info_from_sysfs()
    File "/usr/lib64/python2.4/site-packages/xen/util/pci.py", line 1271, in get_info_from_sysfs
    self.find_capability(0x11)
    File "/usr/lib64/python2.4/site-packages/xen/util/pci.py", line 1233, in find_capability
    raise PciDeviceParseError(
    PciDeviceParseError: Broken capability chain: 0000:0c:00.0
    any ideas of whats wrong here ?
    all help appreciated ...
    best regards,
    Philippe

    i found following link have no idea if this is related to my issue
    http://wiki.xen.org/wiki/VTd_HowTo

  • Securing the Peoplesoft JMS listening connector URL

    In order to start or stop the JMS listening connector we execute a URL on the browser; the URL looks like..
    http://<WEBSERVER>:<PORT>/PSIGW/JMSListeningConnectorAdministrator?Activity=START
    http://<WEBSERVER>:<PORT>/PSIGW/JMSListeningConnectorAdministrator?Activity=STOP
    Problem with this is that any one who knows this can playaround with the listening connector of the production instance; and moreover if he can access the peoplesoft signon page, he can easily know the webserver URL.
    Is there any means that this can be secured; for example executing this URL should first take the user to an authentication page..
    -Sudripta

    on the webserver u can find the .class file here
    PS_HOME\webserv\domain_name\applications\peoplesoft\PSIGW\WEB-INF\classes\com\peoplesoft\pt\integrationgateway\listeningconnector
    u open this .class file u need a java compiler (or) hex editor to read the content.
    Thnks!

Maybe you are looking for

  • How to update FixedAsset with  BAPI_FIXEDASSET_CHANGE

    Hi I'm using  BAPI_FIXEDASSET_CHANGE to update Cost Center, return message show it's update but when I check AS03, no update make it. Data exported through BAPI Company Code ZZ01 Asset   5102591 TIMEDEPENDENTDATA-BUS_AREA      = US02 TIMEDEPENDENTDAT

  • IS-Retail Upgrade

    Hi, Is there any documentation available for IS-Retail ECC upgrade including POS, ITS ? Any check-list/questionnaire for integration with POS/ITS? Thanks, Mithun

  • Firefox Takes Up Too Much RAM

    I've tested this problem on multiple browsers (Opera, Firefox, Chrome and even IE), and Firefox is the only one I'm having problems with. I only recently installed the 4b11 version of Firefox (After not using the browser for a while), and after an ho

  • How NOT to do security & customer support

    Our Skype account was suspended, for reasons unknown to me - but understandable, since security is important. (And no, it was not one of those pesky scam emails, and OF COURSE I tried to log in directly via Skype (on both my Mac and my iPad) and not

  • Artist Name Multiple Times?

    Hi - When I d'load songs to my Nano, and then select "artist" in the menu, some of the artist's names appear multiple times. What causes this, and how do I correct it? Thanks in advance! G