如何手动刷新entity bean

xubin_sh 0 2004-09-08 07:16:20
本人有一个j2ee程序和一个普通程序,都连一个数据库,当那个普通程序修改数据库后,j2ee程序里的entity bean(cmp)不能得到新的更新数据,请问在jsp中访问ejb,通过什么函数或手段可以让容器刷新这个ejb
...全文
112 点赞 收藏 14
写回复
14 条回复
serf 2004年09月11日
你的结构不太好,不可能非常及时,除非你能容忍一定的延迟,使用weblogic的只读EJB.比赛的比分系统大多要这么实现。如果想及时可以采用web service导出EJB.MFC调用Web service实现更新。
回复 点赞
fkpwolf 2004年09月10日
我也不懂,帮你UP
这好像是个分布式的事务问题,两个应用程序同时修改数据库。而你又能把这两个程序加到一个事务中来。
用BMP看看,这样你可以手工调用ejbLoad()
回复 点赞
guojiafuzhuxi 2004年09月09日
不太懂。
回复 点赞
xubin_sh 2004年09月09日
fkpwolf(偷书不算偷) 你能不能说的再详细一点?
sgdb(神天月晓)不是结构,是增加了记录
回复 点赞
sgdb 2004年09月08日
你的意思是动态的修改表结构??
如果是那就不要用ejb了;
回复 点赞
fkpwolf 2004年09月08日
This method executes in the transaction context determined by the transaction attribute of the
business method or ejbTimeout method that triggered the ejbLoad method.
回复 点赞
fkpwolf 2004年09月08日
cmp的ejbLoad()是基于当前的事务状态,容器自动用这个方法加载数据库中的数据到Bean实例中。可能你说的就是个事务的问题....
关注
回复 点赞
fkpwolf 2004年09月08日
?
回复 点赞
cynthia841023 2004年09月08日
不是把,entitybean本来就是要让你远离数据库的
回复 点赞
xubin_sh 2004年09月08日
请问sgdb(神天月晓) 可不可以通过编程方法载入一下cmp?有没有具体的步骤?我问的问题就是怎么样refresh容器!
回复 点赞
xubin_sh 2004年09月08日
我做的是一个工作流系统,工作流引擎是经过改造的obe(基于j2ee),工作流定制程序是基于mfc的,因为数据结构比较复杂,需要实时的和数据库交互,所以工作流定制程序是直接连接数据库的

现在的问题就是,mfc的程序在定制完工作流入库后,ejb无法知道数据库发生的变化(需要重启weblogic才行),所以在用jsp列表存在的工作流定义的时候不正确,我想有没有一种方法,在jsp里面调用ejb的home接口的findAll之前有什么指令可以refresh一下容器
回复 点赞
sgdb 2004年09月08日
在你的普通程序修改数据库后再次载入一下cmp
回复 点赞
huanxiangzhe24 2004年09月08日
你的结构有点怪。

暂时想不到有很好的方法。可能重新create一个新的ejb对象会好一些。
回复 点赞
XIHSHI 2004年09月08日
UP
回复 点赞
发动态
发帖子
Java EE
创建于2007-09-28

3.7w+

社区成员

22.5w+

社区内容

J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区公告
暂无公告