关于EJB的调用(在线等,急啊!!!!)

gongqh21 2007-07-16 10:06:46
在普通java类中调用ejb时,出现下面异常:

Exception in thread "main" java.lang.reflect.UndeclaredThrowableException
at $Proxy0.hello(Unknown Source)
at Client.main(Client.java:20)
Caused by: java.lang.Exception: Can not make remoting client invocation due to not being connected to server.
at org.jboss.remoting.Client.invoke(Client.java:1555)
at org.jboss.remoting.Client.invoke(Client.java:530)
at org.jboss.aspects.remoting.InvokeRemoteInterceptor.invoke(InvokeRemoteInterceptor.java:41)
at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:88)
at org.jboss.aspects.tx.ClientTxPropagationInterceptor.invoke(ClientTxPropagationInterceptor.java:46)
at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:88)
at org.jboss.aspects.security.SecurityClientInterceptor.invoke(SecurityClientInterceptor.java:40)
at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:88)
at org.jboss.ejb3.remoting.IsLocalInterceptor.invoke(IsLocalInterceptor.java:72)
at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:88)
at org.jboss.ejb3.stateless.StatelessRemoteProxy.invoke(StatelessRemoteProxy.java:103)
... 2 more

》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》
客户短测试代码:
public class Client {
public static void main(String args[]) {
Properties props = new Properties();
props.setProperty("java.naming.factory.initial","org.jnp.interfaces.NamingContextFactory");
props.setProperty("java.naming.provider.url", "localhost:1099");
props.setProperty("java.naming.factory.url.pkgs","org.jboss.naming:org.jnp.interfaces");
try {
InitialContext ctx = new InitialContext(props);
Hello helloworld = (Hello) ctx.lookup("HelloBean/remote");
System.out.println(helloworld.hello());
} catch (NamingException e) {
e.printStackTrace();
}
}
}
...全文
275 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
felix_2007 2007-07-29
  • 打赏
  • 举报
回复
Properties props = new Properties();
//设置属性,用来连接jndi服务器,得到对象的远程对象
props.setProperty("java.naming.factory.initial",
"org.jnp.interfaces.NamingContextFactory");
props.setProperty("java.naming.provider.url", "localhost:1099");
props.setProperty("java.naming.factory.url.pkgs", "org.jboss.naming");
InitialContext ctx;
try {
ctx = new InitialContext(props);
//根据jndi名字查找,得到对应的远程对象,这个远程对象是Hello的子类的对象
Hello hello = (Hello) ctx.lookup("HelloBean/remote");
//调用远程方法。得到结果
System.out.println(hello.getHello(“aaa"));
} catch (NamingException e) {
e.printStackTrace();
}


这都是些基本固定的代码啊!
谁还会写错啊!
检查配置文件咯
piaopiao11 2007-07-27
  • 打赏
  • 举报
回复
props.setProperty("java.naming.provider.url", "jnp://localhost:1099");
前面还有个jnp把
yown 2007-07-27
  • 打赏
  • 举报
回复
在JBOSS里查看是否有这个EJB
feihua317 2007-07-26
  • 打赏
  • 举报
回复
不能连接到服务器。感觉你的props里的属性写的有问题!

67,513

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧