WEB-INF/lib WEB-INF/classes ClassLoader problem

I have observed that in WL 8.1, a class in a jar deployed in WEB-INF/lib does not have the ability to access a resource deployed in WEB-INF/classes. Is this the intended behavior to not have WEB-INF/lib and WEB-INF/classes in the same ClassLoader? If so, is there a way to configure this behavior to give permission to classes loaded in WEB-INF/lib to the ClassLoader that has WEB-INF/classes?
          thanks,
          Kenneth Shin

Are you really certain that's what's happening? Is it possible the jar file stored in WEB-INF/lib isn't found elsewhere in the CLASSPATH, perhaps by a higher-level classloader? You might consider setting "prefer-web-inf-classes" to true in your weblogic.xml file, to ensure that the jars in WEB-INF/lib are being used instead of from somewhere else.

Similar Messages

  • Please help.! Problem with locating classes within Jars under WEB-INF/lib.

    Hi All,
    I have a problem which you guys would have faced already...Here it goes..
    I'm using OC4J 10.1.3.0 and use ADF for my web page. I have a controller class which refers to JSF/ADF APIs and this class is archived as a jar file and put under WEB-INF/lib, Also, all the classes related to JSF/ADF are available under the same WEB-INF/lib folder.
    When I invoke my page, the controller class is getting called but it throws NoClassDefFound Error for the ADF based class. i mean, these ADF/JSF classes are not getting found when my jar class is placed within WEB-INF/lib. However, when i extract my jar into WEB-INF/classes, it works.
    I'm sure, i miss some entry for classpath somewhere. Can any one please point me to right direction...?
    Thanks
    Rajasekaran

    Hello,
    I do not have a direct answer to your question, but could you try the ClassLoader query tools to see if your classes/jar are loaded by the applications:
    - Using Queries to Troubleshoot Class Loading Issues
    Regards
    Tugdual Grall

  • Wl6.1sp2 can't find classes in WEB-INF/lib

              Hi,
              I meet a very strange problem.
              I use struts in my application.so I put struts.jar in web-inf/lib.
              In the .war file, the struts.jar can be found under web-inf/lib.
              my servlet configuration in web.xml is:
              <servlet>
              <servlet-name>action</servlet-name>
              <servlet-class>org.apache.struts.action.ActionServlet</servlet-class>
              <init-param>
              <param-name>application</param-name>
              <param-value>StrutsProperties</param-value>
              </init-param>
              <init-param>
              <param-name>config</param-name>
              <param-value>/WEB-INF/struts-config.xml</param-value>
              </init-param>
              <load-on-startup>1</load-on-startup>
              </servlet>
              when this .war file is deploy, the console not show any error message.
              then,when i visit a jsp page that has a <html:form> tag, the console will show
              the error below:
              <Error> <HTTP> <[WebAppServletContext(5418530,struts,/
              struts)] Servlet failed with Exception
              java.lang.NoClassDefFoundError: org/apache/struts/action/ActionForm
              at java.lang.ClassLoader.defineClass0(Native Method)
              at java.lang.ClassLoader.defineClass(ClassLoader.java:486)
              at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:11
              1)
              at java.net.URLClassLoader.defineClass(URLClassLoader.java:248)
              at java.net.URLClassLoader.access$100(URLClassLoader.java:56)
              at java.net.URLClassLoader$1.run(URLClassLoader.java:195)
              at java.security.AccessController.doPrivileged(Native Method)
              at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
              at java.lang.ClassLoader.loadClass(ClassLoader.java:297)
              at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:286)
              at java.lang.ClassLoader.loadClass(ClassLoader.java:290)
              at java.lang.ClassLoader.loadClass(ClassLoader.java:290)
              at java.lang.ClassLoader.loadClass(ClassLoader.java:253)
              at weblogic.utils.classloaders.ChangeAwareClassLoader.loadClass(ChangeAw
              areClassLoader.java:43)
              at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:313)
              at java.lang.Class.forName0(Native Method)
              at java.lang.Class.forName(Class.java:120)
              at org.apache.struts.taglib.html.FormTag.doStartTag(FormTag.java:563)
              at jsp_servlet.__logon._jspService(__logon.java:137)
              at weblogic.servlet.jsp.JspBase.service(JspBase.java:27)
              at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubIm
              pl.java:265)
              at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubIm
              pl.java:304)
              at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubIm
              pl.java:200)
              at weblogic.servlet.internal.WebAppServletContext.invokeServlet(WebAppSe
              rvletContext.java:2495)
              at weblogic.servlet.internal.ServletRequestImpl.execute(ServletRequestIm
              pl.java:2204)
              at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:139)
              at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:120)
              >
              note "org/apache/struts/action/ActionForm" can be found when i open struts.jar
              in web-inf/lib
              why weblogic can't find this class but can find the "org.apache.struts.action.ActionServlet",
              these 2 classes should all be located in struts.jar
              i used it in win2k,so i think it may not be connect with case sensitive.
              Any one can give me some help or a link I did not found in this group.
              Thanks
              

              1.the struts-html.tld is in web-inf directory
              2.this is part of the web.xml
              ===========
              <taglib>
              <taglib-uri>/WEB-INF/struts-html.tld</taglib-uri>
              <taglib-location>/WEB-INF/struts-html.tld</taglib-location>
              </taglib>
              <taglib>
              <taglib-uri>/WEB-INF/struts-bean.tld</taglib-uri>
              <taglib-location>/WEB-INF/struts-bean.tld</taglib-location>
              </taglib>
              <taglib>
              <taglib-uri>/WEB-INF/struts-logic.tld</taglib-uri>
              <taglib-location>/WEB-INF/struts-logic.tld</taglib-location>
              </taglib>
              <taglib>
              <taglib-uri>/WEB-INF/struts-template.tld</taglib-uri>
              <taglib-location>/WEB-INF/struts-template.tld</taglib-location>
              </taglib>
              ================
              "Deepak Vohra" <[email protected]> wrote:
              >
              >Are the tld files including the struts-html.tld in the web-inf directory
              >& specified in the web.xml deployment descriptor?
              >
              >thanks,
              >
              >Deepak
              >
              >
              >"erric_sarra" <[email protected]> wrote:
              >>
              >>Hi,
              >>I meet a very strange problem.
              >>
              >>I use struts in my application.so I put struts.jar in web-inf/lib.
              >>In the .war file, the struts.jar can be found under web-inf/lib.
              >>
              >>my servlet configuration in web.xml is:
              >> <servlet>
              >> <servlet-name>action</servlet-name>
              >> <servlet-class>org.apache.struts.action.ActionServlet</servlet-class>
              >> <init-param>
              >> <param-name>application</param-name>
              >> <param-value>StrutsProperties</param-value>
              >> </init-param>
              >> <init-param>
              >> <param-name>config</param-name>
              >> <param-value>/WEB-INF/struts-config.xml</param-value>
              >> </init-param>
              >> <load-on-startup>1</load-on-startup>
              >> </servlet>
              >>
              >>when this .war file is deploy, the console not show any error message.
              >>then,when i visit a jsp page that has a <html:form> tag, the console
              >>will show
              >>the error below:
              >><Error> <HTTP> <[WebAppServletContext(5418530,struts,/
              >>struts)] Servlet failed with Exception
              >>java.lang.NoClassDefFoundError: org/apache/struts/action/ActionForm
              >> at java.lang.ClassLoader.defineClass0(Native Method)
              >> at java.lang.ClassLoader.defineClass(ClassLoader.java:486)
              >> at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:11
              >>1)
              >> at java.net.URLClassLoader.defineClass(URLClassLoader.java:248)
              >> at java.net.URLClassLoader.access$100(URLClassLoader.java:56)
              >> at java.net.URLClassLoader$1.run(URLClassLoader.java:195)
              >> at java.security.AccessController.doPrivileged(Native Method)
              >> at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
              >> at java.lang.ClassLoader.loadClass(ClassLoader.java:297)
              >> at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:286)
              >> at java.lang.ClassLoader.loadClass(ClassLoader.java:290)
              >> at java.lang.ClassLoader.loadClass(ClassLoader.java:290)
              >> at java.lang.ClassLoader.loadClass(ClassLoader.java:253)
              >> at weblogic.utils.classloaders.ChangeAwareClassLoader.loadClass(ChangeAw
              >>areClassLoader.java:43)
              >> at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:313)
              >> at java.lang.Class.forName0(Native Method)
              >> at java.lang.Class.forName(Class.java:120)
              >> at org.apache.struts.taglib.html.FormTag.doStartTag(FormTag.java:563)
              >> at jsp_servlet.__logon._jspService(__logon.java:137)
              >> at weblogic.servlet.jsp.JspBase.service(JspBase.java:27)
              >> at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubIm
              >>pl.java:265)
              >> at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubIm
              >>pl.java:304)
              >> at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubIm
              >>pl.java:200)
              >> at weblogic.servlet.internal.WebAppServletContext.invokeServlet(WebAppSe
              >>rvletContext.java:2495)
              >> at weblogic.servlet.internal.ServletRequestImpl.execute(ServletRequestIm
              >>pl.java:2204)
              >> at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:139)
              >> at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:120)
              >>>
              >>
              >>note "org/apache/struts/action/ActionForm" can be found when i open
              >struts.jar
              >>in web-inf/lib
              >>why weblogic can't find this class but can find the "org.apache.struts.action.ActionServlet",
              >>these 2 classes should all be located in struts.jar
              >>
              >>i used it in win2k,so i think it may not be connect with case sensitive.
              >>
              >>Any one can give me some help or a link I did not found in this group.
              >>
              >>Thanks
              >>
              >>
              >
              

  • Is there a restriction on loading "javax" classes from WEB-INF/lib?

    I'm having trouble with a webapp in WL 10MP1 that is having trouble loading classes from the "jsr311-api-1.0.jar" in my WEB-INF/lib. Even though I have no trouble with it in Eclipse (no compile errors), classes from that jar fail with "NoClassDefFound" exceptions. I have a feeling it might be the fact that the packages in that jar start with "javax". Assuming that's the case, is there anything I can do to fix this?
    What's even stranger is that the errors I get are when I try to load them directly from the Spring context. However, if I remove the test references to those classes, there's other code that loads those classes later in the application startup (after the Spring context finishes loading), and they load perfectly fine (I turned on verbose class loading to verify this).

    Note that I've tried two other strategies that both result in the same failed state.
    I tried putting the "jsr311-api-1.0.jar" in $JDK_HOME/jre/lib/ext, but that causes a failure to find Spring classes. I then copied the "spring.jar" into $DOMAIN_HOME/lib, and then it fails to find CXF classes. After doing the same with "cxf-2.2.3.jar", it then fails to find "javax.servlet.ServletContextListener", which clearly tells me there's no benefit to this approach.
    Similarly, I tried copying the jars into $DOMAIN_HOME/lib, and that fails to find "org.apache.commons.logging.LogFactory". I could continue down this path, but it doesn't seem likely to succeed. Eventually, I'll get to a point where it just can't find the classes specific to my application, which I certainly can't copy into $DOMAIN_HOME/lib.
    The first basic problem is that I can't put anything into a higher-level classloader that will eventually reference classes in a lower-level classloader, because references can only go up the chain, and the second problem is that WebLogic appears to ignore classes in WEB-INF/lib in the "javax.*" packages. I think there might be an exception for "javax.xml.*", but not for other subpackages. I tried adding a "prefer-application-packages" clause to my weblogic-application.xml file, but that had no effect.

  • Web application in EAR not finding class in APP=INF/lib jar file

    Hi,
    I have read some posts regarding this but am still not able to figure out anything.
    I have a war file in my EAR along with some EJB jars. I have the common jars in the APP-INF/lib. The EJBs can find the classes in the common jars easily. But the Web app gives me a NoClassDefFoundError when trying to load a class from a common jar.
    Here is the structure:
    <pre>
    EAR
    |---WAR
    |---WEB-INF
    | |---lib
    | |---a.jar (A.class)
    |---APP-INF
    |---lib
    |---b.jar (B.class)
    </pre>
    Class A is trying to load class B and I get the NoClassDefFoundError for class B
    Thanks for any help,
    Sameet

    I found the problem. The web-app was finding the class in the APP-INf/lib. But the problem was being caused due to a reference to another class that was being loaded by the webapp classloader which was not visible to the class inside the common jar. The solution was to make sure both classes were being loaded by one class loader.
    Thanks anyway
    Sameet

  • Classloading Order in /WEB-INF/lib

    hi all,
    we are using wl 8.1sp2 and we have a problem with the classloading in a webapp. The requested class is loaded on startup.
    My question is: In which ordering are the classes - or better jar-files - loaded, which are located in the /WEB-INF/lib directory... is it alpha-numerical? random?
    Is there a way to control the ordering?
    I browsed the tutorials but could not find an answer to that question.
    - odilo

    I am running into exactly the same issue. I haven't found any solution yet.
    Our primary reason for having the same classes in multiple jars is for patch release purposes. We would like to drop a patch jar into a directory (ideally somewhere other than WEB-INF/lib) and prepend it to the classpath via some mechanism... for example the Class-Path attr of MANIFEST.MF
    One alternative is to replace the entire existing core jar file with a patched version. This is quite inconvenient with our current QA process, since the complete functionality would have to be re-tested rather than just a point test of the patched area.
    I could also envision a need for this in a situation where you have third-party libraries. It's not always easy to control their packaging. Sometimes they come bundled with old utility classes which you would like to shadow with newer versions.

  • Jar files not in WEB-INF/lib (custom ClassLoader?)

    I need to use classes in my JSP that do not come from a JAR file in the standard location. Sounds like I "simply" need to extend the ClassLoader used by the app server for loading the JSP. Is there any way of doing that?
    Example: my.jsp
    <h1>Hi</h1>
    <%
    FOO x = new FOO(); // code from a non-standard place
    ClassLoader cl = getClass().getClassLoader();
    %>
    I cannot put FOO.class into WEB-INF/lib or any of the standard places. Ideally I'd like to give the ClassLoader (cl above) a different (custom) parent ClassLoader which would know how to resolve FOO.class.
    I've poured over docs and Google and WebSphere and the Tomcat source code. Is this request of mine really so outrageous? I'm about the give up. What good are custom classloaders if one can't use them?

    You are essentially making the argument "All that Java
    needs is a URLClassLoader, and no one has any need for
    any custom ClassLoaders". (After all, that's all that
    I seem to have in a JSP context, with a list of
    hard-coded URLs into that URLClassLoader ...)
    Do a Google search on "custom ClassLoader" and you
    will find lots of reasons why people want to have
    custom ClassLoaders, such as ones that don't use any
    JAR or .class files ... which would qualify as why I
    can't put them into a certain place ...To be fair to duffymo, that is not how I read his argument. I read it as:
    "Sometimes we try to do things the hard way. If we sit back and rethink the problem, an easier solution might come about."
    I think this is a good opportunity to explain why you can not use the normal class loader heirarchy. You have no JARs and no .class files? Then where are you getting the class definitions? If you explain enough so that we might understand the problem:
    1) we might be able to come up with a solution or
    2) you might see a different approach before you are even done explaining
    #2 has happened to me more times then I can count. I sit down formulating a question for the forums, make sure I include enough detail to explain my problem. And by the time I am done I have a new (usually simpler) approach to solving the problem.
    Or you could sit and defend your first approach without providing any context and accomplish nothing. So its up to you.

  • Tomcat6 does not load class files from WEB-INF/lib/myjarfile.jar  WHY???

    I have placed my jar file in c:\tomcat6\webapps\my-application\WEB-INF\lib\myjarfile.jar
    But, after restarting tomcat6, when i try to import the class file contained in the myjarfile.jar in a servlet, it says
    ProcessFileUpload.java:4: package test.test1 does not exist
    import test.test1.*;
    ^It clearly tomcat's class loading problem.
    As i unzipped my jar and placed the packagefolder structure to
    c:\tomcat6\webapps\my-application\WEB-INF\classes\testand it works perfectly.
    Anyone knows its workaround? please suggest if any configuration changes is required in tomcat or so.
    Thanks.
    ---Sujoy

    Thank you gimbal2 . There was error in creating the jar file myjarfile.jar.
    But, now I have created it again and placed it in place
    c:\tomcat6\webapps\my-application\WEB-INF\lib\myjarfile.jarand tried to use one on the Class file included within the jar to compile my servlet. But, still I am getting error at servlet compilation time. I want to place executable jar files in
    c:\tomcat6\webapps\my-application\WEB-INF\lib\myjarfile.jar and compile my servlet and execute the servlet.
    I DO NOT WANT TO unzip the jar, placing all unzipped files to
    c:\tomcat6\webapps\my-application\WEB-INF\classes\ folder and comiple my servlet and execute the servlet. But, I am failing to user WEB-INF\lib\ folder facility....please help me why i am not getting class files from WEB-INF\lib\ folder.
    If you please see the small code bit and tell me any possible error that would be very helpful.
    Step 1: my library java file MyClass.java
    package test.test1;
    public class MyClass {
         String myName = "Default return string value";
         public void setMyName(String varName) {
              this.myName = varName;
         public String getMyName() {
              return this.myName;
    }Step2 : Creating jar file of my library class files
    C:\jdk1.6\bin>jar cvf myjarfile.jar test
    added manifest
    adding: test/(in = 0) (out= 0)(stored 0%)
    adding: test/test1/(in = 0) (out= 0)(stored 0%)
    adding: test/test1/MyClass.class(in = 452) (out= 296)(deflated 34%)
    adding: test/test1/MyClass.java(in = 230) (out= 140)(deflated 39%)
    C:\jdk1.6\bin>Step3 : Double checking the created jar file content by listing its content
    C:\jdk1.6\bin>jar tf myjarfile.jar
    META-INF/
    META-INF/MANIFEST.MF
    test/
    test/test1/
    test/test1/MyClass.class
    test/test1/MyClass.java
    C:\jdk1.6\bin>Step4 : Placed myjarfile.jar to
    c:\tomcat6\webapps\my-application\WEB-INF\lib\Step5 : Restarted standalone Tomcat6 in my Windows XP SP2.
    Step6 : Created a simple servlet LibFolderTest.java within my-application\WEB-INF\classes\ folder with code
    import java.io.*;
    import javax.servlet.*;
    import javax.servlet.http.*;
    import test.test1.*;
    public class LibFolderTest extends HttpServlet {
         public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
              response.setContentType("text/html");
              PrintWriter out = response.getWriter();
              MyClass mc = new MyClass();
              out.println(mc.getMyName());
    }Step7 : Tried to compile my servlet LibFolderTest.java and got the following error
    LibFolderTest.java:4: package test.test1 does not exist
    import test.test1.*;
    ^
    LibFolderTest.java:11: cannot find symbol
    symbol  : class MyClass
    location: class LibFolderTest
                    MyClass mc = new MyClass();
                    ^
    LibFolderTest.java:11: cannot find symbol
    symbol  : class MyClass
    location: class LibFolderTest
                    MyClass mc = new MyClass();
                                     ^
    3 errorsThe above servlet compilation error on Step7 is telling me that myjarfile.jar is not loaded by Tomcat6 or not available for use when compiling servlet. I want to use myjarfile.jar from within WEB-INF\lib\ folder but I can not. please help.
    ---Sujoy

  • Classes in web-inf/lib not being found.

    I'm having problems with a servlet app in which jar files placed in the web-inf/lib of the application are not found at runtime.
    If I put them in J2ee\home\lib they are found OK.
    This application has previously deployed and worked correctly, then I added another servlet and redeployed, and classes that were previously found OK stopped being found.
    On checking the server all the directories look correct.
    What could be causing this and how can I make my web applications deploy reliably?
    OC4J version is 9.0.3.0.0.
    Thanks

    Guys,
    Have you tried with the production version of OC4J 9.0.2 ? It should work. Please download the production version of OC4J 9.0.2 and give a try.
    regards
    Debu Panda
    Oracle

  • WLS 6.1sp3 classloader loads all archives within WEB-INF/lib/*

              Within the lib directory of my webapp, I have several different versions of myarchive.jar.
              In WLS 6.0 I would keep older version within the lib directory but renaming them
              so that the current release would get loaded.
              $WL_HOME/config/mydomain/applications/myapp/WEB-INF/lib
              myarvhive.jar
              myarvhive.jar_bf_2.3release
              myarvhive.jar_bf_2.4release
              myarvhive.jar_bf_2.5release
              In WLS 6.0 this method of storing the previous archive version was safe. However,
              now after implementing WLS 6.1, I only can have the current archive release within
              the lib directory. If the previous versions are store within the lib, old methods
              are used.
              I do not understand the WLS classloader behavior and why is it different from
              WLS 6.0?
              wls- WebLogic Server 6.1 SP3
              platform- OSF1 localhost V5.1 1885 alpha
              jvm- Classic VM (build 1.3.0-1, native threads, jit)
              

              Within the lib directory of my webapp, I have several different versions of myarchive.jar.
              In WLS 6.0 I would keep older version within the lib directory but renaming them
              so that the current release would get loaded.
              $WL_HOME/config/mydomain/applications/myapp/WEB-INF/lib
              myarvhive.jar
              myarvhive.jar_bf_2.3release
              myarvhive.jar_bf_2.4release
              myarvhive.jar_bf_2.5release
              In WLS 6.0 this method of storing the previous archive version was safe. However,
              now after implementing WLS 6.1, I only can have the current archive release within
              the lib directory. If the previous versions are store within the lib, old methods
              are used.
              I do not understand the WLS classloader behavior and why is it different from
              WLS 6.0?
              wls- WebLogic Server 6.1 SP3
              platform- OSF1 localhost V5.1 1885 alpha
              jvm- Classic VM (build 1.3.0-1, native threads, jit)
              

  • WEB-INF/lib class reloading

    Are the jar/zip files placed in the WEB-INF/lib directory
    of the web app reloadable i.e. if the classes in the jar file
    are changed would they be reloaded by the webapp
    class loader just like the classes in the WEB-INF/classes
    directory?

    1ro que nada te aconsejo que respondas en ingles... este es un foro en esa lengua.
    si tu ingles es malo te sugiero que uses http://babelfish.altavista.com
    2) do you have include the Reports library in yours projects.

  • Deploy problem with ejb jar in WEB-INF/lib

    Please help with : StringIndexOutOfBoundsException
    On WL 6.1 sp2, I have one EJB jar that deploys fine in an expanded EAR structure,
    this has EJB jars and the web apps together running under a single JVM.
    But when I need to deploy the Web App to a separate server & JVM, still using
    WL 6.1, and leave the EJBs in another WL server I get java.lang.StringIndexOutOfBoundsException.
    I have about 8 ejb jars. When I put one of them in the Web-App's WEB-INF/lib directory.
    I get java.lang.StringIndexOutOfBoundsException when it starts up, just after/during
    the extracting of classes for the standalone Web App. The exception stack trace
    mentions manifest, but the manifest for the ejb jar is just standard. It doesn't
    even have a Class-Path: entry, which all the others happen to have. an needs
    to contain the server EJB jars.
    <04-Feb-02 12:20:18 GMT> <Info> <HTTP> <[HTTP myserver] Loading web app: clasp1>
    <04-Feb-02 12:20:18 GMT> <Info> <HTTP> <[myserver] Loading "clasp1" from directory:
    "D:\JavaProjects\NR\CLASp2\CLASp2WebTier\warCLASp1">
    <04-Feb-02 12:20:18 GMT> <Info> <HTTP> <[WebAppServletContext(5055074,clasp1,/clasp1)]
    extracting classfiles to D:\JavaProjects\NR\CLASp2\CL
    ASp2WebTier\warCLASp1\WEB-INF\_tmp_war_myserver_myserver_clasp1:>
    <04-Feb-02 12:20:23 GMT> <Error> <J2EE> <Error deploying application clasp1: Could
    not load clasp1>
    <04-Feb-02 12:20:23 GMT> <Error> <Management> <ApplicationManager starting Config
    caught throwable
    java.lang.reflect.UndeclaredThrowableException: java.lang.StringIndexOutOfBoundsException:
    String index out of range: -1
    at java.lang.String.substring(String.java:1525)
    at weblogic.utils.jars.ManifestEntry.stream(ManifestEntry.java:166)
    at weblogic.utils.jars.Manifest.stream(Manifest.java:81)
    at weblogic.servlet.internal.WebAppHelper.resolveManifestName(WebAppHelper.java:398)
    at weblogic.servlet.internal.WebAppHelper.extractClassFiles(WebAppHelper.java:234)
    at weblogic.servlet.internal.WebAppServletContext.extractClassFiles(WebAppServletContext.java:3407)
    at weblogic.servlet.internal.WebAppServletContext.setDocroot(WebAppServletContext.java:3376)
    at weblogic.servlet.internal.WebAppServletContext.init(WebAppServletContext.java:862)
    at weblogic.servlet.internal.WebAppServletContext.<init>(WebAppServletContext.java:815)
    at weblogic.servlet.internal.HttpServer.loadWebApp(HttpServer.java:428)
    at weblogic.j2ee.WebAppComponent.deploy(WebAppComponent.java:74)
    at weblogic.j2ee.Application.addComponent(Application.java:163)
    at weblogic.j2ee.J2EEService.addDeployment(J2EEService.java:117)
    at weblogic.management.mbeans.custom.DeploymentTarget.addDeployment(DeploymentTarget.java:329)
    at weblogic.management.mbeans.custom.DeploymentTarget.addDeployment(DeploymentTarget.java:144)
    at weblogic.management.mbeans.custom.WebServer.addWebDeployment(WebServer.java:76)
    at java.lang.reflect.Method.invoke(Native Method)
    at weblogic.management.internal.DynamicMBeanImpl.invokeLocally(DynamicMBeanImpl.java:636)
    at weblogic.management.internal.DynamicMBeanImpl.invoke(DynamicMBeanImpl.java:621)
    at weblogic.management.internal.ConfigurationMBeanImpl.invoke(ConfigurationMBeanImpl.java:359)
    at com.sun.management.jmx.MBeanServerImpl.invoke(MBeanServerImpl.java:1555)
    at com.sun.management.jmx.MBeanServerImpl.invoke(MBeanServerImpl.java:1523)
    at weblogic.management.internal.MBeanProxy.invoke(MBeanProxy.java:468)
    at weblogic.management.internal.MBeanProxy.invoke(MBeanProxy.java:209)
    at $Proxy35.addWebDeployment(Unknown Source)
    at weblogic.management.configuration.WebServerMBean_CachingStub.addWebDeployment(WebServerMBean_CachingStub.java:1121)
    at weblogic.management.mbeans.custom.DeploymentTarget.addDeployment(DeploymentTarget.java:315)
    at weblogic.management.mbeans.custom.DeploymentTarget.addDeployments(DeploymentTarget.java:279)
    at weblogic.management.mbeans.custom.DeploymentTarget.updateServerDeployments(DeploymentTarget.java:233)
    at weblogic.management.mbeans.custom.DeploymentTarget.updateDeployments(DeploymentTarget.java:193)
    at java.lang.reflect.Method.invoke(Native Method)
    at weblogic.management.internal.DynamicMBeanImpl.invokeLocally(DynamicMBeanImpl.java:636)
    at weblogic.management.internal.DynamicMBeanImpl.invoke(DynamicMBeanImpl.java:621)
    at weblogic.management.internal.ConfigurationMBeanImpl.invoke(ConfigurationMBeanImpl.java:359)
    at com.sun.management.jmx.MBeanServerImpl.invoke(MBeanServerImpl.java:1555)
    at com.sun.management.jmx.MBeanServerImpl.invoke(MBeanServerImpl.java:1523)
    at weblogic.management.internal.MBeanProxy.invoke(MBeanProxy.java:468)
    at weblogic.management.internal.MBeanProxy.invoke(MBeanProxy.java:209)
    at $Proxy34.updateDeployments(Unknown Source)
    at weblogic.management.configuration.ServerMBean_CachingStub.updateDeployments(ServerMBean_CachingStub.java:2761)
    at weblogic.management.mbeans.custom.ApplicationManager.startConfigManager(ApplicationManager.java:370)
    at weblogic.management.mbeans.custom.ApplicationManager.start(ApplicationManager.java:160)
    at java.lang.reflect.Method.invoke(Native Method)
    at weblogic.management.internal.DynamicMBeanImpl.invokeLocally(DynamicMBeanImpl.java:636)
    at weblogic.management.internal.DynamicMBeanImpl.invoke(DynamicMBeanImpl.java:621)
    at weblogic.management.internal.ConfigurationMBeanImpl.invoke(ConfigurationMBeanImpl.java:359)
    at com.sun.management.jmx.MBeanServerImpl.invoke(MBeanServerImpl.java:1555)
    at com.sun.management.jmx.MBeanServerImpl.invoke(MBeanServerImpl.java:1523)
    at weblogic.management.internal.MBeanProxy.invoke(MBeanProxy.java:468)
    at weblogic.management.internal.MBeanProxy.invoke(MBeanProxy.java:209)
    at $Proxy46.start(Unknown Source)
    at weblogic.management.configuration.ApplicationManagerMBean_CachingStub.start(ApplicationManagerMBean_CachingStub.java:480)
    at weblogic.management.Admin.startApplicationManager(Admin.java:1180)
    at weblogic.management.Admin.finish(Admin.java:590)
    at weblogic.t3.srvr.T3Srvr.start(T3Srvr.java:518)
    at weblogic.t3.srvr.T3Srvr.run(T3Srvr.java:203)
    at weblogic.Server.main(Server.java:35)
    --------------- nested within: ------------------
    weblogic.j2ee.DeploymentException: Could not load clasp1 - with nested exception:
    [java.lang.StringIndexOutOfBoundsException: String index out of range: -1]
    at weblogic.servlet.internal.HttpServer.loadWebApp(HttpServer.java:431)
    at weblogic.j2ee.WebAppComponent.deploy(WebAppComponent.java:74)
    at weblogic.j2ee.Application.addComponent(Application.java:163)
    at weblogic.j2ee.J2EEService.addDeployment(J2EEService.java:117)
    at weblogic.management.mbeans.custom.DeploymentTarget.addDeployment(DeploymentTarget.java:329)
    at weblogic.management.mbeans.custom.DeploymentTarget.addDeployment(DeploymentTarget.java:144)
    at weblogic.management.mbeans.custom.WebServer.addWebDeployment(WebServer.java:76)
    at java.lang.reflect.Method.invoke(Native Method)
    at weblogic.management.internal.DynamicMBeanImpl.invokeLocally(DynamicMBeanImpl.java:636)
    at weblogic.management.internal.DynamicMBeanImpl.invoke(DynamicMBeanImpl.java:621)
    at weblogic.management.internal.ConfigurationMBeanImpl.invoke(ConfigurationMBeanImpl.java:359)
    at com.sun.management.jmx.MBeanServerImpl.invoke(MBeanServerImpl.java:1555)
    at com.sun.management.jmx.MBeanServerImpl.invoke(MBeanServerImpl.java:1523)
    at weblogic.management.internal.MBeanProxy.invoke(MBeanProxy.java:468)
    at weblogic.management.internal.MBeanProxy.invoke(MBeanProxy.java:209)
    at $Proxy35.addWebDeployment(Unknown Source)
    at weblogic.management.configuration.WebServerMBean_CachingStub.addWebDeployment(WebServerMBean_CachingStub.java:1121)
    at weblogic.management.mbeans.custom.DeploymentTarget.addDeployment(DeploymentTarget.java:315)
    at weblogic.management.mbeans.custom.DeploymentTarget.addDeployments(DeploymentTarget.java:279)
    at weblogic.management.mbeans.custom.DeploymentTarget.updateServerDeployments(DeploymentTarget.java:233)
    at weblogic.management.mbeans.custom.DeploymentTarget.updateDeployments(DeploymentTarget.java:193)
    at java.lang.reflect.Method.invoke(Native Method)
    at weblogic.management.internal.DynamicMBeanImpl.invokeLocally(DynamicMBeanImpl.java:636)
    at weblogic.management.internal.DynamicMBeanImpl.invoke(DynamicMBeanImpl.java:621)
    at weblogic.management.internal.ConfigurationMBeanImpl.invoke(ConfigurationMBeanImpl.java:359)
    at com.sun.management.jmx.MBeanServerImpl.invoke(MBeanServerImpl.java:1555)
    at com.sun.management.jmx.MBeanServerImpl.invoke(MBeanServerImpl.java:1523)
    at weblogic.management.internal.MBeanProxy.invoke(MBeanProxy.java:468)
    at weblogic.management.internal.MBeanProxy.invoke(MBeanProxy.java:209)
    at $Proxy34.updateDeployments(Unknown Source)
    at weblogic.management.configuration.ServerMBean_CachingStub.updateDeployments(ServerMBean_CachingStub.java:2761)
    at weblogic.management.mbeans.custom.ApplicationManager.startConfigManager(ApplicationManager.java:370)
    at weblogic.management.mbeans.custom.ApplicationManager.start(ApplicationManager.java:160)
    at java.lang.reflect.Method.invoke(Native Method)
    at weblogic.management.internal.DynamicMBeanImpl.invokeLocally(DynamicMBeanImpl.java:636)
    at weblogic.management.internal.DynamicMBeanImpl.invoke(DynamicMBeanImpl.java:621)
    at weblogic.management.internal.ConfigurationMBeanImpl.invoke(ConfigurationMBeanImpl.java:359)
    at com.sun.management.jmx.MBeanServerImpl.invoke(MBeanServerImpl.java:1555)
    at com.sun.management.jmx.MBeanServerImpl.invoke(MBeanServerImpl.java:1523)
    at weblogic.management.internal.MBeanProxy.invoke(MBeanProxy.java:468)
    at weblogic.management.internal.MBeanProxy.invoke(MBeanProxy.java:209)
    at $Proxy46.start(Unknown Source)
    at weblogic.management.configuration.ApplicationManagerMBean_CachingStub.start(ApplicationManagerMBean_CachingStub.java:480)
    at weblogic.management.Admin.startApplicationManager(Admin.java:1180)
    at weblogic.management.Admin.finish(Admin.java:590)
    at weblogic.t3.srvr.T3Srvr.start(T3Srvr.java:518)
    at weblogic.t3.srvr.T3Srvr.run(T3Srvr.java:203)
    at weblogic.Server.main(Server.java:35)

    Manifest class-path possibly?
    Cameron Purdy
    Tangosol, Inc.
    Clustering Weblogic? You're either using Coherence, or you should be!
    Download a Tangosol Coherence eval today at http://www.tangosol.com/
    "Pete" <[email protected]> wrote in message
    news:[email protected]...
    >
    Please help with : StringIndexOutOfBoundsException
    On WL 6.1 sp2, I have one EJB jar that deploys fine in an expanded EARstructure,
    this has EJB jars and the web apps together running under a single JVM.
    But when I need to deploy the Web App to a separate server & JVM, stillusing
    WL 6.1, and leave the EJBs in another WL server I getjava.lang.StringIndexOutOfBoundsException.
    >
    I have about 8 ejb jars. When I put one of them in the Web-App'sWEB-INF/lib directory.
    I get java.lang.StringIndexOutOfBoundsException when it starts up, justafter/during
    the extracting of classes for the standalone Web App. The exception stacktrace
    mentions manifest, but the manifest for the ejb jar is just standard. Itdoesn't
    even have a Class-Path: entry, which all the others happen to have. anneeds
    to contain the server EJB jars.
    <04-Feb-02 12:20:18 GMT> <Info> <HTTP> <[HTTP myserver] Loading web app:clasp1>
    <04-Feb-02 12:20:18 GMT> <Info> <HTTP> <[myserver] Loading "clasp1" fromdirectory:
    "D:\JavaProjects\NR\CLASp2\CLASp2WebTier\warCLASp1">
    <04-Feb-02 12:20:18 GMT> <Info> <HTTP><[WebAppServletContext(5055074,clasp1,/clasp1)]
    extracting classfiles to D:\JavaProjects\NR\CLASp2\CL
    ASp2WebTier\warCLASp1\WEB-INF\_tmp_war_myserver_myserver_clasp1:>
    <04-Feb-02 12:20:23 GMT> <Error> <J2EE> <Error deploying applicationclasp1: Could
    not load clasp1>
    <04-Feb-02 12:20:23 GMT> <Error> <Management> <ApplicationManager startingConfig
    caught throwable
    java.lang.reflect.UndeclaredThrowableException:java.lang.StringIndexOutOfBoundsException:
    String index out of range: -1
    at java.lang.String.substring(String.java:1525)
    atweblogic.utils.jars.ManifestEntry.stream(ManifestEntry.java:166)
    at weblogic.utils.jars.Manifest.stream(Manifest.java:81)
    atweblogic.servlet.internal.WebAppHelper.resolveManifestName(WebAppHelper.java
    :398)
    atweblogic.servlet.internal.WebAppHelper.extractClassFiles(WebAppHelper.java:2
    34)
    atweblogic.servlet.internal.WebAppServletContext.extractClassFiles(WebAppServl
    etContext.java:3407)
    atweblogic.servlet.internal.WebAppServletContext.setDocroot(WebAppServletConte
    xt.java:3376)
    atweblogic.servlet.internal.WebAppServletContext.init(WebAppServletContext.jav
    a:862)
    atweblogic.servlet.internal.WebAppServletContext.<init>(WebAppServletContext.j
    ava:815)
    atweblogic.servlet.internal.HttpServer.loadWebApp(HttpServer.java:428)
    at weblogic.j2ee.WebAppComponent.deploy(WebAppComponent.java:74)
    at weblogic.j2ee.Application.addComponent(Application.java:163)
    at weblogic.j2ee.J2EEService.addDeployment(J2EEService.java:117)
    atweblogic.management.mbeans.custom.DeploymentTarget.addDeployment(DeploymentT
    arget.java:329)
    atweblogic.management.mbeans.custom.DeploymentTarget.addDeployment(DeploymentT
    arget.java:144)
    atweblogic.management.mbeans.custom.WebServer.addWebDeployment(WebServer.java:
    76)
    at java.lang.reflect.Method.invoke(Native Method)
    atweblogic.management.internal.DynamicMBeanImpl.invokeLocally(DynamicMBeanImpl
    .java:636)
    atweblogic.management.internal.DynamicMBeanImpl.invoke(DynamicMBeanImpl.java:6
    21)
    atweblogic.management.internal.ConfigurationMBeanImpl.invoke(ConfigurationMBea
    nImpl.java:359)
    atcom.sun.management.jmx.MBeanServerImpl.invoke(MBeanServerImpl.java:1555)
    atcom.sun.management.jmx.MBeanServerImpl.invoke(MBeanServerImpl.java:1523)
    atweblogic.management.internal.MBeanProxy.invoke(MBeanProxy.java:468)
    atweblogic.management.internal.MBeanProxy.invoke(MBeanProxy.java:209)
    at $Proxy35.addWebDeployment(Unknown Source)
    atweblogic.management.configuration.WebServerMBean_CachingStub.addWebDeploymen
    t(WebServerMBean_CachingStub.java:1121)
    atweblogic.management.mbeans.custom.DeploymentTarget.addDeployment(DeploymentT
    arget.java:315)
    atweblogic.management.mbeans.custom.DeploymentTarget.addDeployments(Deployment
    Target.java:279)
    atweblogic.management.mbeans.custom.DeploymentTarget.updateServerDeployments(D
    eploymentTarget.java:233)
    atweblogic.management.mbeans.custom.DeploymentTarget.updateDeployments(Deploym
    entTarget.java:193)
    at java.lang.reflect.Method.invoke(Native Method)
    atweblogic.management.internal.DynamicMBeanImpl.invokeLocally(DynamicMBeanImpl
    .java:636)
    atweblogic.management.internal.DynamicMBeanImpl.invoke(DynamicMBeanImpl.java:6
    21)
    atweblogic.management.internal.ConfigurationMBeanImpl.invoke(ConfigurationMBea
    nImpl.java:359)
    atcom.sun.management.jmx.MBeanServerImpl.invoke(MBeanServerImpl.java:1555)
    atcom.sun.management.jmx.MBeanServerImpl.invoke(MBeanServerImpl.java:1523)
    atweblogic.management.internal.MBeanProxy.invoke(MBeanProxy.java:468)
    atweblogic.management.internal.MBeanProxy.invoke(MBeanProxy.java:209)
    at $Proxy34.updateDeployments(Unknown Source)
    atweblogic.management.configuration.ServerMBean_CachingStub.updateDeployments(
    ServerMBean_CachingStub.java:2761)
    atweblogic.management.mbeans.custom.ApplicationManager.startConfigManager(Appl
    icationManager.java:370)
    atweblogic.management.mbeans.custom.ApplicationManager.start(ApplicationManage
    r.java:160)
    at java.lang.reflect.Method.invoke(Native Method)
    atweblogic.management.internal.DynamicMBeanImpl.invokeLocally(DynamicMBeanImpl
    .java:636)
    atweblogic.management.internal.DynamicMBeanImpl.invoke(DynamicMBeanImpl.java:6
    21)
    atweblogic.management.internal.ConfigurationMBeanImpl.invoke(ConfigurationMBea
    nImpl.java:359)
    atcom.sun.management.jmx.MBeanServerImpl.invoke(MBeanServerImpl.java:1555)
    atcom.sun.management.jmx.MBeanServerImpl.invoke(MBeanServerImpl.java:1523)
    atweblogic.management.internal.MBeanProxy.invoke(MBeanProxy.java:468)
    atweblogic.management.internal.MBeanProxy.invoke(MBeanProxy.java:209)
    at $Proxy46.start(Unknown Source)
    atweblogic.management.configuration.ApplicationManagerMBean_CachingStub.start(
    ApplicationManagerMBean_CachingStub.java:480)
    atweblogic.management.Admin.startApplicationManager(Admin.java:1180)
    at weblogic.management.Admin.finish(Admin.java:590)
    at weblogic.t3.srvr.T3Srvr.start(T3Srvr.java:518)
    at weblogic.t3.srvr.T3Srvr.run(T3Srvr.java:203)
    at weblogic.Server.main(Server.java:35)
    --------------- nested within: ------------------
    weblogic.j2ee.DeploymentException: Could not load clasp1 - with nestedexception:
    [java.lang.StringIndexOutOfBoundsException: String index out of range: -1]
    atweblogic.servlet.internal.HttpServer.loadWebApp(HttpServer.java:431)
    at weblogic.j2ee.WebAppComponent.deploy(WebAppComponent.java:74)
    at weblogic.j2ee.Application.addComponent(Application.java:163)
    at weblogic.j2ee.J2EEService.addDeployment(J2EEService.java:117)
    atweblogic.management.mbeans.custom.DeploymentTarget.addDeployment(DeploymentT
    arget.java:329)
    atweblogic.management.mbeans.custom.DeploymentTarget.addDeployment(DeploymentT
    arget.java:144)
    atweblogic.management.mbeans.custom.WebServer.addWebDeployment(WebServer.java:
    76)
    at java.lang.reflect.Method.invoke(Native Method)
    atweblogic.management.internal.DynamicMBeanImpl.invokeLocally(DynamicMBeanImpl
    .java:636)
    atweblogic.management.internal.DynamicMBeanImpl.invoke(DynamicMBeanImpl.java:6
    21)
    atweblogic.management.internal.ConfigurationMBeanImpl.invoke(ConfigurationMBea
    nImpl.java:359)
    atcom.sun.management.jmx.MBeanServerImpl.invoke(MBeanServerImpl.java:1555)
    atcom.sun.management.jmx.MBeanServerImpl.invoke(MBeanServerImpl.java:1523)
    atweblogic.management.internal.MBeanProxy.invoke(MBeanProxy.java:468)
    atweblogic.management.internal.MBeanProxy.invoke(MBeanProxy.java:209)
    at $Proxy35.addWebDeployment(Unknown Source)
    atweblogic.management.configuration.WebServerMBean_CachingStub.addWebDeploymen
    t(WebServerMBean_CachingStub.java:1121)
    atweblogic.management.mbeans.custom.DeploymentTarget.addDeployment(DeploymentT
    arget.java:315)
    atweblogic.management.mbeans.custom.DeploymentTarget.addDeployments(Deployment
    Target.java:279)
    atweblogic.management.mbeans.custom.DeploymentTarget.updateServerDeployments(D
    eploymentTarget.java:233)
    atweblogic.management.mbeans.custom.DeploymentTarget.updateDeployments(Deploym
    entTarget.java:193)
    at java.lang.reflect.Method.invoke(Native Method)
    atweblogic.management.internal.DynamicMBeanImpl.invokeLocally(DynamicMBeanImpl
    .java:636)
    atweblogic.management.internal.DynamicMBeanImpl.invoke(DynamicMBeanImpl.java:6
    21)
    atweblogic.management.internal.ConfigurationMBeanImpl.invoke(ConfigurationMBea
    nImpl.java:359)
    atcom.sun.management.jmx.MBeanServerImpl.invoke(MBeanServerImpl.java:1555)
    atcom.sun.management.jmx.MBeanServerImpl.invoke(MBeanServerImpl.java:1523)
    atweblogic.management.internal.MBeanProxy.invoke(MBeanProxy.java:468)
    atweblogic.management.internal.MBeanProxy.invoke(MBeanProxy.java:209)
    at $Proxy34.updateDeployments(Unknown Source)
    atweblogic.management.configuration.ServerMBean_CachingStub.updateDeployments(
    ServerMBean_CachingStub.java:2761)
    atweblogic.management.mbeans.custom.ApplicationManager.startConfigManager(Appl
    icationManager.java:370)
    atweblogic.management.mbeans.custom.ApplicationManager.start(ApplicationManage
    r.java:160)
    at java.lang.reflect.Method.invoke(Native Method)
    atweblogic.management.internal.DynamicMBeanImpl.invokeLocally(DynamicMBeanImpl
    .java:636)
    atweblogic.management.internal.DynamicMBeanImpl.invoke(DynamicMBeanImpl.java:6
    21)
    atweblogic.management.internal.ConfigurationMBeanImpl.invoke(ConfigurationMBea
    nImpl.java:359)
    atcom.sun.management.jmx.MBeanServerImpl.invoke(MBeanServerImpl.java:1555)
    atcom.sun.management.jmx.MBeanServerImpl.invoke(MBeanServerImpl.java:1523)
    atweblogic.management.internal.MBeanProxy.invoke(MBeanProxy.java:468)
    atweblogic.management.internal.MBeanProxy.invoke(MBeanProxy.java:209)
    at $Proxy46.start(Unknown Source)
    atweblogic.management.configuration.ApplicationManagerMBean_CachingStub.start(
    ApplicationManagerMBean_CachingStub.java:480)
    atweblogic.management.Admin.startApplicationManager(Admin.java:1180)
    at weblogic.management.Admin.finish(Admin.java:590)
    at weblogic.t3.srvr.T3Srvr.start(T3Srvr.java:518)
    at weblogic.t3.srvr.T3Srvr.run(T3Srvr.java:203)
    at weblogic.Server.main(Server.java:35)

  • Oc4j 10.1.3.0.0Prev4 does not load libs in WEB-INF/lib

    Hi,
    trying to use an existing application with oc4j I have serious problems.
    When trying to deploy I get exceptions (ClassNotFound) of classes that are in libs that are in the WEB-INF/lib folder of the war file I want to deploy:
    05/09/23 17:20:21 CharScanner; panic: ClassNotFoundException: org.hibernate.hql.ast.HqlToken
    This class is in hibernate3.jar which is included in the war-file.
    When I place all the libs into the applib folder it does deploy. But then it crashes at runtime telling me the classes are duplicate (one in the war, one in applib).
    Any suggestions what I can do would be greatly appreciated.
    Norbert

    Hello,
    Instead of simply dropping the Jar file in the applib directory you should create shared libraries that will give you better control of what is happening at the classloader level (System, Application and Web Application)
    Please take a look to the 10.1.3 How tos about shared library. (Swapping XML parser and JDBC driver), and also to the documentation, chapter 7 "Using Shared Libraries" of the OC4J Configuration and Administration Guide
    Regards
    Tugdual Grall

  • WLS 8.1 SP4 and web-inf/lib ClassNotFoundExceptions

    Hi
    Is anyone else having problems with this issue ?
    I saw it was resolved (CR161884 & CR173695) in the 8.1 SP3 release, but I'm unable to deploy a web app (either through the console or in the applications directory of the domain) in SP4 as the classloader can't see my JAR file in WEB-INF/lib.
    <30-Dec-2004 15:51:47 o'clock GMT> <Error> <Deployer> <BEA-149201> <Failed to co
    mplete the deployment task with ID 7 for the application appsdirdp-application
    -1.0-SNAPSHOT_war.
    weblogic.management.DeploymentException:
    Exception:weblogic.management.ApplicationException: start() failed.
            Module: dp-application-1.0-SNAPSHOT     Error: weblogic.management.Deplo
    ymentException: org/picocontainer/gems/StaticFactory - with nested exception:
    [java.lang.NoClassDefFoundError: org/picocontainer/gems/StaticFactory]Inside my WAR file, I have a WEB-INF\lib directory, containing picocontainer-gems-1.1-SNAPSHOT.jar which contains the org.picocontainer.gems.StaticFactory class.
    I've tried deploying the app both with and without a weblogic.xml file declaring prefer-web-inf-classes set to true.
    Rgs
    Erik

    Just as a check, I moved the JAR files to a common lib directory on the server and added them to the system classpath specified in startWeblogic.cmd, and the application starts fine.
    Maybe not related, but yesterday I was tried deploying an EJB that was dependent on a JAR file NOT included within its JAR file, but specified with the Class-path entry in the manifest.
    The behaviour I saw was WLS swallowed the ClassNotFoundException silently, the admin console reported that the EJB was deployed successfully but inside the ejbCreate method - I had two print line statements, one prior to calling the missing class, and one after. Only the one prior appeared on the system console, suggesting that the ejbCreate method wasn't completing, yet no exception is thrown ?

  • Working with tag-library which is packed in WEB-INF\lib\jar-file.jar:

    Hi,
    When importing a webworks war file, which contains default taglib.tld in the webworks.jar which is packed in /Web-Inf/lib/webworks.2.1.7.jar the war file.
    I am getting following error while running the jsp.
    Error(6): duplicated tag definitions within the same TLD: text
    Error(6): java.lang.NullPointerException
    Error(6): Unable to load taghandler class: /webwork
    Line which points to Errors is "<%@ taglib prefix="ww" uri="/webwork" %>"
    But, There is a taglib.tld in /Web-Inf/lib/webworks.2.1.7.jar!\meta-inf\tablib.tld
    which mentions uri as
    <taglib>
    <tlib-version>2.2.1</tlib-version>
    <jsp-version>1.2</jsp-version>
    <short-name>WebWork Taglib</short-name>
    <uri>/webwork</uri>
    </taglib>
    But, There is no following entry for '/webwork' (uri) in web.xml
    Same war is working fine in tomcat webserver.
    Can anybody explain me how to work with this kind of a setup, where taglib is packed in some jar which is packed in Web-Inf/lib dir.
    Thanks,
    Siva

    I found the problem. The web-app was finding the class in the APP-INf/lib. But the problem was being caused due to a reference to another class that was being loaded by the webapp classloader which was not visible to the class inside the common jar. The solution was to make sure both classes were being loaded by one class loader.
    Thanks anyway
    Sameet

Maybe you are looking for

  • CC 14 crashes on Mac after opening recent project

    So after hours of work yesterday, Premiere Pro CC 14 gave me the dreaded Mac spinning wheel of death. No error messages, it just wont respond.  Relaunched.  Rebooted.  Repaired discs.  Installed updates. Reinstalled program. Nothing/ Launch and creat

  • Passing a variable to an SQL Expression Field

    Is it possible to pass a value or variable to an SQL Epression field?  I want to sum the values of open invoices for a particulat customer and want to do this using an SQL Expression Field.  I need this sum in a  subreport and since I can not put a s

  • AP interface tables import

    dear all, when i was trying to import data from the interface tables of the AP (in my case only AP_INVOICES_INTERFACE and AP_IMVOICE_LINES_INTERFACE), i ran a request and request report said that the total invoices imported is zero and the total reje

  • Where should I return?

    I bought my iPod touch 5th gen from Walmart less than a month ago, and the charger is in the early stages of being broken (needing to be in a certain position to charge). Should I take it into the Apple Store or Walmart?

  • IMovie 10.0.3 Ken burns not smooth

    I am using iMovie 10.0.3 on my MacPro, I created a movie with 140 clips, each of them connected with transitions and all of them with ken burns effect and audio. After working fine for days, I noticed suddently that the zoom in and out of the Ken bur