WebLogic classloader issue

Hi,
I'm trying to resolve a "cannot be cast" error on Oracle JDeveloper 11.1.2.2.0. My application is using eclipselink JPA provider, which works fine on a fresh start WLS. However, when I redeployed my application without restarting the WLS, I got a very strange runtime error:
gov.noaa.gcld.model.jpa.User cannot be cast to gov.noaa.gcld.model.jpa.User
The code is:
List<User> users = dao.findByUserLdapId(userId);
The compile has no error. I checked the classloader of the User object returned by the entityManager. This is what I've found:
1) When I did a fresh start of the WLS,
The classloader of User object in my application: weblogic.utils.classloaders.ChangeAwareClassLoader@1bf353c
The classloader of User object returned from the entity manager: weblogic.utils.classloaders.ChangeAwareClassLoader@1bf353c
The application is working fine at this time.
2) When I redeployed my application without restarting the WLS,
The classloader of User object in my application: weblogic.utils.classloaders.ChangeAwareClassLoader@14e4ae9
The classloader of User object returned from the entity manager: weblogic.utils.classloaders.ChangeAwareClassLoader@1bf353c
Now I got the "gov.noaa.gcld.model.jpa.User cannot be cast to gov.noaa.gcld.model.jpa.User" error.
It looks the WLS is using a new classloader when I redeploy my application but still using the old classoloader for eclipselink entity manager, even after I undeployed my application completely, and there's no other applications using the same persistence unit.
Does anybody know how to force the WLS to reload the eclipselink entity manager using the same classloader as the application? Our server admin will not restart the WLS when we redeploy our applications.
Thanks very much for your help!
Edited by: huaichen on Aug 8, 2012 12:00 PM

I assume you are using a non (application) managed persistence unit. For application managed persistence units you are responsible for closing the EntityManagerFactory when undeploying.
If any EntityManagerFactory are not closed, then the old persistence unit remains deployed, and will have the wrong class loader.
See,
https://bugs.eclipse.org/bugs/show_bug.cgi?id=326552

Similar Messages

  • Weblogic Classloader issues

    I place my WAR file for deployment in the domain/applications directory for automatic deployment when the Weblogic server starts. This usually works fine. But, for unkown reasons, I am now getting a ClassNotFoundException after I added some new JARS to the appliation's WEB-INF/lib directory. The Class that it complains about is in one of the new JARs, the package name is correct, and the JAR is getting deployed. When I deploy the application manually, I the problem goes away. Deploying manually means that I make the applicatoin directory myself under domain/applications and the unwar it into that directory.
    I'm using Weblogic 8.1 SP3 on a Windows Server 2000.

    Hi
    The problem with t3config and disableWeblogicClassPath (described below) also
    seems to exist in WLS 5.1 - sp2.
    Regards
    Steffen Bering Jensen
    Systems Architect * Nordija ApS * Denmark
    [email protected] wrote:
    I hope that it is fixed in post 4.5.0 versions.
    [email protected] wrote:
    Steffen
    I ran into the same problem with 4.5.0 while using t3config
    I would like to know the version you are working with.
    Support, please tell me it can be fixed.
    Madhu
    "Steffen B. Jensen" wrote:
    Hi
    Due to some classloader issues we start up WebLogic with the following
    system property:
    -Dweblogic.system.disableWeblogicClassPath=true
    and no weblogic.class.path property.
    However, when trying to set this up for an NT service using wlconfig,
    wlconfig seems to insist on a weblogic.class.path system property. When
    that property exists (although empty) WebLogic will not boot.
    It seems that you can't run weblogic as an NT service with
    weblogic.system.disableWeblogicClassPath=true?
    Regards
    Steffen Bering Jensen
    Systems Architect * Nordija ApS * Denmark

  • Java.lang.ClassNotFoundException - classloader issue ?

    Hi All
    We tried to deploy our ADF ear file to 10.3.6 weblogic.
    Our app uses 3rd party jars put in WEB-INF/lib in war which in turn is in our app ear file.
    Our web.xml is configured
       <listener>
        <listener-class>org.jboss.weld.environment.servlet.Listener</listener-class>
      </listener>
    When we deploy our ear app, we get this error:
    Is this a classloader issue ? If it is, at what level of classloader this is failing ?
    What file should we configure ?
    Where should we put our third-party jars as we do not have control over the install weblogic servers owned by another team.
    Any help is appreciated.
    Sincerely
    ####<Sep 18, 2013 10:54:50 AM PDT> <Error> <Console> <host> <AdminServer> <[ACTIVE] ExecuteThread: '16' for queue: 'weblogic.kernel.Default (self-tuning)'> <weblogic> <> <085fcd85a0c1669b:64c5b0f5:141284171fa:-8000-00000000000001eb> <1379526890738> <BEA-240003> <Console encountered the following error weblogic.management.DeploymentException: [Deployer:149233]An unexpected error was encountered during the deployment process.
      at weblogic.deploy.internal.targetserver.DeployHelper.handleException(DeployHelper.java:385)
      at weblogic.deploy.internal.targetserver.DeployHelper.convertThrowableForTransfer(DeployHelper.java:511)
      at weblogic.deploy.internal.targetserver.DeploymentManager.notifyCommitFailure(DeploymentManager.java:1442)
      at weblogic.deploy.internal.targetserver.DeploymentManager.handleCommit(DeploymentManager.java:457)
      at weblogic.deploy.internal.targetserver.DeploymentServiceDispatcher.commit(DeploymentServiceDispatcher.java:163)
      at weblogic.deploy.service.internal.targetserver.DeploymentReceiverCallbackDeliverer.doCommitCallback(DeploymentReceiverCallbackDeliverer.java:195)
      at weblogic.deploy.service.internal.targetserver.DeploymentReceiverCallbackDeliverer.access$100(DeploymentReceiverCallbackDeliverer.java:13)
      at weblogic.deploy.service.internal.targetserver.DeploymentReceiverCallbackDeliverer$2.run(DeploymentReceiverCallbackDeliverer.java:68)
      at weblogic.work.SelfTuningWorkManagerImpl$WorkAdapterImpl.run(SelfTuningWorkManagerImpl.java:545)
      at weblogic.work.ExecuteThread.execute(ExecuteThread.java:256)
      at weblogic.work.ExecuteThread.run(ExecuteThread.java:221)
    Caused by: java.lang.ClassNotFoundException: ch.qos.cal10n.MessageConveyorException
      at weblogic.utils.classloaders.GenericClassLoader.findLocalClass(GenericClassLoader.java:297)
      at weblogic.utils.classloaders.GenericClassLoader.findClass(GenericClassLoader.java:270)
      at weblogic.utils.classloaders.ChangeAwareClassLoader.findClass(ChangeAwareClassLoader.java:64)
      at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
      at java.lang.ClassLoader.loadClass(ClassLoader.java:247)
      at weblogic.utils.classloaders.GenericClassLoader.loadClass(GenericClassLoader.java:179)
      at weblogic.utils.classloaders.ChangeAwareClassLoader.loadClass(ChangeAwareClassLoader.java:52)
      at ch.qos.cal10n.MessageConveyor.lookup(MessageConveyor.java:115)
      at ch.qos.cal10n.MessageConveyor.getMessage(MessageConveyor.java:77)
      at org.jboss.weld.logging.WeldMessageConveyor.getMessage(WeldMessageConveyor.java:66)
      at org.jboss.weld.exceptions.WeldExceptionKeyMessage.getAsString(WeldExceptionKeyMessage.java:67)
      at org.jboss.weld.exceptions.WeldException.getMessage(WeldException.java:87)
      at org.jboss.weld.exceptions.WeldException.getLocalizedMessage(WeldException.java:82)
      at java.lang.Throwable.toString(Throwable.java:343)
      at com.bea.logging.ThrowableWrapper.<init>(ThrowableWrapper.java:26)
      at com.bea.logging.ThrowableWrapper.<init>(ThrowableWrapper.java:29)
      at com.bea.logging.BaseLogRecord.setThrown(BaseLogRecord.java:172)
      at com.bea.logging.BaseLogRecord.<init>(BaseLogRecord.java:100)
      at weblogic.logging.WLLogRecord.<init>(WLLogRecord.java:63)
      at weblogic.logging.JDKLoggerFactory.createBaseLogRecord(JDKLoggerFactory.java:85)
      at com.bea.logging.LoggingService.log(LoggingService.java:234)
      at weblogic.i18n.logging.Loggable.log(Loggable.java:158)
      at weblogic.deploy.internal.targetserver.operations.AbstractOperation.complete(AbstractOperation.java:429)
      at weblogic.deploy.internal.targetserver.operations.AbstractOperation.commit(AbstractOperation.java:326)
      at weblogic.deploy.internal.targetserver.DeploymentManager.handleDeploymentCommit(DeploymentManager.java:844)
      at weblogic.deploy.internal.targetserver.DeploymentManager.activateDeploymentList(DeploymentManager.java:1253)
      at weblogic.deploy.internal.targetserver.DeploymentManager.handleCommit(DeploymentManager.java:440)

    Please check if the clas ch.qos.cal10n.MessageConveyorException is available.
    check permissions.
    check if exist.
    check if the directory is into JAVA_CLASSPATH.

  • Best Practice for Resolving OAS 10g R3 Classloading Issues

    What's the best practices for eliminating classloading issues for shared libraries that are loaded by default (apache.commons.logging, oracle.toplink, etc) in OAS 10g R3?
    So far it looks like my options are to exclude the conflicting JARs in my deployed applications or manually remove the entries from the application.xml and system-application.xml files in the OC4J instance config directory.
    I know that I can override the shared libraries loaded from the system-application.xml by using the <web-app-class-loader search-local-classes-first="true"/> element in my orion-web.xml but is that the best practice? Also note that this solution does not override the apache.commons.logging shared library loaded from the container's application.xml.
    So what is the best practice?

    What's the best practices for eliminating classloading issues for shared libraries that are loaded by default (apache.commons.logging, oracle.toplink, etc) in OAS 10g R3?
    So far it looks like my options are to exclude the conflicting JARs in my deployed applications or manually remove the entries from the application.xml and system-application.xml files in the OC4J instance config directory.
    I know that I can override the shared libraries loaded from the system-application.xml by using the <web-app-class-loader search-local-classes-first="true"/> element in my orion-web.xml but is that the best practice? Also note that this solution does not override the apache.commons.logging shared library loaded from the container's application.xml.
    So what is the best practice?

  • CUSTOM CLASSLOADER ISSUES WITH APPLET

    HELP WOULD BE MUCH APPRECIATED FROM ANYONE KNOWING ABOUT CLASSLOADER ISSUES
    I have an applet that must be dynamically extensible at run time. I am using
    the URLClassLoader to support dynamic class loading for the modules the
    applet must contain on the specific page.
    Each jar file contains:
    * The class files, icons and other resources for the module
    * a file called META-INF/ext.initializers
    The initializers file contains a list of classes which implement my
    ExtensionInitializer interface. I am using
    ClassLoader.getResources("META-INF/ext.initializers") to obtain these lists.
    This works fine.
    Each class implementing ExtensionInitializer is responsible for attaching
    various objects to the main applet i.e extra GUI items, information
    processors etc...
    The problem I am getting is that although the class loader will load
    resources ok, it WILL NOT LOAD the damn classes!!!
    Here's the snippet of code where it runs into trouble:
    while (it.hasNext())
    String name = (String)it.next();
    Class c = classLoader.loadClass(name);
    ExtensionInitializer initializer =
    (ExtensionInitializer)c.newInstance();
    initializer.preInitialize(session);
    System.out.println("Pre Initialized: " + initializer);
    // Remember we initialized this so we can call postInitialize
    later
    initializers.add(initializer);
    The output proving that the URLs were infact added and the ext.initializers
    list was processed (containing the class name
    com.katalyzt.toolbox.ext.cm.gui.CaseInitializer):
    Extension URLs
    file:/C:/java/Katalyzt/lib/ext/Case.jar
    file:/C:/java/Katalyzt/lib/ext/WorkArea.jar
    Found initializer:
    jar:file:/C:/java/Katalyzt/lib/ext/Case.jar!/META-INF/ext.initializers
    java.lang.ClassNotFoundException:
    com.katalyzt.toolbox.ext.cm.gui.CaseInitializer
    at java.net.URLClassLoader$1.run(URLClassLoader.java:200)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:297)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:253)
    at
    com.katalyzt.toolbox.gui.AppletExtensionLoader.loadExtensions(AppletExtensio
    nLoader.java:97)
    at
    com.katalyzt.toolbox.gui.ToolboxSessionPanel.preInitialize(ToolboxSessionPan
    el.java:70)
    at
    com.katalyzt.toolbox.gui.ToolboxSessionApplet.init(ToolboxSessionApplet.java
    :28)
    at sun.applet.AppletPanel.run(AppletPanel.java:344)
    at java.lang.Thread.run(Thread.java:484)
    java.lang.ClassNotFoundException:
    com.katalyzt.toolbox.ext.cm.gui.CaseInitializer
    at java.net.URLClassLoader$1.run(URLClassLoader.java:200)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:297)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:253)
    at
    com.katalyzt.toolbox.gui.AppletExtensionLoader.loadExtensions(AppletExtensio
    nLoader.java:97)
    at
    com.katalyzt.toolbox.gui.ToolboxSessionPanel.preInitialize(ToolboxSessionPan
    el.java:70)
    at
    com.katalyzt.toolbox.gui.ToolboxSessionApplet.init(ToolboxSessionApplet.java
    :28)
    at sun.applet.AppletPanel.run(AppletPanel.java:344)
    at java.lang.Thread.run(Thread.java:484)
    Found initializer:
    jar:file:/C:/java/Katalyzt/lib/ext/Case.jar!/META-INF/ext.initializers

    It is the standard secure java.net.URLClassLoader that I am using to load the classes. I create an instance of this with a URL[] specifying the urls of dynamic extension jars. Someone suggested that security restrictions may be to blame but it also occurs with the applet viewer with all class loading restrictions turned off. The resource files contained in the jars do become available. Someone suggested was signing the jars which I will check today.

  • New  bee weblogic classloader

    I read some articles on weblogic classloading. This is what is my understanding any jar files needed by both ejb and war shoud be placed in the root of an ear file ,suppose i need log4j for both ejb and war i place it inside ear and add amanifest entry in ejb , and war can also see log4j becaue the war parent class-loader is ejb classloader.Now suppose I need struts jar for my war , Should I just place in web-inf/lib and no entry in war manifest ? is this right?
    I am facing lot of troubles with my war classloader,any utility class I call in war I get get class not found exception, what stops war classloader not to see classes inside jar inside web-inf/lib ?

    Isn't the documentation link I responded with pretty clear? APP-INF is a directory directly in the root of the EAR and you can create it yourself.
    Class Loading for Shared Classes+
    The classes and libraries stored under APP-INF/classes and APP-INF/lib are available to all modules in the Enterprise Application. The application classloader always attempts to resolve class requests by first looking in APP-INF/classes, then APP-INF/lib.
    If you want to isolate jars and classes to a particular Web module, then you can put them in the Web module's WEB-INF/lib or use the manifest mechanism that you referenced. I find the manifest mechanism to be brittle in comparison, but it is standard and portable. Putting jars that I want in APP-INF/lib for universal access and WEB-INF/lib for web module isolated access is easier in my opinion because the location of the jar file denotes your intention.
    http://edocs.bea.com/wls/docs103/programming/classloading.html#wp1069420

  • Apache - Weblogic Connection Issue

    Hi
    we are facing with Apache weblogic communication issues.
    The communication with Apache and Weblogic works for some time ( few hrs), But after some time we get the below error.
    Let us take one pair. (Apachedevv1 ----> Weblogicdevp1)
    Yesterday evening it was working fine. Today morning I see the below error.
    http://Apachedevv1/
    Failure of server APACHE bridge:
    No backend server available for connection: timed out after 10 seconds or idempotent set to OFF.
    Build date/time: Apr 20 2009 21:26:02
    Change Number: 1211636
    Then I run the below command on Weblogicdevp1
    C:\> telnet Apachedevv1 80
    This is success as the Apache is running on Apachedevv1:80
    Now If I access the URL http://Apachedevv1/ it is success now and I get the weblogic home page.
    Pls let us know if you had face this type of issue earlier.
    Following are the lines added in httpd.conf of Apache.
    <IfModule mod_weblogic.c>
    WebLogicHost Weblogicdevp1
    WebLogicPort 7001
    </IfModule>
    <Location />
    SetHandler weblogic-handler
    </Location>
    I see the below errors in error.log of Apache.
    [Wed Dec 29 09:10:59 2010] [error] [client xx.yy.49.39] ap_proxy: trying GET / at backend host 'xx.yy.86.54/7001; got exception 'CONNECTION_REFUSED [os error=0, line 1715 of ../nsapi/URL.cpp]: Error connecting to host xx.yy.86.54:7001'
    [Wed Dec 29 09:11:03 2010] [error] [client xx.yy.49.39] ap_proxy: trying GET / at backend host 'xx.yy.86.54/7001; got exception 'CONNECTION_REFUSED [os error=0, line 1715 of ../nsapi/URL.cpp]: Error connecting to host xx.yy.86.54:7001'
    [Wed Dec 29 09:11:07 2010] [error] [client xx.yy.49.39] ap_proxy: trying GET / at backend host 'xx.yy.86.54/7001; got exception 'CONNECTION_REFUSED [os error=0, line 1715 of ../nsapi/URL.cpp]: Error connecting to host xx.yy.86.54:7001'
    Thanks

    The error means , there is no application server running on that port configured in apache that is 7001 at the time of issue.
    One more thing you are doing telnet on 80 , but you should do telnet on 7001 and not on apache port.
    So if you face the issue again, please do telnet on weblogic host like " telnet weblogicdevp1 7001".
    It's not problem with apache version and weblogic plugin version.
    You can integrate weblogic with apache using mod_proxy module also, pls refer the below link for more info:
    http://middlewareforum.com/weblogic/?p=292
    Rgds,
    Kartheek

  • JRE classloading issue

    Hi,
    I have an application where I use JAF(Java Activation Framework) source code for my purpose. My application works fine with jdk1.5. When I run my application with jdk1.6, it does not work properly.
    The cause is JAF is included in JRE1.6 and my application refers to the JAF present in the JRE not the one in my application.
    My question is by any means can I ignore the JAF present in JRE1.6 and use the one present with my application?
    Any help is appriciated.
    Champak

    cutecolt wrote:
    I need to deploy a java application in a unix box.Deploy?
    Do you just mean "run" or "launch" - or do you mean deploy under an AppServer framework?
    when i wanted to execute the same application in the unix box, I get NoClassDefFound for the library jars though i have set the classpath and the write permissions are there for the lib jar files.NoClassDefFound for the library jars?
    Do you mean you get NoClassDefFound for the class containing "main()" or some other specific class?
    You don't get NoClassDefFound for jars...
    But i found the issue may be in the JRE conflict. I have 2 jre's available in the box. You can have several JREs installed. That does not cause conflicts.
    When i type java -version, it is showing, 1.4.2_08 but my application was compatible with jdk 1.5 and infact 1.5.0 is also available in the machine.This just means that your 1.4.2 JRE is on your PATH and is the first place the shell found "java".
    I tried to exectue the program by changing to the jdk 1.5.0 path like /app/instals/jdk1/5/bin/java -cp /lib/hibernate.jar abc. so i didn't get the unsupportedversionexception.You mean by launching java using the fully qualified name.
    But none of the jars in the classpath wasn't loaded. Huh?
    I think there is some classloading issue associated with JRE. Unlikely.
    How i use the 1.5.0 jre? Same way as the 1.4.2 JRE.
    Btw, there are some application running in the box so i may not be able to switch to 1.5 entirely.Not relevant.

  • Classloader issue when deploying a war file

    Hello,
    Using Jdev 11.1.1.3 with WebLogic 10.3.2.0 when we deploy a new version of our war file we get a ClassCastException for an entity class that cannot be cast on itself ! We are using standalone JPA for persistence.
    Caused by: javax.faces.el.EvaluationException: java.lang.ClassCastException: gouv.micc.intimm.pers.model.entite.Personne cannot be cast to gouv.micc.intimm.pers.model.entite.Personne
    It looks like a classloader cache issue. This happend even if we first delete the war file before we upload a new one. The only way to solve this is to restart WebLogic. Any idea?

    Seems like a WebLogic issue - try asking on that forum:
    http://forums.oracle.com/forums/category.jspa?categoryID=193

  • AuditProvider classloading issues

    Hi all,
    We are implementing an AuditProvider for WLS that communicates via SOAP with a custom application that provides secure audit storage.
    We have followed the following example to implement the base of the provider:
    https://codesamples.projects.dev2dev.bea.com/servlets/Scarab?id=S189
    After that, we used the clientgen Ant task to generate the SOAP access code, and packaged everything in an MJF file using MBeanMaker.
    We copy the MJF to WL_HOME/server/lib/mbeantypes, configure the MBean using the admin console.
    However, when restarting stuff, during our AuditProvider initialization we get:
    javax.xml.rpc.ServiceException: weblogic client internal deployment descriptor com/kroopier/bea/sap/soap/BEAAuditLogService_internaldd.xml not found. Please make sure all clientgen generated files are in the classpath.
            at weblogic.wsee.jaxrpc.ServiceImpl.loadWeblogicDD(ServiceImpl.java:397)
            at weblogic.wsee.jaxrpc.ServiceImpl.loadInternalDD(ServiceImpl.java:346)
            at weblogic.wsee.jaxrpc.ServiceImpl.<init>(ServiceImpl.java:110)
            at com.kroopier.bea.sap.soap.BEAAuditLogService_Impl.<init>(BEAAuditLogService_Impl.java:21)
            at com.kroopier.bea.sap.soap.BEAAuditLogService_Impl.<init>(BEAAuditLogService_Impl.java:17)
            Truncated. see log file for complete stacktraceUpon further research, it seems that the SOAP code generated by clientGen uses Thread.currentThread().getContextClassLoader() to load the support files (some xml files it generates). We suspect that this class loader is not the class loader being used to load the mjf jar, so the mjf jar contents (which include the file that cannot be found) are not used.
    Is there a simple way to solve this?
    Kind regards,
    Alex

    Thank you.
    As we are creating an AuditProvider for distribution, we'd rather have it be a single jar file that goes into mbeantypes than having to put our jar into system classpath (i.e. I'd think this would make our provider less desirable).
    My current line of reasoning is as follows:
    1. We are trying to invoke code from our AuditProvider that uses Thread.currentThread().getContextClassLoader() for reflection purposes
    2. Thread.currentThread().getContextClassLoader() does not include the AuditProvider jar deployed in mbeantypes, but the one in this.getClass().getClassLoader() does (I suspect that the this.getClass().getClassLoader() is the one that the class uses for loading the classes it needs).
    3. Why would someone use Thread.currentThread().getContextClassLoader() to load classes? Clearly, if you are loading the rest of the classes your class needs with this.getClass().getClassLoader(), use that one, as you don't know what your thread's context class loader is.
    Therefore, our hacky solution is to do this:
    ClassLoader threadClassLoader = Thread.currentThread().getContextClassLoader();
    try {
      Thread.currentThread().setContextClassLoader(getClass().getClassLoader());
      // bad code that uses the thread's context class loader
    finally {
      Thread.currentThread().setContextClassLoader(threadClassLoader);
    }Long term, I'd like to advise people (esp. the guys who wrote weblogic.wsee.tools.anttasks.ClientGenTask and Hessian- which is the code that's given us trouble so far) to use the current class' classloader for reflection stuff instead of the thread's.
    Of course, I have my doubts that this hack won't cause further trouble, so I'd appreciate further feedback on this issue.
    Alex

  • Upgrading to weblogic 12c issue with JSF

    Migrating to the Weblogic 12c faced so many issue with the shared class library. After fixing all the issue stuck with JSF and on google everywhere it was mentioned error happening due to multiple JSF version colliding.
    My whole application works like a charm in 10.3.6 but same app not working after updating the spring 4 and hibernate 4.
    This is the error I am receiving below errors ...
    <javax.enterprise.resource.webcontainer.jsf.application> <BEA-000000> <JSF1029: The specified InjectionProvider implementation 'com.bea.faces.WeblogicInjectionProvider' does not implement the InjectionProvider interface. >
    1. Cause: Unable to create a new instance of 'org.springframework.web.jsf.DelegatingVariableResolver': javax.faces.FacesException: org.springframework.web.jsf.DelegatingVariableResolver
    2. Cause: Unable to create a new instance of 'org.springframework.web.jsf.DelegatingVariableResolver': javax.faces.FacesException: org.springframework.web.jsf.DelegatingVariableResolver
        at com.sun.faces.config.processor.AbstractConfigProcessor.createInstance(Unknown Source)
        at com.sun.faces.config.processor.ApplicationConfigProcessor.addVariableResolver(Unknown Source)
        at com.sun.faces.config.processor.ApplicationConfigProcessor.process(Unknown Source)
        at com.sun.faces.config.processor.AbstractConfigProcessor.invokeNext(Unknown Source)
        at com.sun.faces.config.processor.LifecycleConfigProcessor.process(Unknown Source)
        Truncated. see log file for complete stacktrace
    Caused By: javax.faces.FacesException: org.springframework.web.jsf.DelegatingVariableResolver
        at com.sun.faces.config.processor.AbstractConfigProcessor.loadClass(Unknown Source)
        at com.sun.faces.config.processor.AbstractConfigProcessor.createInstance(Unknown Source)
        at com.sun.faces.config.processor.ApplicationConfigProcessor.addVariableResolver(Unknown Source)
        at com.sun.faces.config.processor.ApplicationConfigProcessor.process(Unknown Source)
        at com.sun.faces.config.processor.AbstractConfigProcessor.invokeNext(Unknown Source)
        Truncated. see log file for complete stacktrace
    Caused By: java.lang.ClassNotFoundException: org.springframework.web.jsf.DelegatingVariableResolver
        at weblogic.utils.classloaders.GenericClassLoader.findLocalClass(GenericClassLoader.java:297)
        at weblogic.utils.classloaders.GenericClassLoader.findClass(GenericClassLoader.java:270)
        at weblogic.utils.classloaders.ChangeAwareClassLoader.findClass(ChangeAwareClassLoader.java:64)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:425)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:358)
        Truncated. see log file for complete stacktrace
    3. ]] Root cause of ServletException.
    java.lang.IllegalStateException: Could not find backup for factory javax.faces.context.FacesContextFactory.
        at javax.faces.FactoryFinderInstance.getFactory(Unknown Source)
        at javax.faces.FactoryFinder.getFactory(Unknown Source)
        at javax.faces.webapp.FacesServlet.init(Unknown Source)
        at weblogic.servlet.internal.StubSecurityHelper$ServletInitAction.run(StubSecurityHelper.java:299)
        at weblogic.servlet.internal.StubSecurityHelper$ServletInitAction.run(StubSecurityHelper.java:250)
        Truncated. see log file for complete stacktrace
    4.Error> <javax.faces> <BEA-000000> <Application was not properly initialized at startup, could not find Factory: javax.faces.application.ApplicationFactory. Attempting to find backup.>
    <Error> <javax.enterprise.resource.webcontainer.jsf.config> <BEA-000000> <Unexpected exception when attempting to tear down the Mojarra runtime
    java.lang.IllegalStateException: Could not find backup for factory javax.faces.application.ApplicationFactory.
        at javax.faces.FactoryFinder$FactoryManager.getFactory(FactoryFinder.java:1010)
        at javax.faces.FactoryFinder.getFactory(FactoryFinder.java:342)
        at com.sun.faces.config.InitFacesContext.getApplication(InitFacesContext.java:141)
        at com.sun.faces.config.ConfigureListener.contextDestroyed(ConfigureListener.java:314)
        at weblogic.servlet.internal.EventsManager$FireContextListenerAction.run(EventsManager.java:583)
        Truncated. see log file for complete stacktrace
    I had the classloader from weblogic but unable to find if there is anything related with Multiple JSF versions colliding. Here is the classloader log
    **System Classloaders**
    Type: sun.misc.Launcher$ExtClassLoader
    HashCode: 1956433926
    Classpath:
    /C:/Java/jdk1.7.0_45/jre/lib/ext/access-bridge-64.jar
    /C:/Java/jdk1.7.0_45/jre/lib/ext/dnsns.jar
    /C:/Java/jdk1.7.0_45/jre/lib/ext/jaccess.jar
    /C:/Java/jdk1.7.0_45/jre/lib/ext/localedata.jar
    /C:/Java/jdk1.7.0_45/jre/lib/ext/sunec.jar
    /C:/Java/jdk1.7.0_45/jre/lib/ext/sunjce_provider.jar
    /C:/Java/jdk1.7.0_45/jre/lib/ext/sunmscapi.jar
    /C:/Java/jdk1.7.0_45/jre/lib/ext/zipfs.jar
    Type: sun.misc.Launcher$AppClassLoader
    HashCode: 345487281
    Classpath:
    /C:/Oracle12c/Middleware/modules/features/weblogic.server.modules_12.1.1.0.jar
    /C:/Oracle12c/Middleware/modules/net.sf.antcontrib_1.1.0.0_1-0b2/lib/ant-contrib.jar
    /C:/Oracle12c/Middleware/modules/org.apache.ant_1.7.1/lib/ant-all.jar
    /C:/Oracle12c/Middleware/patch_ocp371/profiles/default/sys_manifest_classpath/weblogic_patch.jar
    /C:/Oracle12c/Middleware/patch_wls1211/profiles/default/sys_manifest_classpath/weblogic_patch.jar
    /C:/Oracle12c/Middleware/wlserver_12.1/common/derby/lib/derbyclient.jar
    /C:/Oracle12c/Middleware/wlserver_12.1/server/lib/weblogic.jar
    /C:/Oracle12c/Middleware/wlserver_12.1/server/lib/weblogic_sp.jar
    /C:/Oracle12c/Middleware/wlserver_12.1/server/lib/webservices.jar
    /C:/Oracle12c/Middleware/wlserver_12.1/server/lib/xqrl.jar
    /C:/Program%20Files/Java/jdk1.7.0_45/lib/tools.jar
    Type: weblogic.utils.classloaders.GenericClassLoader
    HashCode: 1277718374
    Classpath:
    **Application Classloaders**
    Type: weblogic.utils.classloaders.FilteringClassLoader
    HashCode: 929366372
    Filter: [antlr.*, antlr.collections.*, antlr.collections.impl.*, antlr.debug.misc.*, com.sun.activation.*, com.sun.istack.*, com.sun.mail.*, com.sun.xml.*, org.apache.commons.*, org.joda.time.*, org.apache.xalan.*, org.apache.xml.*, org.apache.wml.*, org.apache.xerces.*, org.apache.xpath.*, com.ctc.wstx.*, org.slf4j.*, javax.faces.*, com.sun.faces.*, com.bea.faces.*, com.sun.el.*, javax.el.*, javassist.*]
    Classpath: empty
    Type: weblogic.utils.classloaders.GenericClassLoader
    HashCode: 2137066604
    Classpath:
    **Type: weblogic.utils.classloaders.FilteringClassLoader**
    HashCode: 1212049573
    Filter: []
    Classpath: empty
    Type: weblogic.utils.classloaders.ChangeAwareClassLoader
    HashCode: 1604673952
    Classpath:
    C:\s-ear-1.0-SNAPSHOT_4
    C:\s-ear-1.0-SNAPSHOT_4\war\WEB-INF\classes
    C:\s-ear-1.0-SNAPSHOT_4\war\WEB-INF\lib\FastInfoset-1.2.12.jar
    C:\s-ear-1.0-SNAPSHOT_4\war\WEB-INF\lib\_wl_cls_gen.jar
    C:\s-ear-1.0-SNAPSHOT_4\war\WEB-INF\lib\acegi-security-1.0.7.jar
    C:\s-ear-1.0-SNAPSHOT_4\war\WEB-INF\lib\activation-1.1.jar
    C:\s-ear-1.0-SNAPSHOT_4\war\WEB-INF\lib\activation.jar
    C:\s-ear-1.0-SNAPSHOT_4\war\WEB-INF\lib\antlr-2.7.7.jar
    C:\s-ear-1.0-SNAPSHOT_4\war\WEB-INF\lib\aopalliance-1.0.jar
    C:\s-ear-1.0-SNAPSHOT_4\war\WEB-INF\lib\aspectjrt-1.8.5.jar
    C:\s-ear-1.0-SNAPSHOT_4\war\WEB-INF\lib\aspectjweaver-1.8.5.jar
    C:\s-ear-1.0-SNAPSHOT_4\war\WEB-INF\lib\backport-util-concurrent-3.1.jar
    C:\s-ear-1.0-SNAPSHOT_4\war\WEB-INF\lib\bcprov-jdk16-140.jar
    C:\s-ear-1.0-SNAPSHOT_4\war\WEB-INF\lib\cacauth-2.0.jar
    C:\s-ear-1.0-SNAPSHOT_4\war\WEB-INF\lib\camel-core-2.5.0.jar
    C:\s-ear-1.0-SNAPSHOT_4\war\WEB-INF\lib\camel-josql-2.5.0.jar
    C:\s-ear-1.0-SNAPSHOT_4\war\WEB-INF\lib\caps-handshake-3.0.jar
    C:\s-ear-1.0-SNAPSHOT_4\war\WEB-INF\lib\caps2-liquibase-1.0-SNAPSHOT.jar
    C:\s-ear-1.0-SNAPSHOT_4\war\WEB-INF\lib\caps2domain-1.0-SNAPSHOT.jar
    C:\s-ear-1.0-SNAPSHOT_4\war\WEB-INF\lib\caps2util-1.0-SNAPSHOT.jar
    C:\s-ear-1.0-SNAPSHOT_4\war\WEB-INF\lib\cloning-1.7.4.jar
    C:\s-ear-1.0-SNAPSHOT_4\war\WEB-INF\lib\commons-beanutils-1.8.0.jar
    C:\s-ear-1.0-SNAPSHOT_4\war\WEB-INF\lib\commons-codec-1.9.jar
    C:\s-ear-1.0-SNAPSHOT_4\war\WEB-INF\lib\commons-collections-3.2.jar
    C:\s-ear-1.0-SNAPSHOT_4\war\WEB-INF\lib\commons-dbcp-1.4.jar
    C:\s-ear-1.0-SNAPSHOT_4\war\WEB-INF\lib\commons-digester-2.1.jar
    C:\s-ear-1.0-SNAPSHOT_4\war\WEB-INF\lib\commons-httpclient-3.1.jar
    C:\s-ear-1.0-SNAPSHOT_4\war\WEB-INF\lib\commons-io-1.4.jar
    C:\s-ear-1.0-SNAPSHOT_4\war\WEB-INF\lib\commons-lang-2.4.jar
    C:\s-ear-1.0-SNAPSHOT_4\war\WEB-INF\lib\commons-logging-1.1.jar
    C:\s-ear-1.0-SNAPSHOT_4\war\WEB-INF\lib\commons-logging-api-1.1.jar
    C:\s-ear-1.0-SNAPSHOT_4\war\WEB-INF\lib\commons-management-1.0.jar
    C:\s-ear-1.0-SNAPSHOT_4\war\WEB-INF\lib\commons-pool-1.5.4.jar
    C:\s-ear-1.0-SNAPSHOT_4\war\WEB-INF\lib\dom4j-1.6.1.jar
    C:\s-ear-1.0-SNAPSHOT_4\war\WEB-INF\lib\gentlyweb-utils-1.5.jar
    C:\s-ear-1.0-SNAPSHOT_4\war\WEB-INF\lib\hibernate-commons-annotations-4.0.4.Final.jar
    C:\s-ear-1.0-SNAPSHOT_4\war\WEB-INF\lib\hibernate-core-4.2.18.Final.jar
    C:\s-ear-1.0-SNAPSHOT_4\war\WEB-INF\lib\hibernate-entitymanager-4.2.18.Final.jar
    C:\s-ear-1.0-SNAPSHOT_4\war\WEB-INF\lib\hibernate-jpa-2.0-api-1.0.1.Final.jar
    C:\s-ear-1.0-SNAPSHOT_4\war\WEB-INF\lib\hibernate-validator-4.2.0.Final.jar
    C:\s-ear-1.0-SNAPSHOT_4\war\WEB-INF\lib\icefaces-3.2.0.jar
    C:\s-ear-1.0-SNAPSHOT_4\war\WEB-INF\lib\icefaces-ace-3.2.0.jar
    C:\s-ear-1.0-SNAPSHOT_4\war\WEB-INF\lib\icefaces-compat-3.2.0.jar
    C:\s-ear-1.0-SNAPSHOT_4\war\WEB-INF\lib\icepush-3.2.0.jar
    C:\s-ear-1.0-SNAPSHOT_4\war\WEB-INF\lib\itext-4.2.0.jar
    C:\s-ear-1.0-SNAPSHOT_4\war\WEB-INF\lib\itextpdf-5.0.6.jar
    C:\s-ear-1.0-SNAPSHOT_4\war\WEB-INF\lib\jackson-core-asl-1.9.9.jar
    C:\s-ear-1.0-SNAPSHOT_4\war\WEB-INF\lib\jackson-core-lgpl-1.9.9.jar
    C:\s-ear-1.0-SNAPSHOT_4\war\WEB-INF\lib\jackson-mapper-asl-1.9.9.jar
    C:\s-ear-1.0-SNAPSHOT_4\war\WEB-INF\lib\jasperreports-ca-4.8.0.jar
    C:\s-ear-1.0-SNAPSHOT_4\war\WEB-INF\lib\javassist-3.18.2-GA.jar
    C:\s-ear-1.0-SNAPSHOT_4\war\WEB-INF\lib\javax.el-api-2.2.1.jar
    C:\s-ear-1.0-SNAPSHOT_4\war\WEB-INF\lib\javax.faces-2.2.9.jar
    C:\s-ear-1.0-SNAPSHOT_4\war\WEB-INF\lib\javax.inject-1.jar
    C:\s-ear-1.0-SNAPSHOT_4\war\WEB-INF\lib\jax-qname.jar
    C:\s-ear-1.0-SNAPSHOT_4\war\WEB-INF\lib\jaxb-api-2.1.jar
    C:\s-ear-1.0-SNAPSHOT_4\war\WEB-INF\lib\jaxb-api.jar
    C:\s-ear-1.0-SNAPSHOT_4\war\WEB-INF\lib\jaxb-impl-2.1.jar
    C:\s-ear-1.0-SNAPSHOT_4\war\WEB-INF\lib\jaxb1-impl.jar
    C:\s-ear-1.0-SNAPSHOT_4\war\WEB-INF\lib\jaxp-api.jar
    C:\s-ear-1.0-SNAPSHOT_4\war\WEB-INF\lib\jaxws-api-2.1.jar
    C:\s-ear-1.0-SNAPSHOT_4\war\WEB-INF\lib\jboss-archive-browsing-5.0.0alpha-200607201-119.jar
    C:\s-ear-1.0-SNAPSHOT_4\war\WEB-INF\lib\jboss-logging-3.1.3.GA.jar
    C:\s-ear-1.0-SNAPSHOT_4\war\WEB-INF\lib\jboss-logging-annotations-1.2.0.Beta1.jar
    C:\s-ear-1.0-SNAPSHOT_4\war\WEB-INF\lib\jboss-transaction-api_1.1_spec-1.0.1.Final.jar
    C:\s-ear-1.0-SNAPSHOT_4\war\WEB-INF\lib\jcl-over-slf4j-1.5.2.jar
    C:\s-ear-1.0-SNAPSHOT_4\war\WEB-INF\lib\jersey-bundle-1.18.jar
    C:\s-ear-1.0-SNAPSHOT_4\war\WEB-INF\lib\joda-time-2.0.jar
    C:\s-ear-1.0-SNAPSHOT_4\war\WEB-INF\lib\joda-time-hibernate-1.3.jar
    C:\s-ear-1.0-SNAPSHOT_4\war\WEB-INF\lib\josql-1.5.jar
    C:\s-ear-1.0-SNAPSHOT_4\war\WEB-INF\lib\josql-2.0.jar
    C:\s-ear-1.0-SNAPSHOT_4\war\WEB-INF\lib\json-20140107.jar
    C:\s-ear-1.0-SNAPSHOT_4\war\WEB-INF\lib\jsr173_1.0_api.jar
    C:\s-ear-1.0-SNAPSHOT_4\war\WEB-INF\lib\jsr250-api-1.0.jar
    C:\s-ear-1.0-SNAPSHOT_4\war\WEB-INF\lib\jsr311-api-1.1.1.jar
    C:\s-ear-1.0-SNAPSHOT_4\war\WEB-INF\lib\jstl-1.2.jar
    C:\s-ear-1.0-SNAPSHOT_4\war\WEB-INF\lib\jta-1.1.jar
    C:\s-ear-1.0-SNAPSHOT_4\war\WEB-INF\lib\log4j-1.2.14.jar
    C:\s-ear-1.0-SNAPSHOT_4\war\WEB-INF\lib\mail-1.4.jar
    C:\s-ear-1.0-SNAPSHOT_4\war\WEB-INF\lib\mail.jar
    C:\s-ear-1.0-SNAPSHOT_4\war\WEB-INF\lib\objenesis-1.2.jar
    C:\s-ear-1.0-SNAPSHOT_4\war\WEB-INF\lib\opencsv-1.7.jar
    C:\s-ear-1.0-SNAPSHOT_4\war\WEB-INF\lib\oro-2.0.8.jar
    C:\s-ear-1.0-SNAPSHOT_4\war\WEB-INF\lib\portlet-api-2.0.jar
    C:\s-ear-1.0-SNAPSHOT_4\war\WEB-INF\lib\primefaces-3.4.1.jar
    C:\s-ear-1.0-SNAPSHOT_4\war\WEB-INF\lib\quartz-1.8.4.jar
    C:\s-ear-1.0-SNAPSHOT_4\war\WEB-INF\lib\saaj-api-1.3.jar
    C:\s-ear-1.0-SNAPSHOT_4\war\WEB-INF\lib\saaj-api.jar
    C:\s-ear-1.0-SNAPSHOT_4\war\WEB-INF\lib\saaj-impl.jar
    C:\s-ear-1.0-SNAPSHOT_4\war\WEB-INF\lib\serializer-2.7.1.jar
    C:\s-ear-1.0-SNAPSHOT_4\war\WEB-INF\lib\serializer.jar
    C:\s-ear-1.0-SNAPSHOT_4\war\WEB-INF\lib\service-1.0-SNAPSHOT.jar
    C:\s-ear-1.0-SNAPSHOT_4\war\WEB-INF\lib\servlet.jar
    C:\s-ear-1.0-SNAPSHOT_4\war\WEB-INF\lib\slf4j-api-1.5.2.jar
    C:\s-ear-1.0-SNAPSHOT_4\war\WEB-INF\lib\slf4j-log4j12-1.5.2.jar
    C:\s-ear-1.0-SNAPSHOT_4\war\WEB-INF\lib\spring-aop-4.0.9.RELEASE.jar
    C:\s-ear-1.0-SNAPSHOT_4\war\WEB-INF\lib\spring-aspects-4.0.9.RELEASE.jar
    C:\s-ear-1.0-SNAPSHOT_4\war\WEB-INF\lib\spring-beans-4.0.9.RELEASE.jar
    C:\s-ear-1.0-SNAPSHOT_4\war\WEB-INF\lib\spring-context-4.0.9.RELEASE.jar
    C:\s-ear-1.0-SNAPSHOT_4\war\WEB-INF\lib\spring-context-support-4.0.9.RELEASE.jar
    C:\s-ear-1.0-SNAPSHOT_4\war\WEB-INF\lib\spring-core-4.0.9.RELEASE.jar
    C:\s-ear-1.0-SNAPSHOT_4\war\WEB-INF\lib\spring-expression-4.0.9.RELEASE.jar
    C:\s-ear-1.0-SNAPSHOT_4\war\WEB-INF\lib\spring-jdbc-4.0.9.RELEASE.jar
    C:\s-ear-1.0-SNAPSHOT_4\war\WEB-INF\lib\spring-jms-4.0.9.RELEASE.jar
    C:\s-ear-1.0-SNAPSHOT_4\war\WEB-INF\lib\spring-orm-4.0.9.RELEASE.jar
    C:\s-ear-1.0-SNAPSHOT_4\war\WEB-INF\lib\spring-oxm-3.0.5.RELEASE.jar
    C:\s-ear-1.0-SNAPSHOT_4\war\WEB-INF\lib\spring-security-core-4.0.0.RELEASE.jar
    C:\s-ear-1.0-SNAPSHOT_4\war\WEB-INF\lib\spring-tx-4.0.9.RELEASE.jar
    C:\s-ear-1.0-SNAPSHOT_4\war\WEB-INF\lib\spring-web-4.0.9.RELEASE.jar
    C:\s-ear-1.0-SNAPSHOT_4\war\WEB-INF\lib\spring-webmvc-4.0.9.RELEASE.jar
    C:\s-ear-1.0-SNAPSHOT_4\war\WEB-INF\lib\spring-ws-core-2.0.0.RELEASE.jar
    C:\s-ear-1.0-SNAPSHOT_4\war\WEB-INF\lib\spring-ws-security-2.0.0.RELEASE.jar
    C:\s-ear-1.0-SNAPSHOT_4\war\WEB-INF\lib\spring-xml-2.0.0.RELEASE.jar
    C:\s-ear-1.0-SNAPSHOT_4\war\WEB-INF\lib\stax-api-1.0-2.jar
    C:\s-ear-1.0-SNAPSHOT_4\war\WEB-INF\lib\3capture-1.0.jar
    C:\s-ear-1.0-SNAPSHOT_4\war\WEB-INF\lib\s-beans-1.0-SNAPSHOT.jar
    C:\s-ear-1.0-SNAPSHOT_4\war\WEB-INF\lib\usertype.core-3.1.0.CR10.jar
    C:\s-ear-1.0-SNAPSHOT_4\war\WEB-INF\lib\usertype.jodatime-1.9.1.jar
    C:\s-ear-1.0-SNAPSHOT_4\war\WEB-INF\lib\usertype.spi-3.1.0.CR10.jar
    C:\s-ear-1.0-SNAPSHOT_4\war\WEB-INF\lib\validation-api-1.0.0.GA.jar
    C:\s-ear-1.0-SNAPSHOT_4\war\WEB-INF\lib\wss4j-1.5.8.jar
    C:\s-ear-1.0-SNAPSHOT_4\war\WEB-INF\lib\xalan-2.7.1.jar
    C:\s-ear-1.0-SNAPSHOT_4\war\WEB-INF\lib\xercesImpl-2.8.1.jar
    C:\s-ear-1.0-SNAPSHOT_4\war\WEB-INF\lib\xercesImpl.jar
    C:\s-ear-1.0-SNAPSHOT_4\war\WEB-INF\lib\xml-apis.jar
    C:\s-ear-1.0-SNAPSHOT_4\war\WEB-INF\lib\xmldsig.jar
    C:\s-ear-1.0-SNAPSHOT_4\war\WEB-INF\lib\xmlsec-1.4.3.jar
    C:\s-ear-1.0-SNAPSHOT_4\war\WEB-INF\lib\xmlsec.jar
    C:\s-ear-1.0-SNAPSHOT_4\war\WEB-INF\lib\xws-security-3.0.jar
    jsf myfaces weblogic1
    Here are links for more details.
    http://stackoverflow.com/questions/29857571/weblogic-12c-java-lang-illegalstateexception-could-not-find-backup-for-factory
    http://www.coderanch.com/t/649308/JSF/java/Faces-Servlet-failed-preload-startup
    Sorry incase question not formatted. Any suggestions appreciated.

    hi.
    I had faced this behavior on weblogic 12c(12.1.1).
    Maybe This problem was solved by 12.1.2.
    But, when text item submitted together with a upload file, multibyte characters was garbage characters.
    See Multibyte character was garbage characters, when multipart requested (Multipartリクエストで文字化けが発生する) on WebLogic12(12.1.2.0)

  • Oracle Identity Manager 9.1.0.2 & WebLogic Strange Issue

    Hello,
    I am running OIM 9.1.0.2 (new installation) and WebLogic 10.3.3 in a clustered environment. I am having a strange issue where the resolution is eluding me.
    This install is running on Windows 2008 x64 Standard and using the x64 JRockit Java.
    What's happening is when I configure the managed server to run as a windows service, OIM isn't detected on the server. I can bring up xlWebApp but an unable to log into that or the Design Console. When launching the Diagnostic Dashboard it statest that OIM isn't installed.
    If I stop the service and log into WebLogic and start the managed server from within the Admin Console in WebLogic, everything works just fine.
    Any thoughts on how to troubleshoot this and ultimately resolve this? The service correct startes the managed server as I can watch it start up in the admin console but when it starts that way, OIM isn't detected. Very odd.
    Thanks,
    Andrew

    Oracle confirmed with us that it is certified for 10.3.3 though it may not be published yet.
    At any rate I figured out the problem today. The script I used to create the service was missing the JAVA_OPTIONS section from the xlStartManagedServer.cmd file. Once I added that and re-created the service, all is well.
    Thanks

  • ClassNotFoundException in EJB's and Threads (Classloader issue)

    A very interesting bug has cropped up in WebLogic 6.1. When a J2EE
    application packaged appropriately, a client application running in a
    user-created Thread will always throw a ClassNotFoundException when
    attempting to get back a user-created object from an EJB living on
    another cluster. This error does not happen when the call is being made
    from outside a Thread.
    Sounds strange, I know, so I'll try to give everyone as much detail as
    possible so they can avoid this bug, and so that the folks at BEA can
    fix it.
    * A java class running inside a clustered WL6.1 server is attempting to
    reference an EJB on another clustered WL 6.1 server. Accessing the bean
    is not a problem, the client class is able to obtain a remote reference
    to the bean and make method calls on it. Calling a method causes the
    following stack trace:
    2002-01-11 10:36:57,331 [Thread-4] ERROR
    wpni.app.mywp.display.DisplayJobs$JobsMonitor -
    wpni.app.mywp.display.DisplayJobs$JobsMonitor.run: Error checking Jobs
    status.
    java.rmi.UnmarshalException: failed to unmarshal class
    wpni.app.jobs.JobsData; nested exception is:
    java.lang.ClassNotFoundException: wpni.app.jobs.JobsData: This
    error could indicate that a component was deployed on a cluster member
    but not other members of that cluster. Make sure that any component
    deployed on a server that is part of a cluster is also deployed on all
    other members of that cluster
    java.lang.ClassNotFoundException: wpni.app.jobs.JobsData: This error
    could indicate that a component was deployed on a cluster member but
    not other members of that cluster. Make sure that any component deployed
    on a server that is part of a cluster is also deployed on all other
    members of that cluster
    at
    weblogic.j2ee.ApplicationManager.loadClass(ApplicationManager.java:146)
    at
    weblogic.rjvm.MsgAbbrevInputStream.readClassDescriptor(MsgAbbrevInputStream.java:211)
    at
    weblogic.common.internal.ChunkedObjectInputStream$NestedObjectInputStream.readClassDescriptor(ChunkedObjectInputStream.java:290)
    at
    java.io.ObjectInputStream.inputClassDescriptor(ObjectInputStream.java:906)
    at
    java.io.ObjectInputStream.readObject(ObjectInputStream.java:366)
    at
    java.io.ObjectInputStream.readObject(ObjectInputStream.java:236)
    at
    java.io.ObjectInputStream.inputObject(ObjectInputStream.java:1186)
    at
    java.io.ObjectInputStream.readObject(ObjectInputStream.java:386)
    at
    java.io.ObjectInputStream.readObject(ObjectInputStream.java:236)
    at
    weblogic.common.internal.ChunkedObjectInputStream.readObject(ChunkedObjectInputStream.java:107)
    at
    weblogic.common.internal.ChunkedObjectInputStream.readObject(ChunkedObjectInputStream.java:115)
    at weblogic.rmi.internal.ObjectIO.readObject(ObjectIO.java:56)
    at
    weblogic.rmi.internal.BasicRemoteRef.unmarshalReturn(BasicRemoteRef.java:230)
    at
    weblogic.rmi.cluster.ReplicaAwareRemoteRef.invoke(ReplicaAwareRemoteRef.java:254)
    at
    weblogic.rmi.cluster.ReplicaAwareRemoteRef.invoke(ReplicaAwareRemoteRef.java:220)
    at weblogic.rmi.internal.ProxyStub.invoke(ProxyStub.java:35)
    at $Proxy140.getJobsData(Unknown Source)
    at
    wpni.app.mywp.display.DisplayJobs$JobsMonitor.run(DisplayJobs.java:48)
    at java.lang.Thread.run(Thread.java:484)
    * The class that is not found (JobsData) is definitely in the EAR file
    on both the client cluster and the server cluster, and in the
    appropriate location.
    * When we attempted to run the code outside of a Thread, everything
    worked perfectly, so it was definitely the Thread that was causing the
    problem.
    * Deploying the EJB on the client cluster did not do anything to solve
    the problem.
    * Adding the JobsData to the System CLASSPATH at the startup of the
    WebLogic server DID solve the problem. But of course that defeats the
    purpose of packaging everything in the EAR file.
    So, the conclusion seems to be that when DisplayJobs$JobsMonitor kicked
    off the Thread, the Thread should have been created in either the WAR's
    classloader or the JAR's classloader (wouldn't matter, since the
    JobsData class is in the JAR's classloader, which is a parent of the
    WAR's classloader). But instead, the Thread is being created in the
    System classloader, which can't find the JobsData class!
    We believe that any Thread created by a class living within an EAR's
    classloader should remain within that same classloader, and not migrate
    to any other classloader, in order to avoid situations like this. We're
    opening a case with BEA to attempt to get this resolved. In the
    meantime, we recommend to developers that if they have to make
    cross-cluster RMI calls from inside user-created Threads, that they only
    attempt to receive primitive types or standard JDK objects. Otherwise,
    you'll have to add the classes to the System CLASSPATH at startup of the
    WebLogic instance.
    Thanks,
    Erin
    * "[White House spokeperson Ari] Fleischer
    * warned Democrats this morning against
    * investigations into the Bush administration's
    * dealings with Enron. 'The American people
    * are tired of partisan witch hunts and endless
    * investigations,' he said." [Ed.: Uh... ]
    * www.washingtonpost.com/wp-dyn/articles/A25159-2002Jan10.html
    * Erin Reid Myers, Chief Architect
    * WashingtonPost.Newsweek Interactive
    * [email protected]
    * Work: (703) 469-3154
    * Cell: (703) 725-3050
    [att1.html]

    Things can go seriously wrong if your application uses user threads (violating
    EJB spec programming restrictions and BEA recommendations).
    I'm curious, does it work if you enable network classloading on the server
    which invokes remote EJB (in config.xml -
    <Server NetworkClassLoadingEnabled="true" ...
    </Server>
    Erin Reid Myers <[email protected]> wrote:
    A very interesting bug has cropped up in WebLogic 6.1. When a J2EE
    application packaged appropriately, a client application running in a
    user-created Thread will always throw a ClassNotFoundException when
    attempting to get back a user-created object from an EJB living on
    another cluster. This error does not happen when the call is being made
    from outside a Thread.
    Sounds strange, I know, so I'll try to give everyone as much detail as
    possible so they can avoid this bug, and so that the folks at BEA can
    fix it.
    * A java class running inside a clustered WL6.1 server is attempting to
    reference an EJB on another clustered WL 6.1 server. Accessing the bean
    is not a problem, the client class is able to obtain a remote reference
    to the bean and make method calls on it. Calling a method causes the
    following stack trace:
    2002-01-11 10:36:57,331 [Thread-4] ERROR
    wpni.app.mywp.display.DisplayJobs$JobsMonitor -
    wpni.app.mywp.display.DisplayJobs$JobsMonitor.run: Error checking Jobs
    status.
    java.rmi.UnmarshalException: failed to unmarshal class
    wpni.app.jobs.JobsData; nested exception is:
    java.lang.ClassNotFoundException: wpni.app.jobs.JobsData: This
    error could indicate that a component was deployed on a cluster member
    but not other members of that cluster. Make sure that any component
    deployed on a server that is part of a cluster is also deployed on all
    other members of that cluster
    java.lang.ClassNotFoundException: wpni.app.jobs.JobsData: This error
    could indicate that a component was deployed on a cluster member but
    not other members of that cluster. Make sure that any component deployed
    on a server that is part of a cluster is also deployed on all other
    members of that cluster
    at
    weblogic.j2ee.ApplicationManager.loadClass(ApplicationManager.java:146)
    at
    weblogic.rjvm.MsgAbbrevInputStream.readClassDescriptor(MsgAbbrevInputStream.java:211)
    at
    weblogic.common.internal.ChunkedObjectInputStream$NestedObjectInputStream.readClassDescriptor(ChunkedObjectInputStream.java:290)
    at
    java.io.ObjectInputStream.inputClassDescriptor(ObjectInputStream.java:906)
    at
    java.io.ObjectInputStream.readObject(ObjectInputStream.java:366)
    at
    java.io.ObjectInputStream.readObject(ObjectInputStream.java:236)
    at
    java.io.ObjectInputStream.inputObject(ObjectInputStream.java:1186)
    at
    java.io.ObjectInputStream.readObject(ObjectInputStream.java:386)
    at
    java.io.ObjectInputStream.readObject(ObjectInputStream.java:236)
    at
    weblogic.common.internal.ChunkedObjectInputStream.readObject(ChunkedObjectInputStream.java:107)
    at
    weblogic.common.internal.ChunkedObjectInputStream.readObject(ChunkedObjectInputStream.java:115)
    at weblogic.rmi.internal.ObjectIO.readObject(ObjectIO.java:56)
    at
    weblogic.rmi.internal.BasicRemoteRef.unmarshalReturn(BasicRemoteRef.java:230)
    at
    weblogic.rmi.cluster.ReplicaAwareRemoteRef.invoke(ReplicaAwareRemoteRef.java:254)
    at
    weblogic.rmi.cluster.ReplicaAwareRemoteRef.invoke(ReplicaAwareRemoteRef.java:220)
    at weblogic.rmi.internal.ProxyStub.invoke(ProxyStub.java:35)
    at $Proxy140.getJobsData(Unknown Source)
    at
    wpni.app.mywp.display.DisplayJobs$JobsMonitor.run(DisplayJobs.java:48)
    at java.lang.Thread.run(Thread.java:484)
    * The class that is not found (JobsData) is definitely in the EAR file
    on both the client cluster and the server cluster, and in the
    appropriate location.
    * When we attempted to run the code outside of a Thread, everything
    worked perfectly, so it was definitely the Thread that was causing the
    problem.
    * Deploying the EJB on the client cluster did not do anything to solve
    the problem.
    * Adding the JobsData to the System CLASSPATH at the startup of the
    WebLogic server DID solve the problem. But of course that defeats the
    purpose of packaging everything in the EAR file.
    So, the conclusion seems to be that when DisplayJobs$JobsMonitor kicked
    off the Thread, the Thread should have been created in either the WAR's
    classloader or the JAR's classloader (wouldn't matter, since the
    JobsData class is in the JAR's classloader, which is a parent of the
    WAR's classloader). But instead, the Thread is being created in the
    System classloader, which can't find the JobsData class!
    We believe that any Thread created by a class living within an EAR's
    classloader should remain within that same classloader, and not migrate
    to any other classloader, in order to avoid situations like this. We're
    opening a case with BEA to attempt to get this resolved. In the
    meantime, we recommend to developers that if they have to make
    cross-cluster RMI calls from inside user-created Threads, that they only
    attempt to receive primitive types or standard JDK objects. Otherwise,
    you'll have to add the classes to the System CLASSPATH at startup of the
    WebLogic instance.
    Thanks,
    Erin
    * "[White House spokeperson Ari] Fleischer
    * warned Democrats this morning against
    * investigations into the Bush administration's
    * dealings with Enron. 'The American people
    * are tired of partisan witch hunts and endless
    * investigations,' he said." [Ed.: Uh... ]
    * www.washingtonpost.com/wp-dyn/articles/A25159-2002Jan10.html
    * Erin Reid Myers, Chief Architect
    * WashingtonPost.Newsweek Interactive
    * [email protected]
    * Work: (703) 469-3154
    * Cell: (703) 725-3050
    Dimitri

  • PI 7.11 JMS adapter using JNDI weblogic server issue

    Hi SAP experts,
    I have a scenario to integrate to a application using JMS adapters. we use SAP PI 7.11 version.
    We have deployed JMS drivers successfully and We face issue here to connect to weblogic server
    We are using JMS adapter using JNDI to connect to weblogic server version 10.3.
    Can anyone help with the exact format to be used in JMS properties table and additional parameters table in JMS communication channel. Your quick help will be appreciated.
    A channel error occurred. The detailed error (if any) : com.sap.aii.adapter.jms.api.connector.ConnectorException: Error looking up destination: AccrualDetailsQueue for profile:  ConnectionProfile of channel: CC_SND_JMS on node: 3010950 having object id: 673696a9fe8c39fdab32213f0930afb3: javax.naming.NameNotFoundException: Unable to resolve 'AccrualDetailsQueue'. Resolved ''<br> at com.sap.aii.adapter.jms.core.connector.JndiConnectorImpl.createDestination(JndiConnectorImpl.java:168)<br

    Hi Padmini,
    Refer to the following link:
    http://help.sap.com/saphelp_nw04/helpdata/en/24/4cad3baabd4737bab64d0201bc0c6c/content.htm
    It was very helpful to me, for configuring the additional parameters in the communication Channel JMS.
    I leave you some screenshots of the settings that I did.
    I seize the opportunity to ask you, where do I can get the drivers (.Jar) for Weblogic?
    Regards.
    Rodrigo.

  • Integrated weblogic server Issue with Host name mapped to multiple IPs

    I am running very simple ADF application from Jdev 11g (11.1.1.3.0).
    Compilation was successful but weblogic server facing problem while starting.
    It is showing HostAName is mapped with Multiple IP Addresses.
    Please provide solution to fix the issue....
    log is,
    * To start WebLogic Server, use a username and *
    * password assigned to an admin-level user. For *
    * server administration, use the WebLogic Server *
    * console at http:\\hostname:port\console *
    starting weblogic with Java version:
    java version "1.6.0_18"
    Java(TM) SE Runtime Environment (build 1.6.0_18-b07)
    Java HotSpot(TM) Client VM (build 16.0-b13, mixed mode)
    Starting WLS with line:
    C:\Oracle\MIDDLE~1\JDK160~1\bin\java -client -Xms256m -Xmx512m -XX:CompileThreshold=8000 -XX:PermSize=128m -XX:MaxPermSize=512m -Dweblogic.Name=DefaultServer -Djava.security.policy=C:\Oracle\MIDDLE~1\WLSERV~1.3\server\lib\weblogic.policy -Djavax.net.ssl.trustStore=C:\Oracle\Middleware\wlserver_10.3\server\lib\DemoTrust.jks -Dweblogic.nodemanager.ServiceEnabled=true -Xverify:none -da -Dplatform.home=C:\Oracle\MIDDLE~1\WLSERV~1.3 -Dwls.home=C:\Oracle\MIDDLE~1\WLSERV~1.3\server -Dweblogic.home=C:\Oracle\MIDDLE~1\WLSERV~1.3\server -Djps.app.credential.overwrite.allowed=true -Ddomain.home=C:\Users\Raja\AppData\Roaming\JDEVEL~1\SYSTEM~1.60\DEFAUL~1 -Dcommon.components.home=C:\Oracle\MIDDLE~1\ORACLE~1 -Djrf.version=11.1.1 -Dorg.apache.commons.logging.Log=org.apache.commons.logging.impl.Jdk14Logger -Djrockit.optfile=C:\Oracle\MIDDLE~1\ORACLE~1\modules\oracle.jrf_11.1.1\jrocket_optfile.txt -Doracle.domain.config.dir=C:\Users\Raja\AppData\Roaming\JDEVEL~1\SYSTEM~1.60\DEFAUL~1\config\FMWCON~1 -Doracle.server.config.dir=C:\Users\Raja\AppData\Roaming\JDEVEL~1\SYSTEM~1.60\DEFAUL~1\config\FMWCON~1\servers\DefaultServer -Doracle.security.jps.config=C:\Users\Raja\AppData\Roaming\JDEVEL~1\SYSTEM~1.60\DEFAUL~1\config\fmwconfig\jps-config.xml -Djava.protocol.handler.pkgs=oracle.mds.net.protocol -Digf.arisidbeans.carmlloc=C:\Users\Raja\AppData\Roaming\JDEVEL~1\SYSTEM~1.60\DEFAUL~1\config\FMWCON~1\carml -Digf.arisidstack.home=C:\Users\Raja\AppData\Roaming\JDEVEL~1\SYSTEM~1.60\DEFAUL~1\config\FMWCON~1\arisidprovider -Dweblogic.alternateTypesDirectory=C:\Oracle\MIDDLE~1\ORACLE~1\modules\oracle.ossoiap_11.1.1,C:\Oracle\MIDDLE~1\ORACLE~1\modules\oracle.oamprovider_11.1.1 -Dweblogic.jdbc.remoteEnabled=false -Dwsm.repository.path=C:\Users\Raja\AppData\Roaming\JDEVEL~1\SYSTEM~1.60\DEFAUL~1\oracle\store\gmds -Dweblogic.management.discover=true -Dwlw.iterativeDev= -Dwlw.testConsole= -Dwlw.logErrorsToConsole= -Dweblogic.ext.dirs=C:\Oracle\MIDDLE~1\patch_wls1033\profiles\default\sysext_manifest_classpath;C:\Oracle\MIDDLE~1\patch_jdev1111\profiles\default\sysext_manifest_classpath weblogic.Server
    <Dec 23, 2010 11:49:42 AM EST> <Info> <WebLogicServer> <BEA-000377> <Starting WebLogic Server with Java HotSpot(TM) Client VM Version 16.0-b13 from Sun Microsystems Inc.>
    <Dec 23, 2010 11:49:44 AM EST> <Info> <Management> <BEA-141107> <Version: WebLogic Server 10.3.3.0 Fri Apr 9 00:05:28 PDT 2010 1321401 >
    <Dec 23, 2010 11:49:46 AM EST> <Notice> <WebLogicServer> <BEA-000365> <Server state changed to STARTING>
    <Dec 23, 2010 11:49:46 AM EST> <Info> <WorkManager> <BEA-002900> <Initializing self-tuning thread pool>
    <Dec 23, 2010 11:49:46 AM EST> <Notice> <LoggingService> <BEA-320400> <The log file C:\Users\Raja\AppData\Roaming\JDeveloper\system11.1.1.3.37.56.60\DefaultDomain\servers\DefaultServer\logs\DefaultServer.log will be rotated. Reopen the log file if tailing has stopped. This can happen on some platforms like Windows.>
    <Dec 23, 2010 11:49:46 AM EST> <Notice> <LoggingService> <BEA-320401> <The log file has been rotated to C:\Users\Raja\AppData\Roaming\JDeveloper\system11.1.1.3.37.56.60\DefaultDomain\servers\DefaultServer\logs\DefaultServer.log00001. Log messages will continue to be logged in C:\Users\Raja\AppData\Roaming\JDeveloper\system11.1.1.3.37.56.60\DefaultDomain\servers\DefaultServer\logs\DefaultServer.log.>
    <Dec 23, 2010 11:49:46 AM EST> <Notice> <Log Management> <BEA-170019> <The server log file C:\Users\Raja\AppData\Roaming\JDeveloper\system11.1.1.3.37.56.60\DefaultDomain\servers\DefaultServer\logs\DefaultServer.log is opened. All server side log events will be written to this file.>
    <Dec 23, 2010 11:49:57 AM EST> <Notice> <Security> <BEA-090082> <Security initializing using security realm myrealm.>
    <Dec 23, 2010 11:50:14 AM EST> <Notice> <WebLogicServer> <BEA-000365> <Server state changed to STANDBY>
    <Dec 23, 2010 11:50:14 AM EST> <Notice> <WebLogicServer> <BEA-000365> <Server state changed to STARTING>
    <Dec 23, 2010 11:50:28 AM EST> <Notice> <LoggingService> <BEA-320400> <The log file C:\Users\Raja\AppData\Roaming\JDeveloper\system11.1.1.3.37.56.60\DefaultDomain\servers\DefaultServer\logs\DefaultDomain.log will be rotated. Reopen the log file if tailing has stopped. This can happen on some platforms like Windows.>
    <Dec 23, 2010 11:50:28 AM EST> <Notice> <LoggingService> <BEA-320401> <The log file has been rotated to C:\Users\Raja\AppData\Roaming\JDeveloper\system11.1.1.3.37.56.60\DefaultDomain\servers\DefaultServer\logs\DefaultDomain.log00001. Log messages will continue to be logged in C:\Users\Raja\AppData\Roaming\JDeveloper\system11.1.1.3.37.56.60\DefaultDomain\servers\DefaultServer\logs\DefaultDomain.log.>
    <Dec 23, 2010 11:50:28 AM EST> <Notice> <Log Management> <BEA-170027> <The Server has established connection with the Domain level Diagnostic Service successfully.>
    <Dec 23, 2010 11:50:31 AM EST> <Notice> <WebLogicServer> <BEA-000365> <Server state changed to ADMIN>
    <Dec 23, 2010 11:50:32 AM EST> <Notice> <WebLogicServer> <BEA-000365> <Server state changed to RESUMING>
    <Dec 23, 2010 11:50:32 AM EST> <Notice> <Server> <BEA-002613> <Channel "Default[7]" is now listening on 0:0:0:0:0:0:0:1:7101 for protocols iiop, t3, ldap, snmp, http.>
    <Dec 23, 2010 11:50:32 AM EST> <Notice> <Server> <BEA-002613> <Channel "Default[4]" is now listening on fe80:0:0:0:114b:ab6a:23b1:b44c:7101 for protocols iiop, t3, ldap, snmp, http.>
    <Dec 23, 2010 11:50:32 AM EST> <Notice> <Server> <BEA-002613> <Channel "Default[6]" is now listening on 127.0.0.1:7101 for protocols iiop, t3, ldap, snmp, http.>
    <Dec 23, 2010 11:50:32 AM EST> <Notice> <Server> <BEA-002613> <Channel "Default[1]" is now listening on 192.168.10.103:7101 for protocols iiop, t3, ldap, snmp, http.>
    <Dec 23, 2010 11:50:32 AM EST> <Notice> <Server> <BEA-002613> <Channel "Default[3]" is now listening on fe80:0:0:0:c48:60a:9d0d:7cda:7101 for protocols iiop, t3, ldap, snmp, http.>
    <Dec 23, 2010 11:50:32 AM EST> <Notice> <Server> <BEA-002613> <Channel "Default[2]" is now listening on fe80:0:0:0:0:5efe:c0a8:a67:7101 for protocols iiop, t3, ldap, snmp, http.>
    <Dec 23, 2010 11:50:32 AM EST> <Notice> <Server> <BEA-002613> <Channel "Default[5]" is now listening on fe80:0:0:0:95ca:d058:6a51:53e8:7101 for protocols iiop, t3, ldap, snmp, http.>
    <Dec 23, 2010 11:50:32 AM EST> <Warning> <Server> <BEA-002611> <Hostname "Raja-PC", maps to multiple IP addresses: 192.168.10.103, fe80:0:0:0:114b:ab6a:23b1:b44c%12, fe80:0:0:0:c48:60a:9d0d:7cda%13, 2001:0:4137:9e76:c48:60a:9d0d:7cda>
    <Dec 23, 2010 11:50:32 AM EST> <Notice> <Server> <BEA-002613> <Channel "Default" is now listening on 2001:0:4137:9e76:c48:60a:9d0d:7cda:7101 for protocols iiop, t3, ldap, snmp, http.>
    <Dec 23, 2010 11:50:32 AM EST> <Notice> <WebLogicServer> <BEA-000331> <Started WebLogic Admin Server "DefaultServer" for domain "DefaultDomain" running in Development Mode>
    <Dec 23, 2010 11:50:32 AM EST> <Notice> <WebLogicServer> <BEA-000365> <Server state changed to RUNNING>
    <Dec 23, 2010 11:50:32 AM EST> <Notice> <WebLogicServer> <BEA-000360> <Server started in RUNNING mode>
    <Logger><error> ServletContainerAdapter manager not initialized correctly.
    Edited by: user1158476 on Dec 23, 2010 3:05 PM

    Thanks for reply...
    If you look at the last line of log there is some error message:
    <Logger><error> ServletContainerAdapter manager not initialized correctly.
    after this no further logs and web page not open in Browser.

Maybe you are looking for