用JBuidler9和Weblogic7部署entity bean时出错,请高手帮我解决

nako_ruru 2003-08-19 11:58:02
D:\j2sdk1.4.2\bin\javaw -classpath D:\bea7\weblogic700\server\lib\weblogic_sp.jar;D:\bea7\weblogic700\server\lib\weblogic.jar;D:\bea7\weblogic700\server\lib\webservices.jar; weblogic.Deployer -user NakoRuru -adminurl http://nakoruru:7001 -password 1234567890 -activate -name Cmp -upload -source G:/project/cmpSample/Cmp.jar -targets myserver
Operation started, waiting for notifications...

...

#TaskID Action Status Target Type Application Source

1 Activate Failed myserver Server Cmp D:\bea7\user_projects\mydomain\myserver\upload\Cmp\Cmp.jar
Exception:weblogic.management.ApplicationException: activate failed forCmp
Module: Cmp Error: Exception activating module: EJBModule(Cmp,status=PREPARED)


Unable to deploy EJB: Student from Cmp.jar:

weblogic.ejb20.WLDeploymentException: Error while reading 'META-INF/weblogic-cmp-rdbms-jar.xml'. The error was:
ZipFile closed.

at weblogic.ejb20.persistence.PersistenceType.setTypeSpecificFile(PersistenceType.java:541)

at weblogic.ejb20.persistence.PersistenceType.setupDeployer(PersistenceType.java:408)

at weblogic.ejb20.deployer.CMPInfoImpl.setup(CMPInfoImpl.java:115)

at weblogic.ejb20.deployer.ClientDrivenBeanInfoImpl.activate(ClientDrivenBeanInfoImpl.java:927)

at weblogic.ejb20.deployer.EJBDeployer.activate(EJBDeployer.java:1302)

at weblogic.ejb20.deployer.EJBModule.activate(EJBModule.java:342)

at weblogic.j2ee.J2EEApplicationContainer.activateModule(J2EEApplicationContainer.java:1509)

at weblogic.j2ee.J2EEApplicationContainer.activate(J2EEApplicationContainer.java:970)

at weblogic.j2ee.J2EEApplicationContainer.activate(J2EEApplicationContainer.java:957)

at weblogic.management.deploy.slave.SlaveDeployer.processPrepareTask(SlaveDeployer.java:1074)

at weblogic.management.deploy.slave.SlaveDeployer.prepareUpdate(SlaveDeployer.java:700)

at weblogic.drs.internal.SlaveCallbackHandler$1.execute(SlaveCallbackHandler.java:24)

at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:152)

at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:133)
...全文
37 22 打赏 收藏 转发到动态 举报
写回复
用AI写文章
22 条回复
切换为时间正序
请发表友善的回复…
发表回复
nako_ruru 2003-08-23
  • 打赏
  • 举报
回复
如果我不用JBuilder启动weblogic,而是直接启动weblogic,错误和原来不一样

----------------------------------------------------------------------------------

D:\j2sdk1.4.2\bin\javaw -classpath D:\bea7\weblogic700\server\lib\weblogic_sp.jar;D:\bea7\weblogic700\server\lib\weblogic.jar;D:\bea7\weblogic700\server\lib\weblogicservices.jar;D:\bea7\weblogic700\server\lib\webservices.jar; weblogic.Deployer -user NakoRuru -adminurl http://nakoruru:7001 -password 1234567890 -activate -name Cmp -upload -source G:/project/cmpSample/Cmp.jar -targets myserver
Operation started, waiting for notifications...
.
#TaskID Action Status Target Type Application Source
0 Activate Failed myserver Server Cmp D:\bea7\user_projects\mydomain\.\myserver\upload\Cmp\Cmp.jar
Exception:weblogic.management.ApplicationException: Prepare failed. Task Id = 0
Module: Cmp Error: Exception preparing module: EJBModule(Cmp,status=NEW)
Unable to deploy EJB: D:\bea7\user_projects\mydomain\.\myserver\upload\Cmp\Cmp.jar from Cmp.jar:
weblogic.ejb20.deployer.DeploymentDescriptorException: Unable to load a class specified in your ejb-jar.xml: Class bytes found but defineClass()failed for: 'cmpsample.StudentBean'
at weblogic.ejb20.deployer.MBeanDeploymentInfoImpl.initializeBeanInfos(MBeanDeploymentInfoImpl.java:431)
at weblogic.ejb20.deployer.MBeanDeploymentInfoImpl.<init>(MBeanDeploymentInfoImpl.java:164)
at weblogic.ejb20.deployer.EJBDeployer.setupBeanInfo(EJBDeployer.java:944)
at weblogic.ejb20.deployer.EJBDeployer.prepare(EJBDeployer.java:1251)
at weblogic.ejb20.deployer.EJBModule.prepare(EJBModule.java:235)
at weblogic.j2ee.J2EEApplicationContainer.prepareModule(J2EEApplicationContainer.java:1425)
at weblogic.j2ee.J2EEApplicationContainer.prepare(J2EEApplicationContainer.java:650)
at weblogic.j2ee.J2EEApplicationContainer.prepare(J2EEApplicationContainer.java:548)
at weblogic.management.deploy.slave.SlaveDeployer.processPrepareTask(SlaveDeployer.java:1026)
at weblogic.management.deploy.slave.SlaveDeployer.prepareUpdate(SlaveDeployer.java:700)
at weblogic.drs.internal.SlaveCallbackHandler$1.execute(SlaveCallbackHandler.java:24)
at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:152)
at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:133)
nako_ruru 2003-08-22
  • 打赏
  • 举报
回复
能说明白些吗?
nako_ruru 2003-08-22
  • 打赏
  • 举报
回复
我没看到什么new datasource,在哪儿啊?
inprise_lyj 2003-08-22
  • 打赏
  • 举报
回复
在jbuilder9 产生的 ejbmoudle包下有一个datasource
右击,选 new datasource 名称与weblogic server 中配置的DataSource名称一样
inprise_lyj 2003-08-22
  • 打赏
  • 举报
回复
在jbuilder9 产生的 ejbmoudle包下有一人datasource
右击,先 new datasource 名称与weblogic server 中配置的DataSource名称一样
nako_ruru 2003-08-22
  • 打赏
  • 举报
回复
你说的第二种方法就是说要将Tx Data Source设置为一致嘛,它的确和我在weblogic里设置的Tx Data Source 一致。
nako_ruru 2003-08-22
  • 打赏
  • 举报
回复
to hesi726(hesi):

你所说的JB为我产生的ejb配置文件是什么啊?我没有看到什么叫datasource的
hesi726 2003-08-22
  • 打赏
  • 举报
回复
顺便说下,我在JBOSS下也发现了这个问题!
看看你的文件吧! META-INF/weblogic-cmp-rdbms-jar.xml
hesi726 2003-08-22
  • 打赏
  • 举报
回复
在EJB Designer里点击右键选择Import Schema From Database,填好数据库的有关信息,左边的Data Source就会出现该数据库的数据表,选择我要用到的数据表,点击右键选择Create CMP 2.0 Entity Bean,这时在EJB Designer里就会出现Bean Properties。不知道这样建立CMP对不对?

没有错!但要该个东西!
你看看 JB 为你产生的那个 ejb 的配置文件!
里面有个 datasource 的名称的!将它改成和你配置的一致!

或者在 JBuilder Import from Schemda后,将 左下方 的那个 DataSource 的名称改成和你配置的一致!
nako_ruru 2003-08-22
  • 打赏
  • 举报
回复
怎么没人了?
manyjoys 2003-08-21
  • 打赏
  • 举报
回复
这个问题我知道,可能是因为你将EJB的beanClass放到classpath路径中了
我采用的是特笨的办法:
结束服务器的运行,打开config.xml,删除其中的与该EJB有关的项
删除domain目录下的EJB的jar文件
重新打包EJB
发布
OK啦!!
nako_ruru 2003-08-21
  • 打赏
  • 举报
回复
自从错误后,我一直用的redeploy嘛,真的有错误
nako_ruru 2003-08-21
  • 打赏
  • 举报
回复
自从错误后,我一直用的redeploy嘛,真的有错误
manyjoys 2003-08-21
  • 打赏
  • 举报
回复
不会吧,等于重新发布也不行
那你试试:
结束服务器的运行,打开config.xml,删除其中的与该EJB有关的项
删除domain目录下的EJB的jar文件
重新打包EJB
最后一步在jbuilder中改成redeploy不用deploy,看行不行
我以前也遇到过跟你的异常一样的情况
看来weblogic使用起来还是挺难的
nako_ruru 2003-08-21
  • 打赏
  • 举报
回复
to manyjoys(更多快乐):
我照着你说的方法做了,还是错的,而且我没有将EJB的beanClass放到classpath路径中去。
nako_ruru 2003-08-20
  • 打赏
  • 举报
回复
在EJB Designer里点击右键选择Import Schema From Database,填好数据库的有关信息,左边的Data Source就会出现该数据库的数据表,选择我要用到的数据表,点击右键选择Create CMP 2.0 Entity Bean,这时在EJB Designer里就会出现Bean Properties。不知道这样建立CMP对不对?
---------------------------------------------------------------------------------
Connection Pool 和 Tx Data Source的JNDI都配置过了,是不是要把availalbe里的server加入到chosen栏里。我这样做weblogic没有报错。
---------------------------------------------------------------------------------
先配置Connection Pool等再建立CMP是吧。
Sundery 2003-08-20
  • 打赏
  • 举报
回复
你是怎么建立CMP的?

还有Connection Pool和Tx Data Source的JNDI有没有在weblogic里面配置过?

JB里面的连接正确吗?
nako_ruru 2003-08-20
  • 打赏
  • 举报
回复
用weblogic部署还是要错,是一样的错误
nako_ruru 2003-08-20
  • 打赏
  • 举报
回复
为什么?
csrcom 2003-08-20
  • 打赏
  • 举报
回复
这个跟jbuilder发布一点关系都没有
jbuilder发布也只是通过调用java命令而已
java -cp /home/bea/weblogic700/server/lib/weblogic.jar weblogic.Deployer -adminurl http://10.0.1.101:8066 -name nirvana -sour
ce $SOURCE -name $NAME -targets myserver -user /home/struc -password 11111111 -activate
跟我这个脚本语句的功能一样。可能你部署描述有问题
加载更多回复(2)

67,512

社区成员

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

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