最近在学习ejb,我照着书写了一个例子,但是在运行的时候出了一个问题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部署成功bean 代码如下import javax.ejb.Remote;
import javax.ejb.Stateless;@Stateless
@Remote
public class FirstEjbBean implements FirstEjb { @Override
public String sayHello(String name) {
return "hello " + name;
}}
远程调用代码如下:
public static void main(String[] args) {
try {
InitialContext initialContext = new InitialContext();
FirstEjbBean firstEjbBean = (FirstEjbBean) initialContext.lookup("FirstEjbBean/remote");
} catch (NamingException e) {
e.printStackTrace();
}
执行的时候抛出
Exception in thread "main" java.lang.ClassCastException: org.jnp.interfaces.NamingContext cannot be cast to cn.com.zero.ejb.FirstEjbBean
at cn.com.zero.ejb.TestEjb2.main(TestEjb2.java:15)但是如果 Object firstEjbBean = (Object) initialContext.lookup("FirstEjbBean/remote");
System.out.println(statelessEjbBean);得到结果:jboss.j2ee:jar=ejbTest.jar,name=StatelessEjbBean,service=EJB3请教 高手怎么回事,非常感谢。 我要怎么样调用 romote bean的方法
非常感谢
java.naming.factory.initial=org.jnp.interfaces.NamingContextFactory
java.naming.factory.url.pkgs=org.jboss.naming:org.jnp.interfaces
java.naming.provider.url=localhost部署成功bean 代码如下import javax.ejb.Remote;
import javax.ejb.Stateless;@Stateless
@Remote
public class FirstEjbBean implements FirstEjb { @Override
public String sayHello(String name) {
return "hello " + name;
}}
远程调用代码如下:
public static void main(String[] args) {
try {
InitialContext initialContext = new InitialContext();
FirstEjbBean firstEjbBean = (FirstEjbBean) initialContext.lookup("FirstEjbBean/remote");
} catch (NamingException e) {
e.printStackTrace();
}
执行的时候抛出
Exception in thread "main" java.lang.ClassCastException: org.jnp.interfaces.NamingContext cannot be cast to cn.com.zero.ejb.FirstEjbBean
at cn.com.zero.ejb.TestEjb2.main(TestEjb2.java:15)但是如果 Object firstEjbBean = (Object) initialContext.lookup("FirstEjbBean/remote");
System.out.println(statelessEjbBean);得到结果:jboss.j2ee:jar=ejbTest.jar,name=StatelessEjbBean,service=EJB3请教 高手怎么回事,非常感谢。 我要怎么样调用 romote bean的方法
非常感谢
解决方案 »
- 再问个类集小问题
- ssh添加
- Factory methond设置模式谁给简单讲讲
- 分享:java完美编程 下载地址
- 有关Appfuse的问题
- Criteria怎样实现查询三个表,返回两个表的信息啊
- 关于hibernate的inverse
- 写一个基于digester的解析规则库
- 如何设置JTable中列或行的对齐方式?
- springmvc+mybatis+ehcahe配置了单独的ehcache.xml但还是一直使用默认的ehcache-failsafe.xml的配置
- 怎样把java 文本框监听事件中得到的字符串(程序运行时输入的)传给其它函数
- 用什么方法能够 防止没有注册的用户直接输入网址 登陆只能是注册用户浏览的网页?
我也才学不久 多交流交流!