LOADJAVA hangs loading JAR

Hi everyone!
I am trying to load 2 JAR files into an Oracle 9.2.0.4 database (running on Windows2000 Server) using LOADJAVA. The JAR's are supplied by IBM for their WebSphere MQ (release 5.3) product. One of the two JAR files loads and resolves without a problem, using the following command:
loadjava -user mqseries/mqseries@lamp_pit12dv17 -fileout d:\newpumps\loadjava.log -grant lamp -genmissingjar d:\newpumps\connector-missing.jar -resolve connector.jar
LOADJAVA hangs, however, when attempting to load the other JAR. Here is the command I'm using:
loadjava -user mqseries/mqseries@lamp_pit12dv17 -fileout d:\newpumps\loadjava.log -grant lamp -genmissingjar d:\newpumps\com-missing.jar -resolve -force com.ibm.mq.jar
The second LOADJAVA invocation is the same as the first, except for the argument to "-genmissingjar", the addition of "-force", and the target jar file. Running LOADJAVA without the "-force" switch yields the same result: a hung session.
If I add the "-verbose" option, I get the following output:
arguments: '-user' 'mqseries/mqseries@lamp_pit12dv17' '-fileout' 'd:\newpumps\loadjava.log' '-genmissingjar' 'd:\newpumps\com-missing.jar' '-resolve' '-force' '-verbose' 'com.ibm.mq.jar'
creating : resource META-INF/MANIFEST.MF
loading : resource META-INF/MANIFEST.MF
genmissing: com/ibm/mq/BatchMatchingCriteria
creating : class com/ibm/mq/BatchMatchingCriteria
loading : class com/ibm/mq/BatchMatchingCriteria
If I use OEM to examine the suspended LOADJAVA session, I find it is attempting to execute 'alter java class "com/ibm/mq/BatchMatchingCriteria" compile". This class happens to be the first class in alpabetical order in the JAR.
I've also tried running LOADJAVA without the "-resolve" switch. When I do, both JAR files load into the database; however, all their classes are marked invalid. Attempting to compile any class in the com.ibm.mq.jar file also results in a suspended session.
I'd greatly appreciate any suggestions for getting past this problem. Is there something about the Java environment in my 9i database that is missing? What would cause LOADJAVA to hang?
David Jenkins
[email protected]

Does Java otherwise work? Are the system Java classes valid? Try running:
select count(*) from all_objects where OBJECT_TYPE like 'JAVA CLASS';
this should be in the thousands
select count(*) from all_objects where OBJECT_TYPE like 'JAVA CLASS' AND STATUS like 'INVALID';
I think this should be zero, or near-zero.

Similar Messages

  • Loadjava error - loading JAR file

    Hi,
    I am trying to load a JAR file into the DB and am getting these errors:
    $ loadjava -force -user user/pass javaTelnet.jar
    Error while creating class javaTelnet/ScriptHandler
        ORA-29537: class or resource cannot be created or dropped directly
    Error while creating class javaTelnet/TelnetClient$ReaderThread
        ORA-29537: class or resource cannot be created or dropped directly
    Error while creating class javaTelnet/TelnetClient
        ORA-29537: class or resource cannot be created or dropped directly
    Error while creating class javaTelnet/TelnetWrapper
        ORA-29537: class or resource cannot be created or dropped directly
    Error while creating class javaTelnet/TelnetProtocolHandler
        ORA-29537: class or resource cannot be created or dropped directly
    The following operations failed
        class javaTelnet/ScriptHandler: creation
        class javaTelnet/TelnetClient$ReaderThread: creation
        class javaTelnet/TelnetClient: creation
        class javaTelnet/TelnetWrapper: creation
        class javaTelnet/TelnetProtocolHandler: creation
    exiting  : Failures occurred during processing
    These are the only other Java class I have in the DB.
    SQL> select dbms_java.longname(object_name),status
      2  from user_objects
      3  where object_type='JAVA CLASS'
      4  /
    DBMS_JAVA.LONGNAME(OBJECT_NAME)
    STATUS
    PBoot
    VALIDThe JAR contains all class files within a package named javaTelnet.
    I am able to execute the JAR successfully from command line.
    Thanks

    Hi,
    I am not able to load a simple java source/class(either one, not both) file into the DB.
    $ dropjava -user user/pass -v A.java
    dropping: source A
    $ loadjava -user user/[email protected] -v -resolve A.java
    arguments: '-user' 'user/[email protected]' '-v' '-resolve' 'A.java'
    creating : source A
    loading  : source A
    creating : A
    resolving: source A
    $
    SQL> select dbms_java.longname(object_name),status
      2  from user_objects
      3  where object_type like 'JAVA %'
      4  /
    DBMS_JAVA.LONGNAME(OBJECT_NAME)
    STATUS
    PBoot
    VALIDAny guess how I may be able to resolve this issue?.
    Any trace files about loadjava written anywhere ?
    Thanks

  • Loadjava to load jar file.

    hi all,
    i created a jar file 'hello.jar' with the contents as 'hello/HelloName.class'
    here, hello is the package and HelloName.class is a Java Class.
    the jar i created with un-compression mode. so the Class file size is same in jar file and out side of jar.
    i tried to load the jar using, loadjava, here is the syntax.
    bash-3.00$ loadjava -u user/password -v /export/home/oracle/javaSrc/hello.jar
    arguments: '-u' 'spboardv2/***' '-v' '/export/home/oracle/javaSrc/hello.jar'
    creating : class hello/HelloName
    loading : class hello/HelloName
    Classes Loaded: 1
    Resources Loaded: 0
    Sources Loaded: 0
    Published Interfaces: 0
    Classes generated: 0
    Classes skipped: 0
    Synonyms Created: 0
    Errors: 0
    it seems no errors.
    when i checked in USER_OBJECTS table,
    i found the record 'hello/HelloName' as OBJECT_NAME but the STATUS is 'INVALID'.
    Please help me how to get this.
    thanks in advance.
    regards
    pavan.

    Hi,
    got the solution for this.
    in loadjava options, there is an option '-r' or '-resolve'.
    if we used this option for loading .java file, the source will get compiled and Class file will be resolved and stored in Oracle.
    if we used this option for .class file or for .jar file, the class file will be resolved and stored in Oracle.
    loadjava -u scott/tiger -r path/Hello.class
    loadjava -u scott/tiger -r path/hello.jar
    Here, resolving means, it will check each and Class file(s), for all imports. If all other Classes exists in CLASSPATH, it will load the class and the STATUS is VALID. if it failed to load any imports, the status is INVALID and means, need to set CLASSPATH.
    now, i'm struggling how to set CLASSPATH for loadjava.
    regards
    pavan.

  • ORA-01031- Insufficient Privilleges coming while loading .jar

    Hi,
    I'm trying to execute a java class from 8i.
    This class has got 3 dependency jar. I used loadjava to load the class and then i tried loading the dependency classes(.jar) as the same user using loadjava. I did the following at command prompt:
    loadjava -resolve -resolver "((* online1)(* SYS)(* PUBLIC))" -user online1/online1@orcl mail.jar
    It gave me error(s) like the following:
    Error while creating class javax/mail/MethodNotSupportedException
    ORA-01031: insufficient privileges
    I know its something to do with privilleges. I tried grant_permission but it was giving some error.
    Then i tried to load the same to SYS it loaded without giving error but the status of all classes where invalid.
    What shall i do to execute this class from 8i in the same user (online1) and how can i load all the dependencies which is req. to load my class.
    Can anybody help me out here.
    Thanx
    Arun
    null

    Hi Bos,
    thanks for your repply,
    In the Topology, the target server ORACLE_CSA created with connection user : NGPCSA,
    A physical schema under this server created with schema :NGPCSA and Work schema :WORKSCH1,
    to WORKSCH1 schema i have given all privileges & even DBA role also given.
    the ODI generated drop work table code, i am able to execute in the WORKSCH1 schema successfully.Create work table also i am able do in the WORSCH1 using pl/sql developer.
    Please help me,
    Kumbar

  • How to load jar file in oracle 9i???

    Hi Friends,
    Can you help me, how to load jar file oracle 9i? I have to tried to load in 10g using loadjava command but it's not working in oracle 9i because the loadjava batch file itself is not there in oralce 9i.
    Is there any other way then pls let me know.
    - Hiren Modi

    Hi,
    I have oracle version : Release 2 (9.2.0.1.0) for Windows. I have tried to execute the loadjava command from SQL prompt but its giving as below.
    H:\>loadjava
    The system cannot find the path specified.
    Do you know why its giving error like this. I have checked in dir : C:\oracle\ora92\bin but loadjava executable file is not there in it.
    - Hiren Modi

  • Load jar file into Oracle db 10.1.0.2.0.

    Hi,
    I am trying to create a Java Stored procedure that is dependent on some other classes. The java source doesn't compile since it cannot find the imported libs.
    How can I load jar files into the database so I can get my java source to compile?
    I have heard of dbms_java.loadjava procedure, but not very clear on how to use it.
    Please let me know how I can load the jar files in to the db.
    Thanks,
    -- DR.

    http://oraclesvca2.oracle.com/docs/cd/B12037_01/java.101/b12021/dbms_jav.htm

  • Urgent: Does dbms_java package is required  to load jar file into database?

    Hi, It's a urgent request. I am trying to install jar file that was created by JDeveloper into database using loadjava. But it is giving so many errors.
    Do we need to install dbms_java package in order to load jar files into the database? Thanks.

    Thanks for your reply Kamal.
    I am trying to load these jar files into Oracle 9.2.0.3.20 database.
    Could you please give me the list of the steps to enable java within the database? Thanks.

  • How to load jar file using SQL Developer

    Dear All,
    I need urgent help to load mytest.jar to the database using SQL Developer. I am able to load individual java classes to the database using SQL developers, but i could not load JAR files. Please help me any one know how to do this using SQL Developer.
    Thanks and Regards
    John p

    I don't think that's possible, so load it through the OS with the loadjava utility.
    Have fun,
    K.

  • Loading jar files at execution time via URLClassLoader

    Hello�All,
    I'm�making�a�Java�SQL�Client.�I�have�practicaly�all�basic�work�done,�now�I'm�trying�to�improve�it.
    One�thing�I�want�it�to�do�is�to�allow�the�user�to�specify�new�drivers�and�to�use�them�to�make�new�connections.�To�do�this�I�have�this�class:�
    public�class�DriverFinder�extends�URLClassLoader{
    ����private�JarFile�jarFile�=�null;
    ����
    ����private�Vector�drivers�=�new�Vector();
    ����
    ����public�DriverFinder(String�jarName)�throws�Exception{
    ��������super(new�URL[]{�new�URL("jar",�"",�"file:"�+�new�File(jarName).getAbsolutePath()�+"!/")�},�ClassLoader.getSystemClassLoader());
    ��������jarFile�=�new�JarFile(new�File(jarName));
    ��������
    ��������/*
    ��������System.out.println("-->"�+�System.getProperty("java.class.path"));
    ��������System.setProperty("java.class.path",�System.getProperty("java.class.path")+File.pathSeparator+jarName);
    ��������System.out.println("-->"�+�System.getProperty("java.class.path"));
    ��������*/
    ��������
    ��������Enumeration�enumeration�=�jarFile.entries();
    ��������while(enumeration.hasMoreElements()){
    ������������String�className�=�((ZipEntry)enumeration.nextElement()).getName();
    ������������if(className.endsWith(".class")){
    ����������������className�=�className.substring(0,�className.length()-6);
    ����������������if(className.indexOf("Driver")!=-1)System.out.println(className);
    ����������������
    ����������������try{
    ��������������������Class�classe�=�loadClass(className,�true);
    ��������������������Class[]�interfaces�=�classe.getInterfaces();
    ��������������������for(int�i=0;�i<interfaces.length;�i++){
    ������������������������if(interfaces.getName().equals("java.sql.Driver")){
    ����������������������������drivers.add(classe);
    ������������������������}
    ��������������������}
    ��������������������Class�superclasse�=�classe.getSuperclass();
    ��������������������interfaces�=�superclasse.getInterfaces();
    ��������������������for(int�i=0;�i<interfaces.length;�i++){
    ������������������������if(interfaces[i].getName().equals("java.sql.Driver")){
    ����������������������������drivers.add(classe);
    ������������������������}
    ��������������������}
    ����������������}catch(NoClassDefFoundError�e){
    ����������������}catch(Exception�e){}
    ������������}
    ��������}
    ����}
    ����
    ����public�Enumeration�getDrivers(){
    ��������return�drivers.elements();
    ����}
    ����
    ����public�String�getJarFileName(){
    ��������return�jarFile.getName();
    ����}
    ����
    ����public�static�void�main(String[]�args)�throws�Exception{
    ��������DriverFinder�df�=�new�DriverFinder("D:/Classes/db2java.zip");
    ��������System.out.println("jar:�"�+�df.getJarFileName());
    ��������Enumeration�enumeration�=�df.getDrivers();
    ��������while(enumeration.hasMoreElements()){
    ������������Class�classe�=�(Class)enumeration.nextElement();
    ������������System.out.println(classe.getName());
    ��������}
    ����}
    It�loads�a�jar�and�searches�it�looking�for�drivers�(classes�implementing�directly�or�indirectly�interface�java.sql.Driver)�At�the�end�of�the�execution�I�have�found�all�drivers�in�the�jar�file.
    The�main�application�loads�jar�files�from�an�XML�file�and�instantiates�one�DriverFinder�for�each�jar�file.�The�problem�is�at�execution�time,�it�finds�the�drivers�and�i�think�loads�it�by�issuing�this�statement�(Class�classe�=�loadClass(className,�true);),�but�what�i�think�is�not�what�is�happening...�the�execution�of�my�code�throws�this�exception
    java.lang.ClassNotFoundException:�com.ibm.as400.access.AS400JDBCDriver
    ��������at�java.net.URLClassLoader$1.run(URLClassLoader.java:198)
    ��������at�java.security.AccessController.doPrivileged(Native�Method)
    ��������at�java.net.URLClassLoader.findClass(URLClassLoader.java:186)
    ��������at�java.lang.ClassLoader.loadClass(ClassLoader.java:299)
    ��������at�sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:265)
    ��������at�java.lang.ClassLoader.loadClass(ClassLoader.java:255)
    ��������at�java.lang.ClassLoader.loadClassInternal(ClassLoader.java:315)
    ��������at�java.lang.Class.forName0(Native�Method)
    ��������at�java.lang.Class.forName(Class.java:140)
    ��������at�com.marmots.database.DB.<init>(DB.java:44)
    ��������at�com.marmots.dbreplicator.DBReplicatorConfigHelper.carregaConfiguracio(DBReplicatorConfigHelper.java:296)
    ��������at�com.marmots.dbreplicator.DBReplicatorConfigHelper.<init>(DBReplicatorConfigHelper.java:74)
    ��������at�com.marmots.dbreplicator.DBReplicatorAdmin.<init>(DBReplicatorAdmin.java:115)
    ��������at�com.marmots.dbreplicator.DBReplicatorAdmin.main(DBReplicatorAdmin.java:93)
    Driver�file�is�not�in�the�classpath�!!!�
    I�have�tried�also�(as�you�can�see�in�comented�lines)�to�update�System�property�java.class.path�by�adding�the�path�to�the�jar�but�neither...
    I'm�sure�I'm�making�a/some�mistake/s...�can�you�help�me?
    Thanks�in�advice,
    (if�there�is�some�incorrect�word�or�expression�excuse�me)

    Sorry i have tried to format the code, but it has changed   to �... sorry read this one...
    Hello All,
    I'm making a Java SQL Client. I have practicaly all basic work done, now I'm trying to improve it.
    One thing I want it to do is to allow the user to specify new drivers and to use them to make new connections. To do this I have this class:
    public class DriverFinder extends URLClassLoader{
    private JarFile jarFile = null;
    private Vector drivers = new Vector();
    public DriverFinder(String jarName) throws Exception{
    super(new URL[]{ new URL("jar", "", "file:" + new File(jarName).getAbsolutePath() +"!/") }, ClassLoader.getSystemClassLoader());
    jarFile = new JarFile(new File(jarName));
    System.out.println("-->" + System.getProperty("java.class.path"));
    System.setProperty("java.class.path", System.getProperty("java.class.path")+File.pathSeparator+jarName);
    System.out.println("-->" + System.getProperty("java.class.path"));
    Enumeration enumeration = jarFile.entries();
    while(enumeration.hasMoreElements()){
    String className = ((ZipEntry)enumeration.nextElement()).getName();
    if(className.endsWith(".class")){
    className = className.substring(0, className.length()-6);
    if(className.indexOf("Driver")!=-1)System.out.println(className);
    try{
    Class classe = loadClass(className, true);
    Class[] interfaces = classe.getInterfaces();
    for(int i=0; i<interfaces.length; i++){
    if(interfaces.getName().equals("java.sql.Driver")){
    drivers.add(classe);
    Class superclasse = classe.getSuperclass();
    interfaces = superclasse.getInterfaces();
    for(int i=0; i<interfaces.length; i++){
    if(interfaces[i].getName().equals("java.sql.Driver")){
    drivers.add(classe);
    }catch(NoClassDefFoundError e){
    }catch(Exception e){}
    public Enumeration getDrivers(){
    return drivers.elements();
    public String getJarFileName(){
    return jarFile.getName();
    public static void main(String[] args) throws Exception{
    DriverFinder df = new DriverFinder("D:/Classes/db2java.zip");
    System.out.println("jar: " + df.getJarFileName());
    Enumeration enumeration = df.getDrivers();
    while(enumeration.hasMoreElements()){
    Class classe = (Class)enumeration.nextElement();
    System.out.println(classe.getName());
    It loads a jar and searches it looking for drivers (classes implementing directly or indirectly interface java.sql.Driver) At the end of the execution I have found all drivers in the jar file.
    The main application loads jar files from an XML file and instantiates one DriverFinder for each jar file. The problem is at execution time, it finds the drivers and i think loads it by issuing this statement (Class classe = loadClass(className, true);), but what i think is not what is happening... the execution of my code throws this exception
    java.lang.ClassNotFoundException: com.ibm.as400.access.AS400JDBCDriver
    at java.net.URLClassLoader$1.run(URLClassLoader.java:198)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.net.URLClassLoader.findClass(URLClassLoader.java:186)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:299)
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:265)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:255)
    at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:315)
    at java.lang.Class.forName0(Native Method)
    at java.lang.Class.forName(Class.java:140)
    at com.marmots.database.DB.<init>(DB.java:44)
    at com.marmots.dbreplicator.DBReplicatorConfigHelper.carregaConfiguracio(DBReplicatorConfigHelper.java:296)
    at com.marmots.dbreplicator.DBReplicatorConfigHelper.<init>(DBReplicatorConfigHelper.java:74)
    at com.marmots.dbreplicator.DBReplicatorAdmin.<init>(DBReplicatorAdmin.java:115)
    at com.marmots.dbreplicator.DBReplicatorAdmin.main(DBReplicatorAdmin.java:93)
    Driver file is not in the classpath !!!
    I have tried also (as you can see in comented lines) to update System property java.class.path by adding the path to the jar but neither...
    I'm sure I'm making a/some mistake/s... can you help me?
    Thanks in advice,
    (if there is some incorrect word or expression excuse me)

  • Help needed to loadjava apache poi jars into oracle database.

    Help needed to loadjava apache poi jars into oracle database. Many classes left unresolved. (Poi 3.7, database 11.1.0.7). Please share your experience!

    Hi,
    The first 3 steps are just perfect.
    But with
    loadjava.bat -user=user/pw@connstr -force -resolve geronimo-stax-api_1.0_spec-1.0.jar
    the results are rather unexpected. Here is a part of the log file:
    arguments: '-user' 'ccc/***@bisera7-db.dev.srv' '-fileout' 'c:\temp\load4.log' '-force' '-resolve' '-jarsasdbobjects' '-v' 'geronimo-stax-api_1.0_spec-1.0.jar'
    The following operations failed
    resource META-INF/MANIFEST.MF: creation (createFailed)
    class javax/xml/stream/EventFilter: resolution
    class javax/xml/stream/events/Attribute: resolution
    class javax/xml/stream/events/Characters: resolution
    class javax/xml/stream/events/Comment: resolution
    class javax/xml/stream/events/DTD: resolution
    class javax/xml/stream/events/EndDocument: resolution
    class javax/xml/stream/events/EndElement: resolution
    class javax/xml/stream/events/EntityDeclaration: resolution
    class javax/xml/stream/events/EntityReference: resolution
    class javax/xml/stream/events/Namespace: resolution
    class javax/xml/stream/events/NotationDeclaration: resolution
    class javax/xml/stream/events/ProcessingInstruction: resolution
    class javax/xml/stream/events/StartDocument: resolution
    class javax/xml/stream/events/StartElement: resolution
    class javax/xml/stream/events/XMLEvent: resolution
    class javax/xml/stream/StreamFilter: resolution
    class javax/xml/stream/util/EventReaderDelegate: resolution
    class javax/xml/stream/util/StreamReaderDelegate: resolution
    class javax/xml/stream/util/XMLEventAllocator: resolution
    class javax/xml/stream/util/XMLEventConsumer: resolution
    class javax/xml/stream/XMLEventFactory: resolution
    class javax/xml/stream/XMLEventReader: resolution
    class javax/xml/stream/XMLEventWriter: resolution
    class javax/xml/stream/XMLInputFactory: resolution
    class javax/xml/stream/XMLOutputFactory: resolution
    class javax/xml/stream/XMLStreamReader: resolution
    resource META-INF/LICENSE.txt: creation (createFailed)
    resource META-INF/NOTICE.txt: creation (createFailed)
    It seems to me that the root of the problem is the error:
    ORA-29521: referenced name javax/xml/namespace/QName could not be found
    This class exists in the SYS schema though and is valid. If SYS should be included as a resolver? How to solve this problem?

  • How to dynamically load jar files - limiting scope to that thread

    Dynamically loading jar files has been discussed a lot. I have read a quite a few posts, articles, and demo code for doing just that. However, I have yet to find a solution to my problem. Most people modify their system class loader and are happy. I have done that and was happy for a time. Occasionally, you will see reference to an application server or tomcat or some other large project that have successfully been able to load and unload jar files, allow for dynamic deployment of code, etc. However, I have not been able to achieve similar success; And my problem is much less complicated.
    I have an application that executes a thread to send a given file/message to a standard JMS Server Queue. Depending on the parameters selected by the user, this thread may need to communicate with one of a number of JMS Servers, ie. JBoss, WebLogic, EAServer, Glassfish, etc. All of which can be done with the same code, but each needs to load their own flavor of JMS Client Jar files. In this instance, spawning a separate JVM for each communication would work from a classloader perspective. However, I need to keep it in the family and run under the same JVM, albeit each JMS Server Connection will be created and maintained in separate Threads.
    I am close, I am doing the following...
    1. Creating a new URLClassLoader in the run() method of each thread.
    2. Set this threads contextClassLoader to the new URLClassLoader.
    3. Load the javax.jms.JMSException class with the URLClassLoader.loadClass() method.
    4. Create an initialContext object within this thread.
    Note: I read that the initialContext and subsequent conext lookup calls would use the Thread�s
    contextClassLoader for finding/loading classes.
    5. Perform context.lookup calls for a connectionFactory and Queue name.
    6. Create JMS Connection, etc. Send Message.
    Most of this seems to work. However, I am still getting a NoClassDefFoundError exception for the javax.jms.JMSException class ( Note step #3 - tried to cure unsuccessfully).
    If I include one of the JMS Client jar files ( ie wljmsclient.jar for weblogic ) in the classpath then it works for all the different JMS Servers, but I do not have confidence that each of the providers implemented these classes that now resolve the same way. It may work for now, but, I believe I am just lucky.
    Can anyone shine some light on this for me and all the others who have wanted to dynamically load classes/jar files on a per Thread basis?

    Thanks to everyone - I got it working!
    First, BenSchulz' s dumpClassLoader() method helped me to visualize the classLoader hierarchy. I am still not completely sure I understand why my initial class was always found by the systemClassLoader, but knowning that - was the step I needed to find the solution.
    Second, kdgregory suggested that I use a "glue class". I thought that I already was using a "glue class" because I did not have any JMSClient specific classes exposed to the rest of the application. They were all handled by my QueueAdmin class. However...
    The real problem turned out to be that my two isolating classes (the parent "MessageSender", and the child "QueueAdmin") were contained within the same jar file that was included in the classpath. This meant that no matter what I did the classes were loaded by the systemClassLoader. Isolating them in classes was just the first step. I had to remove them from my jar file and create another jar file just for those JMSClient specific classes. Then this jar file was only included int custom classLoader that I created when I wanted to instantiate a JMSClient session.
    I had to create an interface in the primary jar file that could be loaded by the systemClassLoader to provide the stubs for the individual methods that I needed to call in the MessageSender/QueueAdmin Classes. These JMSClient specific classes had to implement the interface so as to provide a relationship between the systemClassLoader classes and the custom classLoader classes.
    Finally, when I loaded and instantiated the JMSClient specific classes with the custom classLoader I had to cast them to the interface class in order to make the method calls necessary to send the messages to the individual JMS Servers.
    psuedu code/concept ....
    Primary Jar File   -  Included in ClassPath                                                      
    Class<?> cls = ClassLoader.loadClass( "JMSClient.MessageSender" )
    JMSClientInterface jmsClient = (JMSClientInterface) cls.newInstance()                            
    jmsClient.sendMessage()                                                                      
    JMSClient Jar File  -  Loaded by Custom ClassLoader Only
    MessageSender impliments Primary.JMSClientInterface{
        sendMessage() {
            Class<?> cls=ClassLoader.loadClass( "JMSClient.QueueAdmin" )
            QueueAdmin queueAdmin=(QueueAdmin) cls.newInstance()
            queueAdmin.JMSClientSpecificMethod()
        }

  • How to load jar files from remote location

    Hi all,
    I am trying to load jar files from remote server, from a servlet which is running on OC4j.
    For doing this,First I am getting ClassLoader by using ClassLoader.getSystemClassLoader() and then type casting it to URLClassLoader.
    But by doing it I am getting ClassCastException,because oc4j returns oracle.classloader.PolicyClassLoader instead of java.net.ClassLoader.
    Appreciate if anyone can tell me how to load remote jar files using oracle.classloader.PolicyClassLoader .
    Thanks
    Harish

    Hi,
    I suppose you know about this, but just in case.
    I have used jnpl to load jar files from remote location.
    Rowan

  • Ive just learned that i can use loadjava to load jsp pages into the database.

    Ive just learned that i can use loadjava to load jsp pages into the database. How is that possible. How can someone go to my lets say, index.jsp page and actually see it if its inside the database? What authenticates it? Where would you set the parameters to tell http(apache) to look inside the db for the pages?
    Any ideas?

    Thanks for the reply. If I put the file on the database, does it have to be in a particular location? I've put it on the database server, launched sql*plus (as APPS) and ran the following:
    execute dbms_java.loadjava('-v', 'ZebraGetPrinterFromXML.class');
    PL/SQL procedure successfully completed.Then when I try to run a process that uses this I get this:
    ORA-29540: class ZebraGetPrinterFromXML does not exist

  • Load jar file

    Hi
    I use EBS r12, i try to load jar file, i put it in $OA_JAVA/oracle/apps/fnd/jar and run adautocfg.sh, but the application not see the jar file?
    Is there any solution for that?
    Thanks

    Read from application developers guide for ebs developers about how to register jar files in oracle ebs. Also read these,
    Java and JAR in Oracle Apps
    http://www.exforsys.com/tutorials/oracle-apps/registering-new-forms-in-oracle-apps-11i.html
    http://www.aboutoracleapps.com/2009/01/how-to-register-shell-script-as.html

  • Load jar in ClassLoad

    I need load jar in ClassLoad, I did write code, but he not work. what is the problem?
    package jar;
    import java.io.File;
    import java.io.IOException;
    import java.lang.reflect.Method;
    import java.net.MalformedURLException;
    import java.net.URL;
    import java.net.URLClassLoader;
    import java.util.Enumeration;
    import java.util.jar.JarFile;
    import java.util.zip.ZipEntry;
    public class Jar1 {
        public static void main(String[] args) {
            try {
                String filePath = "/home/pitbull/temp/plugins/script.jar";
                printJar(filePath);
                load(filePath);
            } catch (Exception e) {
                e.printStackTrace();
        public static void printJar(String path) throws IOException {
            JarFile jarFile = new JarFile(path);
            Enumeration entries = jarFile.entries();
            while (entries.hasMoreElements()) {
                ZipEntry entry = (ZipEntry) entries.nextElement();
                System.out.println(entry.getName());
            jarFile.close();
        public static void load(String filePath) throws MalformedURLException, ClassNotFoundException {
            filePath = "jar:file://" + filePath + "!/";
            URL url = new File(filePath).toURI().toURL();
            URLClassLoader clazzLoader = new URLClassLoader(new URL[]{url});
            Class clazz = clazzLoader.loadClass("scripts.task_custom_field_value.MessageFormat");
            for (Method method : clazz.getMethods()) {
                System.out.println(method.getName());
    }This jar "/home/pitbull/temp/plugins/script.jar" not classpath.

    Get exception. But class scripts.task_custom_field_value.MessageFormat.class is exactly have in jar.
    java.lang.ClassNotFoundException: scripts.task_custom_field_value.MessageFormat
         at java.net.URLClassLoader$1.run(URLClassLoader.java:202)
         at java.security.AccessController.doPrivileged(Native Method)
         at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
         at java.lang.ClassLoader.loadClass(ClassLoader.java:307)
         at java.lang.ClassLoader.loadClass(ClassLoader.java:248)
         at jar.Jar1.load(Jar1.java:38)
         at jar.Jar1.main(Jar1.java:18)
         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
         at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
         at java.lang.reflect.Method.invoke(Method.java:597)
         at com.intellij.rt.execution.application.AppMain.main(AppMain.java:115)Edited by: P1tBull on Jul 27, 2010 2:17 AM

Maybe you are looking for

  • Is JSF 1.2 buffering the response, or streaming it back to the browser?

    Hi, I recently implemented a simple custom component which "streams" back a file to the browser (doing some processing on it). Using myfaces i get out of memory errors when processing large files, I later learned that the myfaces implementation actua

  • Re: Online Number can't forwarding - Please help

    mon3chung wrote:  and purchase to go Number. Hello, You are confusing a SkypeToGo # with a Skype Online #. You don't have an STG #. I'm moving your post to the correct board and editing both the post and the title. TIME ZONE - US EASTERN. LOCATION -

  • App Store Developer Updates Feature?

    I was wondering if there is a way to get automatic email notifications from the iTunes App Store on a regular basis that would let me know when a specific app developer has released a new app(s). For example, maybe if there was a feature on the App S

  • Consignment Fill Up Control

    Dear Experts, We have a requirement were we need to control or restrict the value of sales or stock that is delivered to a customer via consignment fill up. Are there any controls in for consignment fill up either during creation of sales order or de

  • PostGre SQL Query In JavaScript

    Is it possible to run the query in the javascript. I wil b passing an id from the jstl to a method which is implemented in javascript .using that id can i access the values from the database? plz send me some dummy code if possible Thanks ..