Question please
I am running the SQLJ REPLACE_JAR command.
ends with rc=0
then run SQLJ REFRESH_CLASSES()
end with rc=0
now I need to run the replace_jar a second time.
issue:
if I logoff my user, and rerun the command - everything works ok with rc = 0
if I do not logoff and run the command again I get this:
I am not a java expert. I guess that I need to perfrom a command before I can run another replace_jar .
and it seems that logging off the user, is actually running this command (remember that after re-logon - the replace_jar works fine)
can someone suggest what I need to run before running the second replace_jar ? (without forcing me to logoff my user)
many thanks
I am running the SQLJ REPLACE_JAR command.
ends with rc=0
then run SQLJ REFRESH_CLASSES()
end with rc=0
now I need to run the replace_jar a second time.
issue:
if I logoff my user, and rerun the command - everything works ok with rc = 0
if I do not logoff and run the command again I get this:
Message ID . . . . . . : SQL4304 Severity . . . . . . . : 30
Message type . . . . . : Diagnostic
Date sent . . . . . . : 17/05/10 Time sent . . . . . . : 17:03:11
Message . . . . : Java stored procedure or user-defined function
SQLJ.sqlejReadJ, specific name SQLJ.sqlejReadJ could not load Java class
com.ibm.db2.jdbc.app.DB2Driver for reason code 3.
Cause . . . . . : The Java class given by the EXTERNAL NAME clause of a
CREATE PROCEDURE or CREATE FUNCTION statement could not be loaded. The
reason codes and their meanings follow:
1 -- The class was not found on the CLASSPATH.
2 -- The class did not implement the required interface
("com.ibm.db2.app.StoredProc" or "com.ibm.db2.app.UDF") or lacked the Java
"public" access flag.
3 -- The default constructor failed or was unavailable.
Recovery . . . : Ensure that the compiled ".class" file is installed in the
CLASSPATH, for example under "/QIBM/UserData/OS400/SQLLib/Function". Ensure
it implements the required Java interfaces and is "public".
Message type . . . . . : Diagnostic
Date sent . . . . . . : 17/05/10 Time sent . . . . . . : 17:03:11
Message . . . . : Java stored procedure or user-defined function
SQLJ.sqlejReadJ, specific name SQLJ.sqlejReadJ could not load Java class
com.ibm.db2.jdbc.app.DB2Driver for reason code 3.
Cause . . . . . : The Java class given by the EXTERNAL NAME clause of a
CREATE PROCEDURE or CREATE FUNCTION statement could not be loaded. The
reason codes and their meanings follow:
1 -- The class was not found on the CLASSPATH.
2 -- The class did not implement the required interface
("com.ibm.db2.app.StoredProc" or "com.ibm.db2.app.UDF") or lacked the Java
"public" access flag.
3 -- The default constructor failed or was unavailable.
Recovery . . . : Ensure that the compiled ".class" file is installed in the
CLASSPATH, for example under "/QIBM/UserData/OS400/SQLLib/Function". Ensure
it implements the required Java interfaces and is "public".
I am not a java expert. I guess that I need to perfrom a command before I can run another replace_jar .
and it seems that logging off the user, is actually running this command (remember that after re-logon - the replace_jar works fine)
can someone suggest what I need to run before running the second replace_jar ? (without forcing me to logoff my user)
many thanks
Comment