首页
新闻
论坛
群组
Blog
文档
下载
读书
Tag
网摘
搜索
.NET
Java
游戏
视频
人才
外包
培训
数据库
书店
程序员
欢迎您:
游客
| 退出
| 登录
注册
帮助
我的帖子
我参与的帖子
我的空间
我的网摘
CSDN
CSDN社区
JBoss技术交流
JBoss入门
将帖子提前
放进我的网摘
推荐给好友
我要提问
帖子加分
生成帖子
置顶
推荐(加精)
取消推荐(加精)
锁定帖子
移动帖子
取消引用
结帖去...
管理菜单
页面风格切换
标准风格
老版本论坛
jboss中实现的mbean怎么调用ejb啊
[已结帖,结帖人:moorstone]
加为好友
发送私信
在线聊天
moorstone
moorstone
等级:
可用分等级:
乞丐
总技术分:
10
总技术分排名:
215421
结帖率:
100.00%
发表于:
2007-12-28 14:38:59
楼主
我将调用到的ejb打包成jar,放在*.sar目录下
MBean的实现
package mbean.test;
import org.jboss.system.ServiceMBean;
public interface HelloWorldServiceMBean extends ServiceMBean {
String getMessage();
void setMessage(String message);
void doSomething();
}
package mbean.test;
import org.jboss.system.ServiceMBeanSupport;
public class HelloWorldService extends ServiceMBeanSupport
implements HelloWorldServiceMBean {
private String message;
public String getMessage() {
System.out.println("getMessage() " + message);
return message;
}
public void setMessage(String message) {
System.out.println("setMessage() " + message);
this.message = message;
}
public void doSomething() {
System.out.println("做些事情");
new Test().test();
}
public void startService() throws Exception {
System.out.println("终于看到你啦");
}
}
package mbean.test;
import java.util.Properties;
import javax.naming.InitialContext;
public class Test {
public void test() {
InitialContext ctx = null;
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");
try {
ctx = new InitialContext(props);
} catch (Exception e) {
e.printStackTrace();
}
try {
IAA a = (IAA)ctx.lookup("AA/remote"); // 这个地方调用了EJB
a.doAA();
} catch (Exception e) {
e.printStackTrace();
}
System.out.println("In 测试代码中");
}
}
然后我又生成了myejb.jar包,里面包含了EJB的实现,如下:
package mbean.test;
public interface IAA {
public void doAA();
}
package mbean.test;
import javax.ejb.Local;
import javax.ejb.Remote;
import javax.ejb.Stateless;
@Stateless
@Local({IAA.class})
@Remote({IAA.class})
public class AA implements IAA {
public void doAA() {
System.out.println("Run in AA");
}
}
ejb包放在*.sar中
如果jboss已经启动,那么直接热部署是没有问题的,但是,如果我重新启动jboss,那么这个mbean启动失败,这个问题怎么解决啊
问题点数:
20
回复次数:
2
显示所有回复
显示星级回复
显示楼主回复
修改
删除
举报
引用
回复
加为好友
发送私信
在线聊天
sorze
sorze
等级:
可用分等级:
短工
总技术分:
10
总技术分排名:
215421
发表于:
2007-12-28 20:23:13
1
楼 得分:
10
我顶
修改
删除
举报
引用
回复
加为好友
发送私信
在线聊天
JBossWeek
JBoss fans
等级:
可用分等级:
富农
总技术分:
1655
总技术分排名:
12662
发表于:
2007-12-28 22:04:41
2
楼 得分:
10
1、ejb直接打成jar包部署
2、在deploy目录下创建一个deploy.last的文件夹,然后将mbean的sar包拷贝到该目录里,这样就会在jboss启动时最后部署该mbean服务之后,当然也会在ejb启动以后
试试吧!
修改
删除
举报
引用
回复
将帖子提前
放进我的网摘
推荐给好友
我要提问
帖子加分
结帖去...
管理菜单
页面风格切换
标准风格
老版本论坛
网站简介
-
广告服务
-
网站地图
-
帮助
-
联系方式
-
诚聘英才
-
English
-
问题报告
北京创新乐知广告有限公司 版权所有 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
abc推荐给好友