请问一个关于在weblogic中调用EJB的问题
xgy_p 2003-07-09 10:08:45 已经在部署好一个名叫ejb2的EJB,文件是ejb2.jar,现在写一个client来调用,但是无论如何都通不过编译,因为找不到home,remote的定义。但我已经调好了classpath为weblogic.jar,是不是编译的时候还需要一个客户端的jar,这个客户端的jar去哪里找?是不是就用ejb2.jar?这个问题困扰了我很久,盼望高手能给我一个明确的答复,能解决者必一百分相送,附我调用的程序如下:
// HelloWorldClient.java
import java.io.*;
import javax.naming.*;
import javax.rmi.PortableRemoteObject;
import java.util.Properties;
public class HelloWorldClient
{
private static Context getInitialContext() throws Exception
{
String url = "t3://localhost:7001";
String user = null;
String password = null;
Properties properties = null;
try
{
properties = new Properties();
properties.put(Context.INITIAL_CONTEXT_FACTORY, "weblogic.jndi.WLInitialContextFactory");
properties.put(Context.PROVIDER_URL, url);
if (user != null)
{
properties.put(Context.SECURITY_PRINCIPAL, user);
properties.put(Context.SECURITY_CREDENTIALS, password == null ? "" : password);
}
return new InitialContext(properties);
}
catch(Exception e)
{
throw e;
}
}
public static void main(String[] args)
throws Exception
{
Context ctx = getInitialContext();
Object obj=ctx.lookup("ejb2");
HelloHome Home=(HelloHome)javax.rmi.PortableRemoteObject.narrow(obj,HelloHome.class);
Hello hello=Home.create();
System.out.println(hello.hello());
}
}