web层和EJB层之间怎么传递一个自定义对象呢?

bug0303 2004-07-21 12:21:07
比如我定义了一个类resultBase,这个类在WEB层;
在EJB层我实例化这个resultBase对象,并作为返回值返回到WEB层:
public interfaceCom.result.resultBase test() throws RemoteException;

可是我在WEB层调用时就总是出错!如果返回值是一个String或int之类的对象就没有问题。这是怎么回事呢?

我用的是无状态session bean。
...全文
102 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
bug0303 2004-07-21
  • 打赏
  • 举报
回复
谢谢。
class resultBase implements Serializable{}这句话我该把它写到哪里?不好意思,我是菜鸟...
flyxxxxx 2004-07-21
  • 打赏
  • 举报
回复
序列化
class resultBase implements Serializable{}
Serializable是标记接口,不用实现方法,但要注意如果你的类中有与运行时相关的如线程,此类不能自动序列化,要实现一定的方法
bug0303 2004-07-21
  • 打赏
  • 举报
回复
哦,谢谢大家,搞定了!
奇怪了,开始都不行(改过的web程序和EJB程序都重新部署了),后来我重新启动了一遍服务器就OK了。真搞不懂。谢谢,结帐
bug0303 2004-07-21
  • 打赏
  • 举报
回复
1、序列化的方法是否就是在我定义这个类的时候这样写就可以了:
package interfaceCom.result;
import java.util.*;
public class resultBase implements java.io.Serializable{
.....
}
2、在web层调用EJB某方法的时候是否就是这样写:
//得到EJB
resultBase rb = ejbbean.execMain();
3、在EJB层是否只需要import进来resultBase 这个类,而不需要其它工作呢?
4、resultBase 这个类是放在web层还是EJB层?
5、和session bean的有无状态有关系吗?
谢谢大家指教。
dongfeng190 2004-07-21
  • 打赏
  • 举报
回复
你的类没有序列化,远程传递类都要序列化
zdbj2ee 2004-07-21
  • 打赏
  • 举报
回复
可能是序列化,远程接口的参数和返回值都要可序列化。实现implements Serializable接口
bug0303 2004-07-21
  • 打赏
  • 举报
回复
我在定义resultBase类的时候,加上了implements Serializable,可是问题还是没有和以前一样呀??

81,114

社区成员

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

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