EJB问题!!!是高手就来!!!
今天刚接触EJB,编写了一个客户端如下(在EJB_01_Client项目里):
1、public class FirstEjbClient {
public static void main(String[] args) throws Exception{
InitialContext context = new InitialContext();
FirstEjb fe = (FirstEjb)context.lookup("FirstEjbBean/remote");
String s = fe.saySomething("moon");
System.out.println(s);
}
}
运行时报错:
Exception in thread "main" 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(Unknown Source)
at javax.naming.InitialContext.getDefaultInitCtx(Unknown Source)
at javax.naming.InitialContext.getURLOrDefaultInitCtx(Unknown Source)
at javax.naming.InitialContext.lookup(Unknown Source)
at com.moon.ejb.FirstEjbClient.main(FirstEjbClient.java:9)
2、说明:
已经将项目部署到了JBOSS服务器上,版本是4.2.2.GA,部署没有问题,我已经引进了jboss-4.2.2.GA\client下所有的jar包,而且引进了EJB项目(ejb_01)下EJB接口(FirstEjb)的JAR包。
3、问题:
(1)请问报错是什么意思?怎么打印不出结果呢?
JNDI没有初始化吗,我已经在EJB_01_Client的src目录下创建了jndi.properties文件:
java.naming.factory.initial=org.jnp.interfaces.NamingContextFactory
java.naming.factory.url.pkgs=org.jboss.naming:org.jnp.interfaces
java.naming.provider.url=localhost
(2)JBOSS需要配置环境变量吗?(我今天第一次接触JBOSS)