websphere 发布 ejb ?

lyj0913 2002-02-08 01:34:59
我想在 websphere 上面发布 EJB,于是:
我写了三个 java 文件(远程接口、本地接口、EntiBean)
然后编译生成了三个 class 文件,
我再用 e:\jdk\bin\jar cvf hello.jar *.class 把三个 class 生成 hello.jar
但是往 websphere 里面加的时候提示说不包含任何 Bean
在往 websphere 加 jar 的时候,在打开的 dialog 中 jar 变成了一个文件夹,打开我的 hello.jar 文件夹里面什么都没有。但是打开 websphere 自带的 jar 文件时
里面都有一个 ser 文件。类似于下面的写法:
websphere.samples.yourCo.Timeout.Audit/Audit.ser

请问是怎么回事,谢谢!(我的分不多了 :( )

...全文
136 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
simoncn 2002-02-13
  • 打赏
  • 举报
回复
你用的是WebSphere3.5或以前的版本吧!
WebSphere4.0支持EJB1.1的部署方式(ejb-jar.xml),否则是使用EJB1.0的部署方式(.ser,将DDserialize到文件系统上)。可以用jetace打开来看看。
最好是在VAJ EE中完成部署代码的生成过程。
sojkey 2002-02-10
  • 打赏
  • 举报
回复
比如说你的远程接口是com.xxx.Hello,在com目录同一层建一个META-INF目录,里面放一个ejb-jar.xml,还要有两个websphere独有的xmi文件,写法参考websphere的ejb例子。然后用websphere的组装工具build成ejb的jar。
强烈推荐用jbuilder6做,将web服务器设成websphere,它会自动生成xml和xmi、调用websphere的rmic编译、并打包。
lyj0913 2002-02-09
  • 打赏
  • 举报
回复
但是 xml 文件放在什么地方呢?
websphere 自带的 jar 文件时
里面都有一个 ser 文件。类似于下面的写法:
websphere.samples.yourCo.Timeout.Audit/Audit.ser
我的 jar 里面什么都没有,是怎么回事啊?
chinadrencher 2002-02-08
  • 打赏
  • 举报
回复
你可以按照格式照写
或者ide写ejb
这样
相应的xml配置文件他全给你代劳了
lyj0913 2002-02-08
  • 打赏
  • 举报
回复
websphere 自带的 jar 文件时
里面都有一个 ser 文件。类似于下面的写法:
websphere.samples.yourCo.Timeout.Audit/Audit.ser
是怎么回事啊,我写了 xml 文件后就认识我的 jar 了么?
另外 xml 文件里面的 id , name , capacity , tonnage 怎么写啊?
bob 2002-02-08
  • 打赏
  • 举报
回复
给一个ejb-jar.xml的例子:
文件名:WEB-INF\ejb-jar.xml
---------------------------------------
<?xml version="1.0" encoding="GBK"?>

<!DOCTYPE ejb-jar PUBLIC '-//Sun Microsystems, Inc.//DTD Enterprise JavaBeans 1.1//EN' 'http://java.sun.com/j2ee/dtds/ejb-jar_1_1.dtd'>

<ejb-jar>
<enterprise-beans>
<entity>
<ejb-name>Ship</ejb-name>
<home>com.kingdee.ejb.ShipHome</home>
<remote>com.kingdee.ejb.Ship</remote>
<ejb-class>com.kingdee.ejb.ShipBean</ejb-class>
<persistence-type>Container</persistence-type>
<prim-key-class>com.kingdee.ejb.ShipPK</prim-key-class>
<reentrant>False</reentrant>
<cmp-field>
<field-name>id</field-name>
</cmp-field>
<cmp-field>
<field-name>name</field-name>
</cmp-field>
<cmp-field>
<field-name>capacity</field-name>
</cmp-field>
<cmp-field>
<field-name>tonnage</field-name>
</cmp-field>
</entity>
</enterprise-beans>
<assembly-descriptor>
<container-transaction>
<method>
<ejb-name>Ship</ejb-name>
<method-name>*</method-name>
</method>
<trans-attribute>Required</trans-attribute>
</container-transaction>
</assembly-descriptor>
</ejb-jar>

lyj0913 2002-02-08
  • 打赏
  • 举报
回复
请问怎么添加啊,自己建 xml 文件么?
xml 文件的名字怎么取啊?
xml 文件放在什么地方啊?
bob 2002-02-08
  • 打赏
  • 举报
回复
对了,忘了说了ejb-jar.xml要放在META-INF目录下,顺便给一个ejb-jar.xml文件的例子:

ejb-jar.xml
-------------------------
<?xml version="1.0" encoding="GBK"?>

<!DOCTYPE ejb-jar PUBLIC '-//Sun Microsystems, Inc.//DTD Enterprise JavaBeans 1.1//EN' 'http://java.sun.com/j2ee/dtds/ejb-jar_1_1.dtd'>

<ejb-jar>
<enterprise-beans>
<entity>
<ejb-name>Ship</ejb-name>
<home>com.kingdee.ejb.ShipHome</home>
<remote>com.kingdee.ejb.Ship</remote>
<ejb-class>com.kingdee.ejb.ShipBean</ejb-class>
<persistence-type>Container</persistence-type>
<prim-key-class>com.kingdee.ejb.ShipPK</prim-key-class>
<reentrant>False</reentrant>
<cmp-field>
<field-name>id</field-name>
</cmp-field>
<cmp-field>
<field-name>name</field-name>
</cmp-field>
<cmp-field>
<field-name>capacity</field-name>
</cmp-field>
<cmp-field>
<field-name>tonnage</field-name>
</cmp-field>
</entity>
</enterprise-beans>
<assembly-descriptor>
<container-transaction>
<method>
<ejb-name>Ship</ejb-name>
<method-name>*</method-name>
</method>
<trans-attribute>Required</trans-attribute>
</container-transaction>
</assembly-descriptor>
</ejb-jar>

bob 2002-02-08
  • 打赏
  • 举报
回复
你需要使用添加ejb-jar.xml在你的包里面,在xml文件中设置你的ejb的
属性设置,大致是ejb名字,ejb类型,各接口名字,jndi名字,用到的资源等
等。这样websphere 才认识你的ejb。

23,407

社区成员

发帖
与我相关
我的任务
社区描述
Java 非技术区
社区管理员
  • 非技术区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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