开发者

Class not found error in AS/400

I am getting a error in AS/400 while running a RPG program...I am trying to call a java method from my RPG program. I have added tw .jar file called mail.jar and activation.jar in the classpath varible in the ADDENVVAR....But still the error is saying that Class not found...

                        Additional Message Information                         

Message ID . . . . . . :   RNQ0301       Severity . . . . . . . :   99         
Message type . . . . . :   Sender copy                                         
Date sent  . . . . . . :   12/31/10      Time sent  . . . . . . :   12:01:08   

Message . . . . :   Java exception received when calling Java method (C G D    
  F).                                                            开发者_StackOverflow中文版              
Cause . . . . . :   RPG procedure MAILERDEMO in program SAHOON1/MAILERDEMO     
  received Java exception "java.lang.NoClassDefFoundError:                     
  javax/mail/Authenticator" when calling method "sendSimpleMail" with          
  signature                                                                    
  "(Ljava.lang.String;Ljava.lang.String;Ljava.lang.String;Ljava.lang.String;)V 
  " in class "demo.Mailer".                                                    
Recovery  . . . :   Contact the person responsible for program maintenance to  
  determine the cause of the problem.                                          
Possible choices for replying to message . . . . . . . . . . . . . . . :       
                                                                       More... 
Reply  . . . :   F                                                              

Please help me out.......

Thanks in adv...


your project need mail-api.jar in your classpath for javax/mail/Authenticator


Always make sure, you set the classpath before the Java-VM is started for your job. This is very important, because changing it later doesn't change anything, and it is not possible to start a new VM in the same job (there is currently no way to stop a running VM cleanly and start a new one on the AS/400). This is extremely confusing in an interactive job when you run multiple programs.

One way to handle this, is to write a CL-program that sets the classpath and then runs the program. Just remember, it not set for a program, it's set for the entire job, so you should call it via submit job then.

The moment the first java program (or method via ILE) is called in the job, the VM is started with with the current settings. So always set the classpath var to contain all jars/classes you'll need in any of your programs for that job. Also set the desired version of the VM then.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜