部署EJB成功,启动服务器也可以了,运行客户端程序出错!
客户端
运行后:
D:\bea\jdk141_03\bin\javaw -classpath "D:\Documents and Settings\star\jbproject\demo1\classes;D:\bea\weblogic81\server\lib\weblogic_sp.jar;D:\bea\weblogic81\server\lib\weblogic.jar;D:\bea\weblogic81\server\lib\webservices.jar;D:\bea\jdk141_03\jre\lib\charsets.jar;D:\bea\jdk141_03\jre\lib\ext\dnsns.jar;D:\bea\jdk141_03\jre\lib\ext\ldapsec.jar;D:\bea\jdk141_03\jre\lib\ext\localedata.jar;D:\bea\jdk141_03\jre\lib\ext\sunjce_provider.jar;D:\bea\jdk141_03\jre\lib\im\indicim.jar;D:\bea\jdk141_03\jre\lib\jaws.jar;D:\bea\jdk141_03\jre\lib\jce.jar;D:\bea\jdk141_03\jre\lib\jsse.jar;D:\bea\jdk141_03\jre\lib\rt.jar;D:\bea\jdk141_03\jre\lib\sunrsasign.jar;D:\bea\jdk141_03\lib\dt.jar;D:\bea\jdk141_03\lib\tools.jar;D:\bea\jdk141_03\lib\htmlconverter.jar" demo1.aa
javax.naming.NoInitialContextException: Need to specify class name in environment or system property, or as an applet parameter, or in an application resource file: java.naming.factory.initial
at javax.naming.spi.NamingManager.getInitialContext(NamingManager.java:640)
at javax.naming.InitialContext.getDefaultInitCtx(InitialContext.java:243)
at javax.naming.InitialContext.getURLOrDefaultInitCtx(InitialContext.java:280)
at javax.naming.InitialContext.lookup(InitialContext.java:347)
at demo1.aa.main(aa.java:11)
Exception in thread "main"
客户端程序如下:
package demo1;
import javax.naming.Context;
import javax.naming.InitialContext;
import java.util.Properties;
public class aa{
//public String dd="";
public static void main(String[] args)throws Exception{
Properties props =System.getProperties();
Context ctx=new InitialContext(props);
Object obj=ctx.lookup("Enterprise1Home");
Enterprise1Home home=(Enterprise1Home)javax.rmi.PortableRemoteObject.narrow(obj,Enterprise1Home.class);
Enterprise1 hello=home.create();
// dd=hello.helloworld("a");
System.out.println(hello.helloworld("aa"));
hello.remove();
}
}