站内搜索: 请输入搜索关键词

当前页面: 开发资料首页J2EE 专题ejb的helloworld无法通过,请高手指点

ejb的helloworld无法通过,请高手指点

摘要: ejb的helloworld无法通过,请高手指点


我按照书上的将HelloWorld.jar部署到jboss成功了.(JBOSS版本为3.2)
但是我使用HelloClient.java调用的时候出现了问题,

HelloClient.java如下:

//*************************************************************
import javax.naming.Context;
import javax.naming.InitialContext;
import java.util.Properties;
import examples.*;
public class HelloClient
{
public static void main(String[] args) throws Exception
{
Properties props = System.getProperties();

props.put(Context.INITIAL_CONTEXT_FACTORY, "org.jnp.interfaces.NamingContextFactory");
props.put(Context.URL_PKG_PREFIXES, "org.jboss.naming:org.jnp.interfaces");
props.put(Context.PROVIDER_URL, "jnp://localhost:1099");
InitialContext ctx = new InitialContext(props);

Object obj = ctx.lookup("HelloHome");
HelloHome home = (HelloHome)javax.rmi.PortableRemoteObject.narrow(obj,HelloHome.class);
Hello hello = home.create();
System.out.println("hello.hello()");
hello.remove();
}
}
//***********************************************************

异常如下:

Exception in thread "main" javax.naming.NoInitialContextException: Cannot instan
tiate class: org.jnp.interfaces.NamingContextFactory [Root exception is java.lan
g.ClassNotFoundException: org.jnp.interfaces.NamingContextFactory]
at javax.naming.spi.NamingManager.getInitialContext(NamingManager.java:6
52)
at javax.naming.InitialContext.getDefaultInitCtx(InitialContext.java:243
)
at javax.naming.InitialContext.init(InitialContext.java:219)
at javax.naming.InitialContext.(InitialContext.java:195)
at HelloClient.main(HelloClient.java:15)
Caused by: java.lang.ClassNotFoundException: org.jnp.interfaces.NamingContextFac
tory
at java.net.URLClassLoader$1.run(URLClassLoader.java:199)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:187)
at java.lang.ClassLoader.loadClass(ClassLoader.java:289)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:274)
at java.lang.ClassLoader.loadClass(ClassLoader.java:235)
at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:302)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:219)
at com.sun.naming.internal.VersionHelper12.loadClass(VersionHelper12.jav
a:42)
at javax.naming.spi.NamingManager.getInitialContext(NamingManager.java:6
49)
... 4 more

不知道是不是JNDI要配置,如果要配置请问怎么配置???
另外我尝试在InitialContext ctx = new InitialContext(props);后面打印点东西,可是并没有成功.
可见没有得到上下文. 请问该怎么解决??请高手指教.




帮帮忙啊。


用JBuilder 或者 Eclipse 这些帮你提供服务


Exception in thread "main" javax.naming.NoInitialContextException: Cannot instan
tiate class: org.jnp.interfaces.NamingContextFactory [Root exception is java.lan
g.ClassNotFoundException: org.jnp.interfaces.NamingContextFactory

------------------------------------------------------------------------------
NoInitialContextException没有初始化context,原因是没有找到org.jnp.interfaces.NamingContextFactory,应该是缺少JAR文件吧.


那配置JBOSS要配置多少jar文件啊?


好久没写过EJB了,不记的了。反正就那么几个包,查一下.


没搞定


↑返回目录
前一篇: 求助项目编译成war包放入weblogic里出错找不到类文件
后一篇: 在J2EE系统中用什么报表?