Commonj WorkManager & TimerManager

Has anybody had any success implementing either a commonj WorkManager or TimerManager in Weblogic 9.0? I've sifted through the specification documents and several articles that describe how to implement these, but there seems to be a missing link.
I can't seem to get the right combination of deployment descriptors to get a TimerManager or WorkManager instance to show up in the JNDI tree. What's the secret? Is this even implemented in Weblogic 9.0?

Hi,
To be do not think that there would be any problem in that as in WLS 9.2 MP3 only the bugs which were found in WLS 9.2 MP2 might have been fixed and not major changes have been made in the new MP, also the JDK and other components would remain the same. Hence moving from to news MP version would not have any problem and its always recommended to use the latest versions.
To be in a safe positon position you can upgrade your test environment and check your same production application in it and then do the same thing for production.
You can get all the lists of fixes been made in WLS 9.2 MP3 in the below link.
http://download.oracle.com/docs/cd/E13222_01/wls/docs92/issues/known_resolved.html
Ravish Mody
http://middlewaremagic.com/weblogic
Come, Join Us and Experience The Magic…

Similar Messages

  • User a commonj WorkManager on a servlet

    Hi,
    I'm developing a servlet in weblogic 9 and want to assing a commonj WorkManager to it for work handling. For that purpose I have defined the following resource-ref on web.xml file
    <resource-ref>
    <res-ref-name>wm/MyWorkManager</res-ref-name>
    <res-type>commonj.work.WorkManager</res-type>
    <res-auth>Container</res-auth>
    <res-sharing-scope>Shareable</res-sharing-scope>
    </resource-ref>
    On the code I obtain successfully the reference of that WorkManager through JNDI. The problem is that when I try to schedule the first work on that work manager i get and exception saying the work manager is shutdown.
    commonj.work.WorkException: commonj.work.WorkRejectedException: [WorkManager:002916]Request belonging to WorkManager wm/MyWorkManager, application nsu-ws-connector is rejected as the WorkManager is shutdown
         at weblogic.work.j2ee.J2EEWorkManager$WorkStatus.setThrowable(J2EEWorkManager.java:326) [weblogic.jar:9.2.3.0]
         at weblogic.work.j2ee.J2EEWorkManager$WorkWithListener$1.run(J2EEWorkManager.java:229) [weblogic.jar:9.2.3.0]
         at weblogic.work.ServerWorkManagerImpl$WorkAdapterImpl.run(ServerWorkManagerImpl.java:518) [weblogic.jar:9.2.3.0]
         at weblogic.work.ExecuteThread.execute(ExecuteThread.java:209) [weblogic.jar:9.2.3.0]
         at weblogic.work.ExecuteThread.run(ExecuteThread.java:181) [weblogic.jar:9.2.3.0]
    Caused by: commonj.work.WorkRejectedException: [WorkManager:002916]Request belonging to WorkManager wm/MyWorkManager, application nsu-ws-connector is rejected as the WorkManager is shutdown
         ... 4 common frames omitted
    Do I have to startup this work manager or something? Thanks a lot

    Hi,
    Which kind of workmanager is it..."*Application Level WorkManagers*" or "*Global WorkManagers*". Have u provided any <work-manager> tag in "weblogic.xml" as well?
    Please refer to the following link...and let us know if you are doing anything special... After the Lookup to the WorkManager is Successful... How r u calling the .schedue()? or what exactly r u doing after that?
    http://jaysensharma.wordpress.com/workmanagers/
    And
    http://jaysensharma.wordpress.com/2009/12/20/application-level-workmanager-timermanager-lookup/
    Thanks
    Jay SenSharma

  • [WebLogic Server 11g 10.3.3] Cannot Lookup CommonJ WorkManager ?

    Hi,
    I am currently working on an application and going to use the Weblogic's CommonJ WorkManager; I tried the example in http://download.oracle.com/docs/cd/E14571_01/web.1111/e13733/toc.htm ; however I got an error
    javax.naming.ServiceUnavailableException [Root exception is java.net.UnknownHostException: Unknown protocol: 'RMI']
    Have anyone experienced this? I searched the web for answers but it seems I'm the only one getting this exception.
    The declaration of the work manager is in web.xml as follows:
         <resource-ref>
              <res-ref-name>default</res-ref-name>
              <res-type>commonj.work.WorkManager</res-type>
              <res-auth>Container</res-auth>
              <res-sharing-scope>Shareable</res-sharing-scope>
         </resource-ref>
    and I tried to lookup using the following code (basically just copy-paste from the example with some modification):
         void init() {
              try {
                   System.out.println("## executing in: " +
                             ((ExecuteThread)Thread.currentThread()).getWorkManager()
                             .getName());
                   String lookupstr = "java:comp/env/default";
                   System.out.println("## lookup >>> " + lookupstr);
                   InitialContext ic = new InitialContext();
                   WorkManager wm = (WorkManager)ic.lookup(lookupstr);
                   System.out.println("## got Java EE work manager !!!!");
                   wm.schedule(new Work(){
                        public void run() {
                             ExecuteThread th = (ExecuteThread) Thread.currentThread();
                             System.out.println("## [servlet] self-tuning workmanager: " +
                                       th.getWorkManager().getName());
                        public void release() {}
                        public boolean isDaemon() {return false;}
              catch (NamingException ne) {
                   ne.printStackTrace();}
              catch (WorkException e) {
                   e.printStackTrace();
    and the error is:
    ## executing in: default
    ## lookup >>> java:comp/env/default
    javax.naming.ServiceUnavailableException [Root exception is java.net.UnknownHostException: Unknown protocol: 'RMI']
         at weblogic.jndi.internal.ExceptionTranslator.toNamingException(ExceptionTranslator.java:34)
         at weblogic.jndi.WLInitialContextFactoryDelegate.toNamingException(WLInitialContextFactoryDelegate.java:787)
         at weblogic.jndi.WLInitialContextFactoryDelegate.getInitialContext(WLInitialContextFactoryDelegate.java:368)
         at weblogic.jndi.Environment.getContext(Environment.java:315)
         at weblogic.jndi.Environment.getContext(Environment.java:285)
         at weblogic.jndi.WLInitialContextFactory.getInitialContext(WLInitialContextFactory.java:117)
         at javax.naming.spi.NamingManager.getInitialContext(NamingManager.java:667)
         at javax.naming.InitialContext.getDefaultInitCtx(InitialContext.java:288)
         at javax.naming.InitialContext.init(InitialContext.java:223)
         at javax.naming.InitialContext.<init>(InitialContext.java:175)
         at com.example.cms.engine.ui.t5.pages.Welcome.init(Welcome.java:26)
    thanks in advance for any help,
    Harry

    How are you trying to connect to the server?
    An example:
    import javax.naming.Context;
    import javax.naming.InitialContext;
    import javax.naming.NamingException;
    import java.util.Hashtable;
    public class LookUP {
        private static Context context;
        private LookUP() {
        static {
            Hashtable hashtable = new Hashtable();
            hashtable.put(Context.INITIAL_CONTEXT_FACTORY, "weblogic.jndi.WLInitialContextFactory");
            hashtable.put(Context.PROVIDER_URL, "t3://172.31.0.107:7002,172.31.0.107:7003");
            //hashtable.put(Context.SECURITY_PRINCIPAL, "username");
            //hashtable.put(Context.SECURITY_CREDENTIALS, "password");
            long begin = System.currentTimeMillis();
            try {
                context = new InitialContext(hashtable);
            } catch (NamingException e) {
                e.printStackTrace();
            long end = System.currentTimeMillis();
            long timeseconds = (end - begin) / 1000;
            System.out.println("initialcontext creation time " + timeseconds);
        public static Context getContext() {
            return context;
    }Note that in order to use this you need a certain type of wls-client in the classpath.
    When the wlclien.jart is used than t3 is automatically replaced by iiop.
    When the wlfullclient.jar is used than the t3 protocol is used (newer version of weblogic also ship a wlthint3client.jar)

  • Typecast error while lookup (J2EEworkmanager to commonJ workmanager)

    Hi,
    I am using plain web application where i want to use commonJ workmanager to do same i have done following steps
    1. Define work manager in weblogic.xml
    <work-manager>
    <name>LogWorkmanager</name>
    <min-threads-constraint>
    <count>5</count>
    </min-threads-constraint>
    </work-manager>
    2. Define resource in web.xml file
    <resource-ref>
    <res-ref-name>LogWorkmanager</res-ref-name>
    <res-type>commonj.work.WorkManager</res-type>
    <res-auth>Container</res-auth>
    <res-sharing-scope>Shareable</res-sharing-scope>
    </resource-ref>
    3. Use JNDI mapping to get workmanager as:
    InitialContext ic = new InitialContext();
    commonj.work.WorkManager wm = (commonj.work.WorkManager)ic.lookup("java:comp/env/LogWorkmanager");
    Here at step 3 I am getting classcast exception as java.lang.ClassCastException: weblogic.work.j2ee.J2EEWorkManager.
    Could you please guide me where I am making mistake as I have defined resource ref point to commonj.workmanager and used same name in lookup method still why i am getting J2EEWorkManager instead of commonJ workmanager.
    Thanks,
    Yuvraj

    Can you run a little test. See if the following works:
    In your web.xml
        <!-- default weblogic work manager -->
        <resource-ref>
            <res-ref-name>default</res-ref-name>
            <res-type>commonj.work.WorkManager</res-type>
            <res-auth>Container</res-auth>
            <res-sharing-scope>Shareable</res-sharing-scope>
        </resource-ref>In your code you can use something like:
    import commonj.work.WorkManager;
    import javax.naming.Context;
    import javax.naming.InitialContext;
    import javax.naming.NamingException;
    import javax.servlet.ServletException;
    import javax.servlet.http.HttpServlet;
    import javax.servlet.http.HttpServletRequest;
    import javax.servlet.http.HttpServletResponse;
    import java.io.IOException;
    public class TestServlet extends HttpServlet {
        protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
            getDefaultWorkManager();
        private WorkManager getDefaultWorkManager() {
            WorkManager defaultWorkManager = null;
            try {
                Context context = new InitialContext();
                defaultWorkManager = (WorkManager) context.lookup("java:comp/env/default");
                System.out.println("My default workmanager " + defaultWorkManager);
            } catch (NamingException e) {
                e.printStackTrace();
            return defaultWorkManager;
    }

  • Execute commonj.WorkManager work on remote member of application cluster

    Hi,
    We have configured a WorkManager for our web application which works with Spring & Quartz to execute jobs asynchronously. However, all jobs get picked up by the same machine and the other members of the cluster are not given any tasks to execute.
    The commonj documentation says that a Serializable Work returns a RemoteWorkItem which can execute jobs on a remote jvm. Weblogic docs, however, say that it doesn't support this interface and implements its own cluster load balancing.
    How do we configure the Workmanager such that work is distributed across remote jvms in a cluster.
    Thanks.
    Regards
    Kaizer

    Hi,
    Do you have TestStand 2.x or are you using a later version TS 3.5.
    TestStand 2.0 didn't handle remote execution, that wasn't available until TS3.0 or TS3.1.
    This example, shows how an executable can access the same execution of a TestStand sequencefile not a remote execution.
    If you have TestStand 3.x, then there should be some examples employing remote execution within theTestStand examples folders. or try this link http://zone.ni.com/devzone/conceptd.nsf/webmain/955A560B0B0052B88625698500563621
    Regards
    Ray Farmer
    Regards
    Ray Farmer

  • WLS 9.2 - How to create and use a WorkManager through commonj?

    My goal is simple. I want to define a custom Work Manager at the application level which an MDB uses as it's dispatch policy and I can directly access with a commonj WorkManager. I have been reading through the WLS 9.2 PDFs but so far I have not been able to get this to work. Any help would be appreciated. Thanks.
    weblogic-application.xml
    This appears to work. I can see the work manager via the weblogic console.
    <work-manager>
        <name>MyWorkManager</name>
        <response-time-request-class>
            <name>MyResponseTimeGoal</name>
            <goal-ms>1000</goal-ms>
        </response-time-request-class>
        <min-threads-constraint>
            <name>MyMinThreads</name>
            <count>20</count>
        </min-threads-constraint>
        <ignore-stuck-threads>false</ignore-stuck-threads>
    </work-manager>
    MDB Annotations
    The idea here is to have the MDB using the MyWorkManager work manager and have a commonj WorkManager available via JNDI which maps to MyWorkManager. I can tell that the MDB is using the custom work manager by looking at the request count of the work manager in the weblogic console after running some tests.
    It doesn't seem that the resource reference is working at all through. The JNDI lookup of MyWorkManager always fails.
    @MessageDriven(
            maxBeansInFreePool = "20",
            destinationType = "javax.jms.Queue",
            initialBeansInFreePool = "20",
            defaultTransaction = MessageDriven.DefaultTransaction.NOT_SUPPORTED,
            ejbName = "MyMessageBean",
            destinationJndiName = "jms/MyQueue",
            acknowledgeMode = MessageDriven.AcknowledgeMode.AUTO_ACKNOWLEDGE,
            transactionType = MessageDriven.MessageDrivenTransactionType.CONTAINER,
            dispatchPolicy = "MyWorkManager")
    @ResourceRefs ({
        @ResourceRef(
                name = "MyWorkManager",
                type = "commonj.work.WorkManager",
                auth = ResourceRef.Auth.CONTAINER,
                sharingScope = ResourceRef.SharingScope.SHAREABLE,
                jndiName = "wm/MyWorkManager")
    })This is the generated XML from ejbgen:
    ejb-jar.xml
    <resource-ref>
         <res-ref-name>MyWorkManager</res-ref-name>
         <res-type>commonj.work.WorkManager</res-type>
         <res-auth>Container</res-auth>
         <res-sharing-scope>Shareable</res-sharing-scope>
    </resource-ref>
    weblogic-ejb-jar.xml
    <resource-description>
         <res-ref-name>MyWorkManager</res-ref-name>
         <jndi-name>wm/MyWorkManager</jndi-name>
    </resource-description>
    JNDI Lookup
    This fails (naming exception) and I cannot figure out why.
    InitialContext ic = new InitialContext();
    WorkManager wm = (WorkManager)ic.lookup("java:comp/env/wm/MyWorkManager");
    Spring Bean
    I have also tried to use Spring to get a commonj WorkManager which maps to MyWorkManager. This also throws a naming exception.
    <bean id="myWorkManager" class="org.springframework.scheduling.commonj.WorkManagerTaskExecutor">
        <property name="workManagerName" value="java:comp/env/wm/MyWorkManager"/>
    </bean>Edited by: user11950954 on Sep 28, 2009 12:43 PM

    So in this case I should be able to perform a JNDI lookup and get the commonj WorkManager which maps to the WLS Work Manager?Yes, for example:
    weblogic-application.xml :-
    <work-manager>
    *<name>MyWorkManager</name>*
    <response-time-request-class>
    <name>MyResponseTimeGoal</name>
    <goal-ms>1000</goal-ms>
    </response-time-request-class>
    </work-manager>
    MDB Annotations:-
    @ResourceRefs({
         @ResourceRef(
    name = *"MyWorkManager"*,
    type = "commonj.work.WorkManager",
    auth = ResourceRef.Auth.CONTAINER,
    sharingScope = ResourceRef.SharingScope.SHAREABLE,
    jndiName = *"MyWorkManager"* )
    ejb-jar.xml :-
    <resource-ref>
    *<res-ref-name>MyWorkManager</res-ref-name>*
    <res-type>commonj.work.WorkManager</res-type>
    <res-auth>Container</res-auth>
    <res-sharing-scope>Shareable</res-sharing-scope>
    </resource-ref>
    weblogic-ejb-jar.xml should be look like this :-
    <resource-description>
    *<res-ref-name>MyWorkManager</res-ref-name>*
    *<jndi-name>MyWorkManager</jndi-name>*
    </resource-description>
    JNDI Lookup:-
    InitialContext ic= new InitialContext();
    WorkManager wm= (WorkManager) ic.lookup("*java:comp/env/MyWorkManager*");
    Edited by: Betino on 29/09/2009 12:45 PM

  • Commonj TimerManager Help

    I'm looking into using the commonj TimerManager as a scheduler in my application.
    I am following examples and articles found on the following page
    http://dev2dev.bea.com/wlplatform/commonj/twm.html
    I'm having problems with configuration.
    I'm running weblogic 8.1 SP4
    My configuration in web.xml is:
    <resource-ref>
    <res-ref-name>timer/Report</res-ref-name>
    <res-type>commonj.timer.TimerManager</res-type>
    <res-auth>Container</res-auth>
    <res-sharing-scope>Unshareable</res-sharing-scope>
    </resource-ref>
    My configuration in weblogic.xml is:
    <reference-descriptor>
    <resource-description>
    <res-ref-name>timer/Report</res-ref-name>
    <jndi-name>java:comp/env/timer/Report</jndi-name>
    </resource-description>
    </reference-descriptor>
    Deployment works but when I try to run my test code I get the following stack trace.
    Any help or direction is appreciated.
    [DEBUG] 2005-06-23 09:58:16,382 - util.ServiceLocator (ServiceLocator.java:59)- retrieving jndi object [java:comp/env/timer/Report]
    <Jun 23, 2005 9:58:16 AM GMT-07:00> <Error> <HTTP> <BEA-101017> <[ServletContext(id=18506634,name=web.war,context-path=)] Root cause of ServletException.
    java.lang.StackOverflowError
    at com.sun.naming.internal.VersionHelper12$2.run(VersionHelper12.java:89)
    at java.security.AccessController.doPrivileged(Native Method)
    at com.sun.naming.internal.VersionHelper12.getJndiProperties(VersionHelper12.java:85)
    at com.sun.naming.internal.ResourceManager.getInitialEnvironment(ResourceManager.java:138)
    at javax.naming.InitialContext.init(InitialContext.java:215)
    at javax.naming.InitialContext.<init>(InitialContext.java:175)
    at weblogic.jndi.internal.ApplicationNamingNode.resolveObject(ApplicationNamingNode.java:176)
    at weblogic.jndi.internal.BasicNamingNode.resolveObject(BasicNamingNode.java:771)
    at weblogic.jndi.internal.BasicNamingNode.lookup(BasicNamingNode.java:191)
    at weblogic.jndi.internal.ApplicationNamingNode.lookup(ApplicationNamingNode.java:138)
    at weblogic.jndi.internal.WLEventContextImpl.lookup(WLEventContextImpl.java:256)
    at weblogic.jndi.internal.WLContextImpl.lookup(WLContextImpl.java:359)
    at weblogic.jndi.factories.java.ReadOnlyContextWrapper.lookup(ReadOnlyContextWrapper.java:45)
    at weblogic.jndi.internal.ApplicationNamingNode.resolveObject(ApplicationNamingNode.java:178)
    at weblogic.jndi.internal.BasicNamingNode.resolveObject(BasicNamingNode.java:771)
    at weblogic.jndi.internal.BasicNamingNode.lookup(BasicNamingNode.java:191)
    at weblogic.jndi.internal.ApplicationNamingNode.lookup(ApplicationNamingNode.java:138)

    disregard this post... I figured out that I am looking at a spec and not an implementation :-(

  • Workmanager is not implemented,

    weblogic-application.xml is
    <?xml version="1.0" encoding="UTF-8"?>
    <weblogic-application xmlns="http://www.bea.com/ns/weblogic/90">
    <singleton-service>
    <name>MySingletonService</name>
    <class-name>com.tcs.rmqs.singaltonservice.ClusterSingleton</class-name>
    </singleton-service>
    <work-manager>
    <name>WorkManagerA</name>
    <max-threads-constraint>
    <name>MyMaxThreadCount_2</name>
    <count>2</count>
    </max-threads-constraint>
    </work-manager>
    <wl-dispatch-policy>WorkManagerA</wl-dispatch-policy>
    </weblogic-application>
    now i m not able to deeploy application it gives following error
    Messages
    Unable to access the selected application.
    Exception in AppMerge flows' progression
    Exception in AppMerge flows' progression
    [J2EE:160161]Error while parsing the Application descriptors for rmqs.ear: weblogic.descriptor.DescriptorException: VALIDATION PROBLEMS WERE FOUND problem: cvc-complex-type.2.4a: Expected elements 'work-manager@http://www.bea.com/ns/weblogic/weblogic-application component-factory-class-name@http://www.bea.com/ns/weblogic/weblogic-application application-admin-mode-trigger@http://www.bea.com/ns/weblogic/weblogic-application session-descriptor@http://www.bea.com/ns/weblogic/weblogic-application library-context-root-override@http://www.bea.com/ns/weblogic/weblogic-application prefer-application-packages@http://www.bea.com/ns/weblogic/weblogic-application fast-swap@http://www.bea.com/ns/weblogic/weblogic-application' instead of 'wl-dispatch-policy@http://www.bea.com/ns/weblogic/weblogic-application' here in element weblogic-application@http://www.bea.com/ns/weblogic/weblogic-application:<null> at weblogic.descriptor.internal.MarshallerFactory$1.evaluateResults(MarshallerFactory.java:234) at weblogic.descriptor.internal.MarshallerFactory$1.evaluateResults(MarshallerFactory.java:221) at weblogic.descriptor.internal.MarshallerFactory$1.createDescriptor(MarshallerFactory.java:146) at weblogic.descriptor.BasicDescriptorManager.createDescriptor(BasicDescriptorManager.java:306) at weblogic.application.descriptor.AbstractDescriptorLoader2.getDescriptorBeanFromReader(AbstractDescriptorLoader2.java:788) at weblogic.application.descriptor.AbstractDescriptorLoader2.createDescriptorBean(AbstractDescriptorLoader2.java:409) at weblogic.application.descriptor.AbstractDescriptorLoader2.loadDescriptorBeanWithoutPlan(AbstractDescriptorLoader2.java:759) at weblogic.application.descriptor.AbstractDescriptorLoader2.loadDescriptorBean(AbstractDescriptorLoader2.java:768) at weblogic.application.ApplicationDescriptor.getWeblogicApplicationDescriptor(ApplicationDescriptor.java:339) at weblogic.application.compiler.CompilerCtx.setApplicationDescriptor(CompilerCtx.java:139) at weblogic.application.compiler.AppcUtils.setDDs(AppcUtils.java:142) at weblogic.application.compiler.flow.DescriptorParsingFlow.compile(DescriptorParsingFlow.java:57) at weblogic.application.compiler.FlowDriver$FlowStateChange.next(FlowDriver.java:69) at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:37) at weblogic.application.compiler.FlowDriver.nextState(FlowDriver.java:36) at weblogic.application.compiler.FlowDriver$CompilerFlowDriver.compile(FlowDriver.java:96) at weblogic.application.compiler.ReadOnlyEarMerger.merge(ReadOnlyEarMerger.java:49) at weblogic.application.compiler.flow.AppMergerFlow.mergeInput(AppMergerFlow.java:94) at weblogic.application.compiler.flow.AppMergerFlow.compile(AppMergerFlow.java:47) at weblogic.application.compiler.FlowDriver$FlowStateChange.next(FlowDriver.java:69) at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:37) at weblogic.application.compiler.FlowDriver.nextState(FlowDriver.java:36) at weblogic.application.compiler.FlowDriver$CompilerFlowDriver.compile(FlowDriver.java:96) at weblogic.application.compiler.AppMerge.runBody(AppMerge.java:157) at weblogic.utils.compiler.Tool.run(Tool.java:158) at weblogic.utils.compiler.Tool.run(Tool.java:115) at weblogic.application.compiler.AppMerge.merge(AppMerge.java:169) at weblogic.deploy.api.internal.utils.AppMerger.merge(AppMerger.java:88) at weblogic.deploy.api.internal.utils.AppMerger.getMergedApp(AppMerger.java:63) at weblogic.deploy.api.model.internal.WebLogicDeployableObjectFactoryImpl.createDeployableObject(WebLogicDeployableObjectFactoryImpl.java:181) at weblogic.deploy.api.model.internal.WebLogicDeployableObjectFactoryImpl.createLazyDeployableObject(WebLogicDeployableObjectFactoryImpl.java:156) at weblogic.deploy.api.tools.SessionHelper.inspect(SessionHelper.java:661) at com.bea.console.actions.app.install.Flow$2.execute(Flow.java:463) at com.bea.console.utils.DeploymentUtils.runDeploymentAction(DeploymentUtils.java:4625) at com.bea.console.actions.app.install.Flow.appSelected(Flow.java:461) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at org.apache.beehive.netui.pageflow.FlowController.invokeActionMethod(FlowController.java:870) at org.apache.beehive.netui.pageflow.FlowController.getActionMethodForward(FlowController.java:809) at org.apache.beehive.netui.pageflow.FlowController.internalExecute(FlowController.java:478) at org.apache.beehive.netui.pageflow.PageFlowController.internalExecute(PageFlowController.java:306) at org.apache.beehive.netui.pageflow.FlowController.execute(FlowController.java:336) at org.apache.beehive.netui.pageflow.internal.FlowControllerAction.execute(FlowControllerAction.java:52) at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:431) at org.apache.beehive.netui.pageflow.PageFlowRequestProcessor.access$201(PageFlowRequestProcessor.java:97) at org.apache.beehive.netui.pageflow.PageFlowRequestProcessor$ActionRunner.execute(PageFlowRequestProcessor.java:2044) at org.apache.beehive.netui.pageflow.interceptor.action.internal.ActionInterceptors$WrapActionInterceptorChain.continueChain(ActionInterceptors.java:64) at org.apache.beehive.netui.pageflow.interceptor.action.ActionInterceptor.wrapAction(ActionInterceptor.java:184) at org.apache.beehive.netui.pageflow.interceptor.action.internal.ActionInterceptors$WrapActionInterceptorChain.invoke(ActionInterceptors.java:50) at org.apache.beehive.netui.pageflow.interceptor.action.internal.ActionInterceptors$WrapActionInterceptorChain.continueChain(ActionInterceptors.java:58) at org.apache.beehive.netui.pageflow.interceptor.action.internal.ActionInterceptors.wrapAction(ActionInterceptors.java:87) at org.apache.beehive.netui.pageflow.PageFlowRequestProcessor.processActionPerform(PageFlowRequestProcessor.java:2116) at com.bea.console.internal.ConsolePageFlowRequestProcessor.processActionPerform(ConsolePageFlowRequestProcessor.java:255) at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:236) at org.apache.beehive.netui.pageflow.PageFlowRequestProcessor.processInternal(PageFlowRequestProcessor.java:556) at org.apache.beehive.netui.pageflow.PageFlowRequestProcessor.process(PageFlowRequestProcessor.java:853) at org.apache.beehive.netui.pageflow.AutoRegisterActionServlet.process(AutoRegisterActionServlet.java:631) at org.apache.beehive.netui.pageflow.PageFlowActionServlet.process(PageFlowActionServlet.java:158) at com.bea.console.internal.ConsoleActionServlet.process(ConsoleActionServlet.java:256) at org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:414) at com.bea.console.internal.ConsoleActionServlet.doGet(ConsoleActionServlet.java:133) at org.apache.beehive.netui.pageflow.PageFlowUtils.strutsLookup(PageFlowUtils.java:1199) at com.bea.portlet.adapter.scopedcontent.ScopedContentCommonSupport.executeAction(ScopedContentCommonSupport.java:686) at com.bea.portlet.adapter.scopedcontent.ScopedContentCommonSupport.processActionInternal(ScopedContentCommonSupport.java:142) at com.bea.portlet.adapter.scopedcontent.PageFlowStubImpl.processAction(PageFlowStubImpl.java:106) at com.bea.portlet.adapter.NetuiActionHandler.raiseScopedAction(NetuiActionHandler.java:111) at com.bea.netuix.servlets.controls.content.NetuiContent.raiseScopedAction(NetuiContent.java:181) at com.bea.netuix.servlets.controls.content.NetuiContent.raiseScopedAction(NetuiContent.java:167) at com.bea.netuix.servlets.controls.content.NetuiContent.handlePostbackData(NetuiContent.java:225) at com.bea.netuix.nf.ControlLifecycle$2.visit(ControlLifecycle.java:180) at com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.java:324) at com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.java:334) at com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.java:334) at com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.java:334) at com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.java:334) at com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.java:334) at com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.java:334) at com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.java:334) at com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.java:334) at com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.java:334) at com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.java:334) at com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.java:334) at com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.java:334) at com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.java:334) at com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.java:334) at com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.java:334) at com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.java:334) at com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.java:334) at com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.java:334) at com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.java:334) at com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.java:334) at com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.java:334) at com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.java:334) at com.bea.netuix.nf.ControlTreeWalker.walk(ControlTreeWalker.java:130) at com.bea.netuix.nf.Lifecycle.processLifecycles(Lifecycle.java:395) at com.bea.netuix.nf.Lifecycle.processLifecycles(Lifecycle.java:361) at com.bea.netuix.nf.Lifecycle.processLifecycles(Lifecycle.java:352) at com.bea.netuix.nf.Lifecycle.runInbound(Lifecycle.java:184) at com.bea.netuix.nf.Lifecycle.run(Lifecycle.java:159) at com.bea.netuix.servlets.manager.UIServlet.runLifecycle(UIServlet.java:388) at com.bea.netuix.servlets.manager.UIServlet.doPost(UIServlet.java:258) at com.bea.netuix.servlets.manager.UIServlet.service(UIServlet.java:199) at com.bea.netuix.servlets.manager.SingleFileServlet.service(SingleFileServlet.java:251) at javax.servlet.http.HttpServlet.service(HttpServlet.java:820) at com.bea.console.utils.MBeanUtilsInitSingleFileServlet.service(MBeanUtilsInitSingleFileServlet.java:54) at weblogic.servlet.AsyncInitServlet.service(AsyncInitServlet.java:130) at weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:227) at weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:125) at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:292) at weblogic.servlet.internal.TailFilter.doFilter(TailFilter.java:26) at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:42) at weblogic.servlet.internal.RequestEventsFilter.doFilter(RequestEventsFilter.java:27) at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:42) at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:3496) at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321) at weblogic.security.service.SecurityManager.runAs(Unknown Source) at weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2180) at weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:2086) at weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1406) at weblogic.work.ExecuteThread.execute(ExecuteThread.java:201) at weblogic.work.ExecuteThread.run(ExecuteThread.java:173) .

    Hi,
    You need to define the following inside "weblogic.xml" tags NOT weblogic-application.xml
    <work-manager>
    <name>WorkManagerA</name>
    <max-threads-constraint>
    <name>MyMaxThreadCount_2</name>
    <count>2</count>
    </max-threads-constraint>
    </work-manager>
    <wl-dispatch-policy>WorkManagerA</wl-dispatch-policy>Following kind of weblogic.xml you will have to use.
    <?xml version="1.0" encoding="ISO-8859-1"?>
    <weblogic-web-app xmlns="http://www.bea.com/ns/weblogic/90">
        <work-manager>
           <name>WorkManagerA</name>
           <max-threads-constraint>
              <name>MyMaxThreadCount_2</name>
              <count>2</count>
           </max-threads-constraint>
        </work-manager>
        <wl-dispatch-policy>WorkManagerA</wl-dispatch-policy>
    </weblogic-web-app>
    Topic :  Application Level WorkManager & TimerManager Lookup
    http://middlewaremagic.com/weblogic/?p=385
    Also do refer to the following XSD of weblogic-application.xml , you will see that there is NO workmanager tag can be placed inside this file:
    http://www.bea.com/ns/weblogic/weblogic-application/1.0/weblogic-application.xsd
    Reference of XSD: http://download.oracle.com/docs/cd/E15051_01/wls/docs103/programming/app_xml.html#wp1079285
    Regards
    Ravish Mody

  • Coherence 12C Workmanager issue

    Hi,
      I am facing an error with coherence 12c which was running fine with coherence3.7.1. The commonj jar version we are using is 1.4.1 which was running fine with coherence 3.7.1
    The error is as follows:
    java.lang.IllegalArgumentException: XML argument cannot be null
            at com.tangosol.internal.net.service.LegacyXmlServiceHelper.fromXml(LegacyXmlServiceHelper.java:37)
            at com.tangosol.internal.net.service.grid.LegacyXmlGridHelper.fromXml(LegacyXmlGridHelper.java:39)
            at com.tangosol.coherence.component.util.daemon.queueProcessor.service.Grid.configure(Grid.CDB:4)
            at com.tangosol.coherence.component.util.SafeService.startService(SafeService.CDB:20)
            at com.tangosol.coherence.component.util.SafeService.ensureRunningService(SafeService.CDB:27)
            at com.tangosol.coherence.component.util.SafeService.start(SafeService.CDB:14)
            at com.tangosol.coherence.commonj.WorkManager.init(WorkManager.java:193)
            at com.tangosol.coherence.commonj.WorkManager.<init>(WorkManager.java:128)
            at oracle.communication.brm.charging.util.coherence.internal.CoherenceTemplateImpl.getWorkManager(CoherenceTemplateImpl.java:724)
    Can someone explain if the error is due to the commonj jar or not.
    Thanks
    Subhashish

    Well....The same behaviour which is working in 3.7.1 but not working in 12c. I would explain the problem a bit more.
    We wanted to create workmanger in various nodes except the client node which will only dispatch the work and refrain from participating in the work processing .Hence when are trying to create workmanger in the client node with 0 number of threads(for a client only purpose), it is throwing the above exception. Strangely it is no complaining if we create the workmanager with >0 number of threads. I checked the documentation and it says nothing about this changed behaviour. Looks like a bug to me in coherence.
    Can anyone please explain this behaviour  to me.

  • NameNotFoundException using Workmanager

    I am trying to use the WLS CommonJ WorkManager and running into some issues. I am getting a NameNotFoundException during JNDI lookup. I defined the workmanager in the weblogic-application.xml of the ear. The jar that is making the JNDI call is present in APP-INF/lib of the ear and is being called from a JCA inbound RA. I even tried creating a workmanager from the wls admin console and using it there, but got the same error.
    relevant portions of weblogic-application.xml:-
    <max-threads-constraint>
    <name>j2ee_maxthreads</name>
    <count>20</count>
    </max-threads-constraint>
    <min-threads-constraint>
    <name>j2ee_minthreads</name>
    <count>10</count>
    </min-threads-constraint>
    <work-manager>
    <name>OVDWorkManager</name> ------ I also tried it as "wm/OVDWorkManager"
    </work-manager>
    Code for lookup:-
    private static final String S_WORK_MANAGER_NAME = "java:comp/env/wm/OVDWorkManager";
    InitialContext ctx = new InitialContext();
    s_workMgr = (WorkManager) ctx.lookup(S_WORK_MANAGER_NAME);
    Any idea what's wrong ?

    Answer to your thread in the Java ejb programming section:
    drg1022 wrote:
    I'm pretty sure I am looking at the admin console correctly...
    In the Admin Console it gives the following information
    Name: AccessManager
    Type: stateless
    Transaction Type: Bean
    EJB Class Name: gov.nysed.sams.server.session.AccessManagerBean
    I am using the "Name" portion of this to do the EJB lookup. (Object lookup = context.lookup("AccessManager");I think here is where it breaks. The name of EJB is unrelated to the -JNDI NAME- which is the one you need. There are two different names too: the local JNDI name and the remote JNDI name.

  • Thread hang during call EJB 3.0 with Weblogic 10.3 (Urgent)

    Hello,
    We have a java client application call Weblogic Appserver 10.3, EJB 3.0 Service. Occasionally, client application, some step will get hang when try to invoking EJB. When we restart the application server and re-run the client application, it may work or hang on any other step. (Totally, we have around 40 steps to invoking EJB service)
    We did check Google and find similar issue happen on the IBM Websphere appserver. They post a patch to fix this issue (http://www-01.ibm.com/support/docview.wss?rs=180&uid=swg1PK74719), but not Weblogic.
    Is there any Weblogic expert who can help me to solve this issue?
    I have attached two thread dumps (different steps) when they got hang.
    Appreciate your quick help.
    Best wishes,
    Feelyn
    ==========================================================================================================================================
    Thread Dump files.
    NULL ------------------------------------------------------------------------
    0SECTION THREADS subcomponent dump routine
    NULL =================================
    NULL
    1XMCURTHDINFO Current Thread Details
    NULL ----------------------
    NULL
    1XMTHDINFO All Thread Details
    NULL ------------------
    NULL
    2XMFULLTHDDUMP Full thread dump J9 VM (J2RE 6.0 IBM J9 2.4 AIX ppc64-64 build jvmap6460-20090215_2988320090215_029883_BHdSMr, native threads):
    3XMTHREADINFO "main" TID:0x0000000110A64600, j9thread_t:0x000000011011F420, state:CW, prio=5
    3XMTHREADINFO1 (native thread ID:0x125009, native priority:0x5, native policy:UNKNOWN)
    4XESTACKTRACE at java/util/HashMap.findNonNullKeyEntry(HashMap.java:526(Compiled Code))
    4XESTACKTRACE at java/util/HashMap.getEntry(HashMap.java:511(Compiled Code))
    4XESTACKTRACE at java/util/HashMap.get(HashMap.java:497(Compiled Code))
    4XESTACKTRACE at weblogic/utils/collections/SoftHashMap.get(SoftHashMap.java:194(Compiled Code))
    4XESTACKTRACE at weblogic/ejb/container/internal/RemoteBusinessIntfProxy.getTargetMethod(RemoteBusinessIntfProxy.java:125(Compiled Code))
    4XESTACKTRACE at weblogic/ejb/container/internal/RemoteBusinessIntfProxy.invoke(RemoteBusinessIntfProxy.java:53(Compiled Code))
    4XESTACKTRACE at $Proxy0.cleanBx001(Bytecode PC:18)
    4XESTACKTRACE at com/tesco/eod/exec/thred/CleanZBx001Thead.cleanBx001(CleanZBx001Thead.java:38)
    4XESTACKTRACE at com/tesco/eod/exec/MainClass.cleanBx001(MainClass.java:1033)
    4XESTACKTRACE at com/tesco/eod/exec/MainClass.main(MainClass.java:1239)
    3XMTHREADINFO "JIT Compilation Thread" TID:0x0000000111CBE200, j9thread_t:0x000000011011FE20, state:CW, prio=10
    3XMTHREADINFO1 (native thread ID:0x127073, native priority:0xB, native policy:UNKNOWN)
    3XMTHREADINFO "Signal Dispatcher" TID:0x0000000111EBEB00, j9thread_t:0x0000000111D5B940, state:R, prio=5
    3XMTHREADINFO1 (native thread ID:0xA4165, native priority:0x5, native policy:UNKNOWN)
    4XESTACKTRACE at com/ibm/misc/SignalDispatcher.waitForSignal(Native Method)
    4XESTACKTRACE at com/ibm/misc/SignalDispatcher.run(SignalDispatcher.java:54)
    3XMTHREADINFO "Gc Slave Thread" TID:0x0000000111EFED00, j9thread_t:0x0000000111EC8340, state:CW, prio=5
    3XMTHREADINFO1 (native thread ID:0xDC0CD, native priority:0x5, native policy:UNKNOWN)
    3XMTHREADINFO "Gc Slave Thread" TID:0x0000000111FBBA00, j9thread_t:0x0000000111EC8840, state:CW, prio=5
    3XMTHREADINFO1 (native thread ID:0x27C1D9, native priority:0x5, native policy:UNKNOWN)
    3XMTHREADINFO "Gc Slave Thread" TID:0x000000011209AB00, j9thread_t:0x0000000112055AE0, state:CW, prio=5
    3XMTHREADINFO1 (native thread ID:0x1EA0D5, native priority:0x5, native policy:UNKNOWN)
    3XMTHREADINFO "Gc Slave Thread" TID:0x000000011209FD00, j9thread_t:0x0000000112055FE0, state:CW, prio=5
    3XMTHREADINFO1 (native thread ID:0x282155, native priority:0x5, native policy:UNKNOWN)
    3XMTHREADINFO "Gc Slave Thread" TID:0x0000000112107E00, j9thread_t:0x00000001120564E0, state:CW, prio=5
    3XMTHREADINFO1 (native thread ID:0xFF037, native priority:0x5, native policy:UNKNOWN)
    3XMTHREADINFO "Gc Slave Thread" TID:0x0000000112122700, j9thread_t:0x000000011211DD80, state:CW, prio=5
    3XMTHREADINFO1 (native thread ID:0x10B1BF, native priority:0x5, native policy:UNKNOWN)
    3XMTHREADINFO "Gc Slave Thread" TID:0x00000001123E4200, j9thread_t:0x000000011211E280, state:CW, prio=5
    3XMTHREADINFO1 (native thread ID:0x119025, native priority:0x5, native policy:UNKNOWN)
    3XMTHREADINFO "Finalizer thread" TID:0x0000000112D5A000, j9thread_t:0x000000011211E780, state:CW, prio=5
    3XMTHREADINFO1 (native thread ID:0xDE109, native priority:0x5, native policy:UNKNOWN)
    3XMTHREADINFO "ExecuteThread: '0' for queue: 'default'" TID:0x0000000112DEE600, j9thread_t:0x0000000112DD8B80, state:CW, prio=5
    3XMTHREADINFO1 (native thread ID:0x25412D, native priority:0x5, native policy:UNKNOWN)
    4XESTACKTRACE at java/lang/Object.wait(Native Method)
    4XESTACKTRACE at java/lang/Object.wait(Object.java:167)
    4XESTACKTRACE at weblogic/kernel/ExecuteThread.waitForRequest(ExecuteThread.java:91)
    4XESTACKTRACE at weblogic/kernel/ExecuteThread.run(ExecuteThread.java:115)
    3XMTHREADINFO "ExecuteThread: '1' for queue: 'default'" TID:0x0000000112E23F00, j9thread_t:0x0000000112DD9080, state:CW, prio=5
    3XMTHREADINFO1 (native thread ID:0x2DC15F, native priority:0x5, native policy:UNKNOWN)
    4XESTACKTRACE at java/lang/Object.wait(Native Method)
    4XESTACKTRACE at java/lang/Object.wait(Object.java:167)
    4XESTACKTRACE at weblogic/kernel/ExecuteThread.waitForRequest(ExecuteThread.java:91)
    4XESTACKTRACE at weblogic/kernel/ExecuteThread.run(ExecuteThread.java:115)
    3XMTHREADINFO "ExecuteThread: '2' for queue: 'default'" TID:0x0000000112F65E00, j9thread_t:0x0000000112DD9580, state:CW, prio=5
    3XMTHREADINFO1 (native thread ID:0x275171, native priority:0x5, native policy:UNKNOWN)
    4XESTACKTRACE at java/lang/Object.wait(Native Method)
    4XESTACKTRACE at java/lang/Object.wait(Object.java:167)
    4XESTACKTRACE at weblogic/kernel/ExecuteThread.waitForRequest(ExecuteThread.java:91)
    4XESTACKTRACE at weblogic/kernel/ExecuteThread.run(ExecuteThread.java:115)
    3XMTHREADINFO "ExecuteThread: '3' for queue: 'default'" TID:0x0000000112FF2D00, j9thread_t:0x0000000112FBAF80, state:CW, prio=5
    3XMTHREADINFO1 (native thread ID:0x1B4199, native priority:0x5, native policy:UNKNOWN)
    4XESTACKTRACE at java/lang/Object.wait(Native Method)
    4XESTACKTRACE at java/lang/Object.wait(Object.java:167(Compiled Code))
    4XESTACKTRACE at weblogic/kernel/ExecuteThread.waitForRequest(ExecuteThread.java:89(Compiled Code))
    4XESTACKTRACE at weblogic/kernel/ExecuteThread.run(ExecuteThread.java:115)
    3XMTHREADINFO "ExecuteThread: '4' for queue: 'default'" TID:0x00000001130DD800, j9thread_t:0x0000000112FBB480, state:R, prio=5
    3XMTHREADINFO1 (native thread ID:0x245133, native priority:0x5, native policy:UNKNOWN)
    4XESTACKTRACE at java/net/SocketInputStream.socketRead0(Native Method)
    4XESTACKTRACE at java/net/SocketInputStream.read(SocketInputStream.java:140(Compiled Code))
    4XESTACKTRACE at weblogic/socket/SocketMuxer.readReadySocketOnce(SocketMuxer.java:887(Compiled Code))
    4XESTACKTRACE at weblogic/socket/SocketMuxer.readReadySocket(SocketMuxer.java:849(Compiled Code))
    4XESTACKTRACE at weblogic/socket/JavaSocketMuxer.processSockets(JavaSocketMuxer.java:283)
    4XESTACKTRACE at weblogic/socket/SocketReaderRequest.run(SocketReaderRequest.java:29)
    4XESTACKTRACE at weblogic/work/ExecuteRequestAdapter.execute(ExecuteRequestAdapter.java:21)
    4XESTACKTRACE at weblogic/kernel/ExecuteThread.execute(ExecuteThread.java:145)
    4XESTACKTRACE at weblogic/kernel/ExecuteThread.run(ExecuteThread.java:117)
    3XMTHREADINFO "weblogic.timers.TimerThread" TID:0x0000000111DACF00, j9thread_t:0x0000000112FBB980, state:CW, prio=9
    3XMTHREADINFO1 (native thread ID:0xFE11F, native priority:0x9, native policy:UNKNOWN)
    4XESTACKTRACE at java/lang/Object.wait(Native Method)
    4XESTACKTRACE at java/lang/Object.wait(Object.java:196(Compiled Code))
    4XESTACKTRACE at weblogic/timers/internal/TimerThread$Thread.run(TimerThread.java:267)
    3XMTHREADINFO "Thread-5" TID:0x00000001130E2900, j9thread_t:0x00000001130DC700, state:CW, prio=5
    3XMTHREADINFO1 (native thread ID:0x1E61A9, native priority:0x5, native policy:UNKNOWN)
    4XESTACKTRACE at java/lang/Object.wait(Native Method)
    4XESTACKTRACE at java/lang/Object.wait(Object.java:167)
    4XESTACKTRACE at java/util/Timer$TimerImpl.run(Timer.java:210)
    3XMTHREADINFO "weblogic.transaction.TxTimer: '1'" TID:0x00000001132FA300, j9thread_t:0x00000001130DCC00, state:CW, prio=5
    3XMTHREADINFO1 (native thread ID:0x20E10F, native priority:0x5, native policy:UNKNOWN)
    4XESTACKTRACE at java/lang/Object.wait(Native Method)
    4XESTACKTRACE at java/lang/Object.wait(Object.java:196(Compiled Code))
    4XESTACKTRACE at weblogic/transaction/internal/GenericTimer.run(GenericTimer.java:15)
    4XESTACKTRACE at java/lang/Thread.run(Thread.java:735)
    NULL ------------------------------------------------------------------------

    Here has more details:
    java weblogic.version: WebLogic Server 10.3 Fri Jul 25 16:30:05 EDT 2008 1137967
    SERVICE NAME VERSION INFORMATION
    ============ ===================
    Kernel Commonj WorkManager v1.1
    TimerService Commonj TimerManager v1.1
    CorbaService CORBA 2.3, IIOP 1.2, RMI-IIOP SFV2, OTS 1.2, CSIv2 Level 0 + Stateful
    XMLService XML 1.1
    Transaction Service JTA 1.0.1B
    JDBCService JSR-114, JDBC 3.0
    CustomResourceServerService 1.0.0.0
    Servlet Container Servlet 2.5, JSP 2.1
    WebServices JSR-173, JAX-RPC, JSR-109, WSDL, WS-Addressing, WS-Policy, JAX-B, JAX-R, UDDI, WS-Management(HP), JAXP-1.3, WS-Security
    Pre Admin Singleton Services S 1.0
    Singleton Services Batch Manag 1.0
    EJB Container EJB 3.0
    MDBService EJB 3.0
    EJBTimerService EJB 3.0
    J2EE Connector 1.5
    JMS Service JMS 1.1

  • Jms clustering with spring

    Hi
    i have created the jms clustering configuration in weblogic 10.3.3 that i am facing issues in the connection queue like this
    org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'queueConnectionFactory' defined in ServletContext resource [WEB-INF/applicationContext.xml]: Invocation of init method failed; nested exception is javax.naming.NameNotFoundException: Unable to resolve 'QueueConnectionFactory'. Resolved ''; remaining name 'QueueConnectionFactory'
         at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1401)
         at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:512)
    and i have configured servers below
    clustered the managed servers MS-1 and MS-2
    Servers Targets
    JMS Server Admin server
    JMS Module cluster
    connection queue cluster
    queue JMSServer
    i have tried with the 2 different JMS servers for managed servers
    Servers Targets
    JMS Server - 1 MS-1
    JMS Server - 2 MS-2
    JMS Module cluster
    connection queue cluster
    queue JMSServer - 1 and JMSServer - 2
    so, please help us to configure the JMS clustering with spring.
    Note : please find the spring - applicationContext.xml below thats is used to configure the connection factory and jms queue.
    <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN"
    "http://www.springframework.org/dtd/spring-beans.dtd">
    <beans>
         <bean id="invoiceListener" class="com.spring.jms.InvoiceMDB" />
         <bean id="jndiTemplate" class="org.springframework.jndi.JndiTemplate">
              <property name="environment">
                   <props>
                        <prop key="java.naming.factory.initial">weblogic.jndi.WLInitialContextFactory</prop>
                        <prop key="java.naming.provider.url">t3://localhost:6001,localhost:6003,localhost:6005</prop>
                   </props>
              </property>
         </bean>
         <bean id="queueConnectionFactory" class="org.springframework.jndi.JndiObjectFactoryBean">
              <property name="jndiTemplate"><ref bean="jndiTemplate" /></property>
              <property name="jndiName"><value>QueueConnectionFact</value></property>
         </bean>
         <bean id="invoiceQueueTemplate" class="org.springframework.jms.core.JmsTemplate">
              <property name="connectionFactory"><ref bean="queueConnectionFactory" /></property>
              <property name="destinationResolver"><ref bean="jmsDestinationResolver" /></property>
         </bean>
         <bean id="jmsDestinationResolver" class="org.springframework.jms.support.destination.JndiDestinationResolver">
              <property name="jndiTemplate"><ref bean="jndiTemplate" /></property>
              <property name="cache"><value>true</value></property>
         </bean>
         <bean id="jmsInvoiceSender" class="com.spring.jms.InvoiceQueueSender">
              <property name="jmsTemplate"><ref bean="invoiceQueueTemplate" /></property>
         </bean>
         <bean id="invoiceQueue" class="org.springframework.jndi.JndiObjectFactoryBean">
              <property name="jndiTemplate"><ref bean="jndiTemplate"/></property>
              <property name="jndiName"><value>MyQueue</value></property>
         </bean>
         <bean id="Invoicelistener" class="org.springframework.jms.listener.DefaultMessageListenerContainer">
         <property name="concurrentConsumers" value="5" />
         <property name="connectionFactory" ref="queueConnectionFactory" />
         <property name="destination" ref="invoiceQueue" />
         <property name="messageListener" ref="invoiceListener" />
         <property name="sessionAcknowledgeModeName" value="AUTO_ACKNOWLEDGE" />
    <property name="sessionTransacted" value="true" />
         </bean>
    </beans>

    Are you sure you have defined the correct JNDI-name in the Spring config file?
    An example set-up of a domain can be found here - http://middlewaremagic.com/weblogic/?p=7795 (the script presented in the create domain section)
    This is basically the same set-up you have, except that a distributed queue is being used that is targeted to JMS Servers through a subdeployment.
    The Spring configuration looks as follows:
    <?xml version="1.0" encoding="UTF-8"?>
    <beans xmlns="http://www.springframework.org/schema/beans"
           xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
           xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd">
        <bean id="jndiTemplate" class="org.springframework.jndi.JndiTemplate">
            <property name="environment">
                <props>
                    <prop key="java.naming.factory.initial">weblogic.jndi.WLInitialContextFactory</prop>
                    <prop key="java.naming.provider.url">t3://192.168.1.50:9001,192.168.1.50:9002</prop>
                </props>
            </property>
        </bean>
        <bean id="connectionFactory" class="org.springframework.jndi.JndiObjectFactoryBean">
            <property name="jndiTemplate" ref="jndiTemplate"/>
            <property name="jndiName" value="jms/ConnectionFactory"/>
        </bean>
        <bean id="destination" class="org.springframework.jndi.JndiObjectFactoryBean">
            <property name="jndiTemplate" ref="jndiTemplate"/>
            <property name="jndiName" value="jms/CompanyQueue"/>
        </bean>
        <bean id="jmsTemplate" class="org.springframework.jms.core.JmsTemplate">
            <property name="connectionFactory" ref="connectionFactory"/>
            <property name="defaultDestination" ref="destination"/>
        </bean>
        <bean id="taskExecutor" class="org.springframework.scheduling.commonj.WorkManagerTaskExecutor">
            <property name="workManagerName" value="java:comp/env/default"/>
            <property name="resourceRef" value="true"/>
        </bean>
        <bean class="org.springframework.jms.listener.SimpleMessageListenerContainer">
            <property name="connectionFactory" ref="connectionFactory"/>
            <property name="destination" ref="destination"/>
            <property name="messageListener" ref="receiver"/>
            <property name="taskExecutor" ref="taskExecutor"/>
        </bean>
        <bean id="sender" class="model.logic.JMSSender">
            <property name="jmsTemplate" ref="jmsTemplate"/>
        </bean>
        <bean id="receiver" class="model.logic.JMSReceiver"/>
    </beans>To test create a servlet, for example,
    public class TestServlet extends HttpServlet {
        protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
            JMSSender jmsSender = SpringUtilities.getJMSSender();
            jmsSender.sendMessage();
            System.out.println("message send by the testservlet");
    }and web.xml as
    <web-app ...>
        <context-param>
            <param-name>contextConfigLocation</param-name>
            <param-value>classpath:spring-config.xml</param-value>
        </context-param>
        <listener>
            <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
        </listener>
        <!-- default weblogic work manager -->
        <resource-ref>
            <res-ref-name>default</res-ref-name>
            <res-type>commonj.work.WorkManager</res-type>
            <res-auth>Container</res-auth>
            <res-sharing-scope>Shareable</res-sharing-scope>
        </resource-ref>
        <!-- default weblogic timer manager -->
        <resource-ref>
            <res-ref-name>tm/default</res-ref-name>
            <res-type>commonj.timers.TimerManager</res-type>
            <res-auth>Container</res-auth>
            <res-sharing-scope>Shareable</res-sharing-scope>
        </resource-ref>
        <servlet>
            <servlet-name>TestServlet</servlet-name>
            <servlet-class>test.TestServlet</servlet-class>
        </servlet>
        <servlet-mapping>
            <servlet-name>TestServlet</servlet-name>
            <url-pattern>/testservlet</url-pattern>
        </servlet-mapping>
    </web-app>with this set-up the JMS clustered and Spring is able to use it on both servers.

  • Thread hang?

    hi all,
    currently working on an applet (a large applet which contain other sub applet) which used thread, it seem to hang the application, but it does not have any error information. i've check the possible loop in the code section, should no problem but only once, as below:
    //*** partial of the code
    Thread t = new Thread(){
       public void run(){
          while ( !stop ){
             // do something here
             System.out.println("testing here...");
             wait(); //*** here cause the problem ***//
             System.out.println("finished testing here...");
             //*** other part down here ...
    t.start();above thread creation is in the "init()" method, it seem to hang at the "wait()" state if there are large number of result to process, but if the result to process is small this applet work just fine, any idea? thanks a lot.

    Here has more details:
    java weblogic.version: WebLogic Server 10.3 Fri Jul 25 16:30:05 EDT 2008 1137967
    SERVICE NAME VERSION INFORMATION
    ============ ===================
    Kernel Commonj WorkManager v1.1
    TimerService Commonj TimerManager v1.1
    CorbaService CORBA 2.3, IIOP 1.2, RMI-IIOP SFV2, OTS 1.2, CSIv2 Level 0 + Stateful
    XMLService XML 1.1
    Transaction Service JTA 1.0.1B
    JDBCService JSR-114, JDBC 3.0
    CustomResourceServerService 1.0.0.0
    Servlet Container Servlet 2.5, JSP 2.1
    WebServices JSR-173, JAX-RPC, JSR-109, WSDL, WS-Addressing, WS-Policy, JAX-B, JAX-R, UDDI, WS-Management(HP), JAXP-1.3, WS-Security
    Pre Admin Singleton Services S 1.0
    Singleton Services Batch Manag 1.0
    EJB Container EJB 3.0
    MDBService EJB 3.0
    EJBTimerService EJB 3.0
    J2EE Connector 1.5
    JMS Service JMS 1.1

  • Upgrading Weblogic

    We have a little bit of weird situation, we want to upgrade out server from Weblogic 9.2 MP2 to MP3. But our vendor is not ready to do it. And we have to follow our vendors instruction, as we are getting our application from vendor. I have a question here, does it really make a difference to a vendor if we upgrade the servers. Can't we just deploy the application packed for MP2 to MP3.
    I did a verbose on weblogic.version and found the same versions for MP2 and MP3, below are the version details:
    SERVICE NAME VERSION INFORMATION
    ============ ===================
    Kernel Commonj WorkManager v1.1
    TimerService Commonj TimerManager v1.1
    CorbaService CORBA 2.3, IIOP 1.2, RMI-IIOP SFV2, OTS 1.2, CSIv2 Level 0 + Stateful
    XMLService XML 1.1
    Transaction Service JTA 1.0.1B
    JDBCService JSR-114, JDBC 3.0
    ConnectorService JCA 1.5
    JMS Service JMS 1.1
    CustomResourceServerService 1.0.0.0
    EJB Container EJB 2.1
    Servlet Container Servlet 2.4, JSP 2.0
    WebServices JSR-173, JAX-RPC, JSR-109, WSDL, WS-Addressing, WS-Policy, JAX-B, JAX-R, UDDI, WS-Management(HP), JAXP-1.3, WS-Security
    MDBService EJB 2.1, JCA 1.5
    Waiting on yours view, Thanks in advance.

    Hi,
    To be do not think that there would be any problem in that as in WLS 9.2 MP3 only the bugs which were found in WLS 9.2 MP2 might have been fixed and not major changes have been made in the new MP, also the JDK and other components would remain the same. Hence moving from to news MP version would not have any problem and its always recommended to use the latest versions.
    To be in a safe positon position you can upgrade your test environment and check your same production application in it and then do the same thing for production.
    You can get all the lists of fixes been made in WLS 9.2 MP3 in the below link.
    http://download.oracle.com/docs/cd/E13222_01/wls/docs92/issues/known_resolved.html
    Ravish Mody
    http://middlewaremagic.com/weblogic
    Come, Join Us and Experience The Magic…

  • A question about Job schdueling in cluster

    hi all
    I have a weblogic cluster and want to use the build-in commonj support to do some scheduling work.the pdf version document "Timer and Work Manager API (CommonJ) Programmer's Guide" has something like this on page 7,"The Timer Listener class must be pesent in the server system classpath" .does it mean that I should not put it in web-inf/classes?instead, I should jar it and put the jar somewhere inside wls_home/server/lib or ext ?
    thanks a lot :-]

    hi mchellap
    here is another question about timers in the cluster,
    1) I implemented a serializable timerlistener which I want to make it cluster aware
    2) put the JNDI items "timer/MyTimer" in web.xml which is to commonj.timers.TimerManager
    3) I created a datasource on cluster in console with the tables created in db
    after the cluster is started,the job is to print out the "new Date()" in console every 40 second,and it worked very well
    I am expecting something in the db table,but there is nothing,not even a exception ,anything wrong here?
    thanks a lot

Maybe you are looking for

  • Mail Error messages..please help

    Ok, so recently, my .mac mail account keeps giving me this error. +Some actions taken while the account "[email protected]" was offline could not be completed online.+ +Mail has undone actions on some messages so that you can redo the actions while o

  • How to replicate a many to many schema

    Hi, We are trying to replicate a many to many schema as the following: Table: STATE Name ¿Null? Type ID_STATE NOT NULL NUMBER STATE_NAME NOT NULL VARCHAR2(32) Table: USER Name ¿Null? Type ID_USER NOT NULL NUMBER USER_NAME NOT NULL VARCHAR2(32) Table:

  • How can I see the organization of searched bookmarks?

    I have bookmarks organized in folders and subfolders. When I search for a bookmark, the results are returned in a list. How can I find out which folder or subfolder the bookmark resides in? == Firefox version == 3.6.3

  • How to pass serial numbers in L_IDOC_INPUT_WMMBXY

    Hi folks, I'm using L_IDOC_INPUT_WMMBXY to post goods movement during PGI. I wanted to pass serial numbers in this idoc for the materials. There is a user exit in this Idoc, EXIT_SAPLLMDE_002 which I guess could be used to pass the serial numbers but

  • Xsl:include return incorrect base url

    I am using FOP to generate PDF file in servlet.           I have 2 stylesheets (e.g. a.xsl and b.xsl), they are located in <myapplication>\webapp\application\stylesheet.           In a.xsl, it includes b.xsl:           <xsl:include href="a.xsl"/>