Loading struts classes into a webapp

 

Was this ever solved? I am having a similar class loading problem with struts
jars in web-inf/lib in war packaged in an ear with 8.1.
Thanks, Julie
"Vinod Mehra" <[email protected]> wrote:
Hoki,
After looking at the stack trace you sent us, it looks like the same
problem as CR081073. Which has been fixed already for 700sp1.
One off patches are availiable for the 70 version. Please contact
support for a one off patch with CR081073 as reference.
The problem was that the context classloader was not set correctly
while instantiating the servlet.Struts' ActionServlet invokes the
org.apache.commons.logging.LogFactory in the constructor. If it
can be changed to do the same thing in the init method instead it
will work fine.
Let us know if the patch doesn't fix the problem.
Thanks,
--Vinod.
"Nagesh Susarla" <[email protected]> wrote in message
news:[email protected]...
Oops i meant 'not' being honored.
"Manifest-cp specified in WARS was NOT being honored"
thx
-nagesh
Nagesh Susarla wrote:
Hi,
CR074842 fixes manifest related issues.
Please contact wlsupport and request a patch for the above mentioned
CR.
Actually Manifest-classpath specified in WAR's was being honoredand
thats the reason the war cannot find library.jar
hope that helps
nagesh
Ho-Ki Au wrote:
I created a MANIFEST.MF in both the webapp's META-INF directory
and
the WEB-INF
directory and it still doesn't work. Can you tell me how to packagethis:
MyApp.ear:
Library.jar
EJB.jar:
META-INF/MANIFEST.MF has Class-Path: Library.jar
WebApp.war
WEB-INF/lib/struts.jar
WEB-INF/MANIFEST.MF has Class-Path: Library.jarWebApp.war/WEB-INF/lib/struts.jar
META-INF/MANIFEST.MF has Class-Path: Library.jarWebApp.war/WEB-INF-lib/struts.jar
META-INF/application.xml
in exploded directory form. The web app is actually not able toresolve classes
in Library.jar and struts.jar even it uses the EJB and has an EJBreference in
its deployment descriptors.
Can you explain how the webapp classloading works?
"Ajay" <[email protected]> wrote:
Ho-Ki Au <[email protected]> wrote in message
news:[email protected]...
I have lots of trouble understanding how classloading in weblogic
works.
I have
a ear file which contains two ejb-jars, two library jars, and
a
webapp
war
file.
The webapp uses struts and since it is not used by anybody
else, I
put it
in
the webapp's WEB-INF/lib. I did not specify any classpath for
the
webapp
because
the container is supposed to load all jars in the WEB-INF/lib
directory.
I'm deploying it in the exploded directory mode where everythingis
expanded.
So under the application directory, there is a directorymywebapp/WEB-INF/lib
and struts.jar resides there (not expanded).
when i use a browser to launch the app, I saw some stack trace
in
the
console
saying NoClassDefFoundException for class
org/apache/struts/action/Action.
Another question. if I have a jar file which is shared betweenan
ejb and
a webapp,
i put it at the root level of the ear file. in the ejb jar
file, i
can
use the
Class-Path property in MANIFEST.MF to point to it. how can
a
webapp
specify to
use that library jar file?
You can do the same stuff as in EJB with Webapp, but I am notquite
sure
whether it is in Meta-Inf/manaifest or Web-Inf/Manifest in thewebapp
directory
Hope this helps
Ajay
Thanks for help. Please send me email.
-hoki

Similar Messages

  • Load java class into the database 10g

    Hi ,
    We have a program which creates pdf files by using bi publisher.for this program we r using some java package to create a directory in unix whenever invoiceprint program runs.
    Now i need to load this class into database,so how can i load this class into database.
    I got some samples and docs from google but i was confused with those wether i should load from Oracle/applmgr user.
    So Could any one please tell me how can i load java class into oracle database.
    I am verymuch thankful for your kind help.Its an emergency issue for me.
    Thanks,
    YMR

    Hi,
    http://www.oracle-training.cc/teas_elite_util9.htm
    SS

  • Error loading a class into oracle db

    hi,
    my oracle server: 8i Enterprise Edition Release 8.1.7.0.0
    i want to load a simple java class into my oracle server.
    java source:
    public class Ping
         java.lang.String server;
         public static void main(java.lang.String[] args)
              System.out.println(new Ping().runCmd(args[0]));
         public static java.lang.String runCmd(String cmd)
           boolean result=false;
           int timeout=5000;
           try {            
                java.net.InetAddress byName=java.net.InetAddress.getByName(cmd);
                   result=byName.isReachable(timeout);
           catch(java.io.IOException e)
               e.printStackTrace();
               java.lang.String retVal=java.lang.Boolean.toString(result);
                return retVal;
    }after compiling the java file. i'm using loadjava at dos prompt.
    loadjava -user uname/pwd@db -resolve Ping.class
    this command results in
    ORA-29545: badly formed class:
    loadjava: 1 errors
    alternatively i had used a command
    loadjava -user uname/pwd@db -noverify -resolve Ping.class
    this command results in
    Error while turning off verifier
    ORA-29532: Java call terminated by uncaught Java exception: java.security.Ac
    cessControlException: the Permission (oracle.aurora.security.JServerPermission V
    erifier ) has not been granted by dbms_java.grant_permission to SchemaProtection
    Domain(SMSPGS|PolicyTableProxy(SMSPGS))
    ORA-29545: badly formed class:
    loadjava: 2 errors
    but user is having sufficient rights (javasyspriv)
    what is wrong above, please help me.
    regards,
    s.mohamed asif

    the error message says it all: You don't have permission.

  • Load Created Classes into the database

    Dear all,
    I successfully uploaded my created classes to the database then published them by creating a pl/sql procedures . But the execution of the procedure is returning:
    java.lang.UnsatisfiedLinkError: no csdkjni in java.library.path
    I've searched this error in metalink and it turned out that this is due to the unavailability of csdkjni lib file in the linux version of csdk (OCS 9i) . But i'm using OCS 10g ,so this shouldn't be my case.
    Could you please check this problem or give me some pointers on how to resolve this issue.
    Cheers!!

    Dear all,
    Maybe the description of my problem was a bit vague.
    So here is a list of things i've done :
    1- create a java class that creates an event .
    2- compiled and tested the class .
    3- used loadjava to load it into my database
    4- created a pl/sql procedure that calls this loaded class.
    5- call the procedure
    now at this point ,i hit the error : no csdkjni in java.library.path
    could you please give this a try in your environments and let me know!!

  • Does loading too many classes into jvm slow down performance?

    hi all,
    does loading too many classes into jvm will slow down performance. Our application is CPU bound, if we use any framework we need to load all the classes related to that framework in JVM. Does this have any effect on the performance of the JVM.
    thanks and regards,
    akmal

    does loading many classes into jvm slow down performance.It will increase the time it takes for the JVM to load your application.
    Our application is CPU boundThe time it takes the JVM to load your application is not likely to be an issue for you then.

  • Error while trying to load java classes

    I am doing a 9iAS installation - at the end
    of the installation I get an error stating
    that the SSOHash class has not been loaded into the database. When I run the loadjava utility to load the class into the database
    I get the following error:
    ora-29545: badly formed class: user has
    attempted to load a class (oracle.security.sso.SSOHash) into a restricted package. Permission can be granted by using dbms_java.grant_permission.
    When I execute the dbms_java package I get
    the following error:
    ora-29532: classnotfoundexception
    ora-06512: at "SYS.DBMS_JAVA", line 0
    The install is being carried out on Solaris.
    and the jdk version of the OS is 1.1. I read
    in the oracle documentation that Oracle 8i
    uses Java 2 compliance. Would it be a good
    idea to upgrade the os jdk to 2.0 and do
    a fresh install or are there workarounds.
    Any help would be greatly appreciated.
    Thanks,
    Suzanne

    This is a little late, but it sounds like you don't have the Java option installed on the database.

  • Does java import loads the class?

    Hi,
    Acc common practive {not mentioned in Sun java convention} if a class is using more than three classes from a pacakage then its ideal to import all the classes from tht package instead of importing individual classes. i.e., import pacakage.*;
    1) Does this kind of load all the classes into memory?
    2) Does import statement actually loads a class into memory
    isnt import jst to use class name instead of complete package name in the code?
    3) Does a class get loaded only when its object/ its static memebers are invoked?
    Would appreciate if anyone can answer these queries.
    Thanks
    Deepak

    Acc common practive {not mentioned in Sun java
    convention} And not mentioned or usually followed anywhere else. Who says this?
    if a class is using more than three
    classes from a pacakage then its ideal to import all
    the classes from tht package instead of importing
    individual classes. i.e., import pacakage.*;
    1) Does this kind of load all the classes into
    memory?imports have no influence on anything but the length of written code. Thanks for being the second person this hour to ask this question without researching first.
    2) Does import statement actually loads a class into
    memoryNo. It does nothing at all.
    isnt import jst to use class name instead of complete
    package name in the code?Yes.
    3) Does a class get loaded only when its object/ its
    static memebers are invoked?Yes.

  • Struts class not found for war file

    Hello,
    I am tring to deploy my struts web application in weblogic 8.1. I have all the
    library files in web-inf\lib directory. It gave me the error that class not found
    for some class in struts library. The console also told me the classpath. But
    I can use javap to find the class using the same classpath. Could any one point
    me some direction what I am doing wrong here.
    Thanks.
    Here is the error message:
    java.lang.NoClassDefFoundError: org/apache/commons/beanutils/Converter.>
    <Nov 13, 2003 11:05:29 AM EST> <Error> <HTTP> <BEA-101216> <Servlet: "action"
    fa
    iled to preload on startup in Web application: "voppocWebApp".
    javax.servlet.ServletException: [HTTP:101250][ServletContext(id=9921725,name=vop
    pocWebApp,context-path=/voppocWebApp)]: Servlet class org.apache.struts.action.A
    ctionServlet for servlet action could not be loaded because a class on which it
    depends was not found in the classpath C:\bea\weblogic81\server\bin\myserver\upl
    oad\voppocWebApp.war;C:\bea\weblogic81\server\bin\.\myserver\.wlnotdelete\extrac
    t\myserver_voppocWebApp_voppocWebApp\jarfiles\WEB-INF\lib\activation30425.jar;C:
    \bea\weblogic81\server\bin\.\myserver\.wlnotdelete\extract\myserver_voppocWebApp
    _voppocWebApp\jarfiles\WEB-INF\lib\commons-beanutils30426.jar;C:\bea\weblogic81\
    server\bin\.\myserver\.wlnotdelete\extract\myserver_voppocWebApp_voppocWebApp\ja
    rfiles\WEB-INF\lib\commons-collections30427.jar;C:\bea\weblogic81\server\bin\.\m
    yserver\.wlnotdelete\extract\myserver_voppocWebApp_voppocWebApp\jarfiles\WEB-INF
    \lib\commons-digester30428.jar;C:\bea\weblogic81\server\bin\.\myserver\.wlnotdel
    ete\extract\myserver_voppocWebApp_voppocWebApp\jarfiles\WEB-INF\lib\commons-file
    upload30429.jar;C:\bea\weblogic81\server\bin\.\myserver\.wlnotdelete\extract\mys
    erver_voppocWebApp_voppocWebApp\jarfiles\WEB-INF\lib\commons-lang30430.jar;C:\be
    a\weblogic81\server\bin\.\myserver\.wlnotdelete\extract\myserver_voppocWebApp_vo
    ppocWebApp\jarfiles\WEB-INF\lib\commons-logging30431.jar;C:\bea\weblogic81\serve
    r\bin\.\myserver\.wlnotdelete\extract\myserver_voppocWebApp_voppocWebApp\jarfile
    s\WEB-INF\lib\commons-validator30432.jar;C:\bea\weblogic81\server\bin\.\myserver
    \.wlnotdelete\extract\myserver_voppocWebApp_voppocWebApp\jarfiles\WEB-INF\lib\ja
    karta-oro30433.jar;C:\bea\weblogic81\server\bin\.\myserver\.wlnotdelete\extract\
    myserver_voppocWebApp_voppocWebApp\jarfiles\WEB-INF\lib\jdbc2_0-stdext30434.jar;
    C:\bea\weblogic81\server\bin\.\myserver\.wlnotdelete\extract\myserver_voppocWebA
    pp_voppocWebApp\jarfiles\WEB-INF\lib\mailapi30435.jar;C:\bea\weblogic81\server\b
    in\.\myserver\.wlnotdelete\extract\myserver_voppocWebApp_voppocWebApp\jarfiles\W
    EB-INF\lib\struts30436.jar;C:\bea\weblogic81\server\bin\.\myserver\.wlnotdelete\
    extract\myserver_voppocWebApp_voppocWebApp\jarfiles\_wl_cls_gen.jar.
    java.lang.NoClassDefFoundError: org/apache/commons/beanutils/Converter.
    at weblogic.servlet.internal.ServletStubImpl.prepareServlet(ServletStubI
    mpl.java:800)
    at weblogic.servlet.internal.WebAppServletContext.preloadServlet(WebAppS
    ervletContext.java:3236)
    at weblogic.servlet.internal.WebAppServletContext.preloadServlets(WebApp
    ServletContext.java:3181)

    Hello Mark,
    Your suggested solution (putting an empty commons-logging.properties into
    web-inf/classes or in a jar in web-inf/lib)
    does not make any change at all. It still complains about not being able to
    preload the servlet and still
    gives exceptions upong calling upon LogFactory.
    What I have been able to do is put the three classes from
    com.bea.wlw.netui.util.logging into a separate jar
    and add that to web-inf/lib.
    However I am sometimes getting funny exceptions upon undeploy
    (NoClassDefFoundError for org.apache.commons.collection.FastHashMap$KeySet).
    Regards,
    Robert Varga
    "Mark Griffith" <[email protected]> wrote in message
    news:[email protected]...
    From a FAQ on netui:
    1. Why do I get a ServletException while trying to deploy a struts web
    application on a Workshop/Integration/Portal domain?
    In the "<WL-HOME>/server/lib/knex.jar" file there is a properties file
    called "commons-logging.properties" which configures the
    com.bea.wlw.netui.util.logging.StrutsLogFactory class for Struts loggingas
    below:
    org.apache.commons.logging.LogFactory=com.bea.wlw.netui.util.logging.StrutsL
    ogFactory
    This class file is not available for a Struts web application that was not
    built using Workshop, the reason being the containing NetUI jar files are
    not present in the web application's WEB-INF/lib folder. This leads to a
    ServletException while deploying the web application. The solution is toadd
    a blank file (or a JAR containing the file) namedcommons-logging.properties
    to the server CLASSPATH, or to the WEB-INF/lib folder of the concerned web
    application. This issue will be fixed in Service Pack 2.
    cheers
    mbg
    "Robert Varga" <[email protected]> wrote in message
    news:[email protected]...
    Hi Rob,
    I also have a similar error with deploying a Struts web application into
    a
    8.1 Basic Workshop Domain created
    by 8.1 Platform.
    I get a ClassNotFoundException for 'com.wlw...StrutsLogFactory', whenStruts
    tries to load any Jakarta class
    from commons-beanutils or Struts which has logging.
    This happens because commons-logging picks up some property whichinstructs
    it to load that class, which is
    naturally not included in most web applications, since it is
    workshop-specific. This property definition, I think,
    is in <bea>\weblogic81\server\knex.jar, called
    commons-logging.properties,
    containing the following line:
    org.apache.commons.logging.LogFactory=com.bea.wlw.netui.util.logging.StrutsL
    ogFactory
    How can I override this in my webapp in a property file, so that when a
    Struts or Beanutils class calls
    LogFactory.getLog(org.apache.....<classname>.class), it would not try touse
    the property file and the
    class defined in knex.jar.
    Thanks in advance,
    Robert Varga
    "Rob Woollen" <[email protected]> wrote in message
    news:[email protected]...
    Actually it complained about a NoClassDefFoundError. Generally this
    is
    caused by something in a parent classloader that is found but then
    depends on something only loadable in a child classloader.
    eg.
    You have something in your $CLASSPATH that references something in the
    WEB-INF/lib. This will NoClassDefFoundError.
    So, as I recommended, remove everything you've added to the$CLASSPATH,
    add the jars to WEB-INF/lib. If you're still having problems, show me
    your $CLASSPATH, the contents of WEB-INF/lib, and the error message
    /stack trace.
    -- Rob
    yuruo chen wrote:
    Hello, Rob,
    I did put the common-beanutils and other jar files in the
    web-inf/lib
    directory.
    And from the weblogic console, I do see the jar file get included in
    the
    classpath.
    (those generated file name have some number attached at the end.)
    As
    I
    mentioned
    before, I can use javap find the class using this weblogic generatedclasspath.
    But weblogic complained that the class is not found.
    Rob Woollen <[email protected]> wrote:
    Remove anything you've added to the server's classpath.
    Add the required jar files to WEB-INF/lib
    -- Rob
    yuruo chen wrote:
    Hello,
    I am tring to deploy my struts web application in weblogic 8.1. I
    have
    all the
    library files in web-inf\lib directory. It gave me the error that
    class
    not found
    for some class in struts library. The console also told me the
    classpath.
    But
    I can use javap to find the class using the same classpath. Could
    any
    >>>>>
    one point
    me some direction what I am doing wrong here.
    Thanks.
    Here is the error message:
    java.lang.NoClassDefFoundError:
    org/apache/commons/beanutils/Converter.>
    <Nov 13, 2003 11:05:29 AM EST> <Error> <HTTP> <BEA-101216>
    <Servlet:
    >>>>>
    "action"
    fa
    iled to preload on startup in Web application: "voppocWebApp".
    javax.servlet.ServletException:
    [HTTP:101250][ServletContext(id=9921725,name=vop
    pocWebApp,context-path=/voppocWebApp)]: Servlet classorg.apache.struts.action.A
    ctionServlet for servlet action could not be loaded because a classon which it
    depends was not found in the classpath
    C:\bea\weblogic81\server\bin\myserver\upl
    >
    oad\voppocWebApp.war;C:\bea\weblogic81\server\bin\.\myserver\.wlnotdelete\extrac
    >
    t\myserver_voppocWebApp_voppocWebApp\jarfiles\WEB-INF\lib\activation30425.jar;C:
    >
    \bea\weblogic81\server\bin\.\myserver\.wlnotdelete\extract\myserver_voppocWebApp
    >
    _voppocWebApp\jarfiles\WEB-INF\lib\commons-beanutils30426.jar;C:\bea\weblogic81\
    >
    server\bin\.\myserver\.wlnotdelete\extract\myserver_voppocWebApp_voppocWebApp\ja
    >
    rfiles\WEB-INF\lib\commons-collections30427.jar;C:\bea\weblogic81\server\bin\.\m
    >
    yserver\.wlnotdelete\extract\myserver_voppocWebApp_voppocWebApp\jarfiles\WEB-INF
    >
    \lib\commons-digester30428.jar;C:\bea\weblogic81\server\bin\.\myserver\.wlnotdel
    >
    ete\extract\myserver_voppocWebApp_voppocWebApp\jarfiles\WEB-INF\lib\commons-file
    >
    upload30429.jar;C:\bea\weblogic81\server\bin\.\myserver\.wlnotdelete\extract\mys
    >
    erver_voppocWebApp_voppocWebApp\jarfiles\WEB-INF\lib\commons-lang30430.jar;C:\be
    >
    a\weblogic81\server\bin\.\myserver\.wlnotdelete\extract\myserver_voppocWebApp_vo
    >
    ppocWebApp\jarfiles\WEB-INF\lib\commons-logging30431.jar;C:\bea\weblogic81\serve
    >
    r\bin\.\myserver\.wlnotdelete\extract\myserver_voppocWebApp_voppocWebApp\jarfile
    >
    s\WEB-INF\lib\commons-validator30432.jar;C:\bea\weblogic81\server\bin\.\myserver
    >
    \.wlnotdelete\extract\myserver_voppocWebApp_voppocWebApp\jarfiles\WEB-INF\lib\ja
    >
    karta-oro30433.jar;C:\bea\weblogic81\server\bin\.\myserver\.wlnotdelete\extract\
    >
    myserver_voppocWebApp_voppocWebApp\jarfiles\WEB-INF\lib\jdbc2_0-stdext30434.jar;
    >
    C:\bea\weblogic81\server\bin\.\myserver\.wlnotdelete\extract\myserver_voppocWebA
    >
    pp_voppocWebApp\jarfiles\WEB-INF\lib\mailapi30435.jar;C:\bea\weblogic81\server\b
    >
    in\.\myserver\.wlnotdelete\extract\myserver_voppocWebApp_voppocWebApp\jarfiles\W
    >
    EB-INF\lib\struts30436.jar;C:\bea\weblogic81\server\bin\.\myserver\.wlnotdelete\
    extract\myserver_voppocWebApp_voppocWebApp\jarfiles\_wl_cls_gen.jar.
    java.lang.NoClassDefFoundError:
    org/apache/commons/beanutils/Converter.
    atweblogic.servlet.internal.ServletStubImpl.prepareServlet(ServletStubI
    mpl.java:800)
    atweblogic.servlet.internal.WebAppServletContext.preloadServlet(WebAppS
    ervletContext.java:3236)
    atweblogic.servlet.internal.WebAppServletContext.preloadServlets(WebApp
    ServletContext.java:3181)

  • 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.

  • Unable to load Driver Class

    Hi There:
    When I try to connect to the Oracle 8i via this applet , I get the following run time error.
    Any help will be appreciated.
    I am using j2sdkee1.3.1, jdk1.3.1_02 and Oracle8.
    I also need your suggestion please. I have inserted some BLOB data in the Oracle table. I will need to display the BLOB data to the end users. I plan to convert this BLOB data into string format so that my applet can display the same. Further the string will have to be edited by the end users. I will then convert this modified string back to byte array so that I can insert the same as BLOB.
    Please let me know applet or the servlet? Which is better option.
    Users are reluctant to use any kind of WebServer because it will introduce the additional layer of complexity.
    Any help will be greatly appreciated.
    Thanks in advance.
    C:\>AppletViewer JdbcApplet.html
    Unable to load Driver Class
    java.lang.ClassNotFoundException: java.io.FileNotFoundException: C:\oracle\jdbc\
    driver\OracleDriver.class (The system cannot find the path specified)
    The following code snippet fails because it is unable to find the suitable driver.
    if (conn == null)
         //make a connection to the db
         try {     
              // conn = DriverManager.getConnection ("jdbc:oracle:thin:@"+"localhost:1521:sys", "system", "manager");
              // conn = DriverManager.getConnection ("jdbc:oracle:thin:system/manager@(description=(address_list= (address=(pro tocol=tcp)(host=localhost)(port=1521)))(source_route=yes)(connect_data=(sid=sys)))" );
              Class.forName("oracle.jdbc.driver.OracleDriver");
              String conurl="jdbc:oracle:thin:@localhost:1521:sys";
              Connection con=DriverManager.getConnection(conurl,"system","manager");
         } catch ( Exception e ) {
              System.out.println ("Unable to load Driver Class");
              e.printStackTrace (System.out);
              // add send email notification about this fact
              return false;
    } // End of if Statement from conn...

    Hi,
    maybe I'm too late but try the following :
    It seems that Your IDE doesn't check the path to Your classesxxx.zip file.
    Or Your classesxxx.zip file is corrupt.
    We had this error after downloading the classes12.zip for Oracle versions
    higher 8.1.6.
    The original size of this file is 1.888kB.
    Remember Windows FTP is downloading in ascii mode per default.
    Or Your classpath isn't correct
    ( the Exception souns like this )
    Regards

  • TS3694 "Itunes was unable to load data class information from Sync Services"

    This message appears every time I plug my phone into the computer and itunes pops up

    In the course of your troubleshooting to date, have you worked through the following document?
    iTunes for Windows: "Unable to load data class" or "Unable to load provider data" sync services alert

  • Loading an image into an Applet from a JAR file

    Hello everyone, hopefully a simple question for someone to help me with!
    Im trying to load some images into an applet, currently it uses the JApplet.getImage(url) method just before registering with a media tracker, which works but for the sake of efficiency I would prefer the images all to be contained in the jar file as oppossed to being loaded individually from the server.
    Say I have a class in a package eg, 'com.mydomain.myapplet.class.bin' and an images contained in the file structure 'com.mydomain.myapplet.images.img.gif' how do I load it (and waiting for it to be loaded before preceeding?
    I've seen lots of info of the web for this but much of it is very old (pre 2000) and im sure things have changed a little since then.
    Thanks for any help!

    I don't touch applets, so I can't help you there, but here's some Friday Fun: tracking image loading.
    import java.awt.*;
    import java.awt.image.*;
    import java.beans.*;
    import java.io.*;
    import java.net.*;
    import javax.imageio.*;
    import javax.imageio.event.*;
    import javax.imageio.stream.*;
    import javax.swing.*;
    public class ImageLoader extends SwingWorker<BufferedImage, Void> {
        private URL url;
        private JLabel target;
        private IIOReadProgressAdapter listener = new IIOReadProgressAdapter() {
            @Override public void imageProgress(ImageReader source, float percentageDone) {
                setProgress((int)percentageDone);
            @Override public void imageComplete(ImageReader source) {
                setProgress(100);
        public ImageLoader(URL url, JLabel target) {
            this.url = url;
            this.target = target;
        @Override protected BufferedImage doInBackground() throws IOException {
            ImageInputStream input = ImageIO.createImageInputStream(url.openStream());
            try {
                ImageReader reader = ImageIO.getImageReaders(input).next();
                reader.addIIOReadProgressListener(listener);
                reader.setInput(input);
                return reader.read(0);
            } finally {
                input.close();
        @Override protected void done() {
            try {
                target.setIcon(new ImageIcon(get()));
            } catch(Exception e) {
                JOptionPane.showMessageDialog(null, e, "Error", JOptionPane.ERROR_MESSAGE);
        //demo
        public static void main(String[] args) throws IOException {
            final URL url = new URL("http://blogs.sun.com/jag/resource/JagHeadshot.jpg");
            EventQueue.invokeLater(new Runnable(){
                public void run() {
                    launch(url);
        static void launch(URL url) {
            JLabel imageLabel = new JLabel();
            final JProgressBar progress = new JProgressBar();
            progress.setBorderPainted(true);
            progress.setStringPainted(true);
            JScrollPane scroller = new JScrollPane(imageLabel);
            scroller.setPreferredSize(new Dimension(800,600));
            JPanel content = new JPanel(new BorderLayout());
            content.add(scroller, BorderLayout.CENTER);
            content.add(progress, BorderLayout.SOUTH);
            JFrame f = new JFrame("ImageLoader");
            f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
            f.setContentPane(content);
            f.pack();
            f.setLocationRelativeTo(null);
            f.setVisible(true);
            ImageLoader loader = new ImageLoader(url, imageLabel);
            loader.addPropertyChangeListener( new PropertyChangeListener() {
                 public  void propertyChange(PropertyChangeEvent evt) {
                     if ("progress".equals(evt.getPropertyName())) {
                         progress.setValue((Integer)evt.getNewValue());
                         System.out.println(evt.getNewValue());
                     } else if ("state".equals(evt.getPropertyName())) {
                         if (SwingWorker.StateValue.DONE == evt.getNewValue()) {
                             progress.setIndeterminate(true);
            loader.execute();
    abstract class IIOReadProgressAdapter implements IIOReadProgressListener {
        @Override public void imageComplete(ImageReader source) {}
        @Override public void imageProgress(ImageReader source, float percentageDone) {}
        @Override public void imageStarted(ImageReader source, int imageIndex) {}
        @Override public void readAborted(ImageReader source) {}
        @Override public void sequenceComplete(ImageReader source) {}
        @Override public void sequenceStarted(ImageReader source, int minIndex) {}
        @Override public void thumbnailComplete(ImageReader source) {}
        @Override public void thumbnailProgress(ImageReader source, float percentageDone) {}
        @Override public void thumbnailStarted(ImageReader source, int imageIndex, int thumbnailIndex) {}
    }

  • How to load a .class file dynamically?

    Hello World ;)
    Does anyone know, how I can create an object of a class, that was compiled during the runtime?
    The facts:
    - The user puts a grammar in. Saved to file. ANTLR generates Scanner and Parser (Java Code .java)
    - I compile these file, so XYScanner.class and XYParser.class are available.
    - Now I want to create an object of XYScanner (the classnames are not fixed, but I know the filename). I tried to call the constructor of XYScanner (using reflection) but nothing works and now I am really despaired!
    Isn't there any way to instantiate the class in a way like
    Class c = Class.forName("/home/mark/XYScanner");
    c scan = new c("input.txt");
    The normal call would be:
    XYLexer lex = new XYLexer(new ANTLRFileStream("input.txt"));The problem using reflection is now that the parameter is a ANTLRFileStream, not only an Integer, as in this example shown:
    Class cls = Class.forName("method2");
    Class partypes[] = new Class[2];
    partypes[0] = Integer.TYPE;
    partypes[1] = Integer.TYPE;
    Method meth = cls.getMethod("add", partypes);
    method2 methobj = new method2();
    Object arglist[] = new Object[2];
    arglist[0] = new Integer(37);
    arglist[1] = new Integer(47);
    Object retobj = meth.invoke(methobj, arglist);
    Integer retval = (Integer)retobj;
    System.out.println(retval.intValue());Has anyone an idea? Thanks for each comment in advance!!!

    Dump all of your class files into a directory.
    Use the File class to list all files and iterateover
    the files.NastyNot really, when you are dynamically creating code, I would expect the output to be centralized, not spread out all over the place.
    >
    Use a URLClassloader to load the URL that isobtained
    for each file with file.toURI().toURL()(file.toURL()
    is depricated in 1.6)Wrong, the URL you give it must be that of the
    directory, not the class file.No, I did this quite recently, you can give it a specific class file to load.
    >
    Load all of the classes in this directory, thatway
    any anonymous classes are loaded as well.Anonymous classes automatically loaded when the real
    one isIt can't load it if it doesn't know where the code is. Since you haven't used a URL classloader to load once class file at a time, you would never encounter this. But if you loaded a class file that had an anonymous classfile it needed, would it know where to look for it?
    >
    From this point you should be able to just get a
    class with Class.forName(name)No. Class.forName uses the classloader of the class
    it's called in, which will be the system classloader.
    It won't find classes loaded by a URLClassLoader.got me there.

  • How to load a class , which isn't in the classpath environment variable.

    Hi, you folks.
    I have one problem. I want to load a class, which isn't in the classpath
    environment variable and I don't want to put into classpath. which method
    JVM can use to load it?
    Waitting for your sage advice.
    Regareds
    Hunter.Xiao

    You will have to write your own ClassLoader, or use something like URLClassLoader (I've never used this myself, but I've seen it mentioned elsewhere in this forum). Look here.

  • LoadClass    (error loading a class which extends other class  at run-time)

    Hey!
    I'm using the Reflection API
    I load a class called 'SubClass' which exists in a directory called 'subdir' at run-time from my program
    CustomClassLoader loader = new CustomClassLoader();
    Class classRef = loader.loadClass("SubClass");
    class CustomClassLoader extends ClassLoader. I have defined 'findClass(String className)' method in CustomClassLoader.
    This is what 'findClass(String className)' returns:
    defineClass (className,byteArray,0,byteArray.length);
    'byteArray' is of type byte[] and has the contents of subdir/SubClass.
    the problem:
    The program runs fine if SubClass does not extend any class.
    If however, SubClass extends another class, the program throws a NoClassDefFoundError. How is it conceptually different?
    Help appreciated in Advance..
    Thanks!

    Because i'm a newbie to the Reflection thing, i'm notI don't see reflection anywhere. All I see is class loading.
    sure what role does the superclass play when i'm
    trying to load the derived class and how to get away
    with the errorWell... hint: all the superclass's stuff is not copied into the subclass.
    I am quite sure it fails to load the superclass because of classpath issues.

Maybe you are looking for