我目前正在编写一个新的EJB应用程序,它基本上应该接收来自Web服务的消息并基于此消息内容启动下载过程。这个应用程序将运行在Glassfish 3.1.1上。EJBs - 架构问题
我的第一个想法是创建一个singleton bean,它将从Web服务中读取消息,并使用有状态会话bean来启动和处理下载本身。我需要使用有状态bean,因为我需要在我的单例状态和有状态bean之间有一个转换状态(下载状态等)
“问题”是如果我从Web服务接收到几条消息,我应该同时开始几个下载,每个下载都有自己的上下文。我该如何实现这一点,就好像我从我的单例中调用有状态会话bean一样,我总是会得到相同的bean,对吗?我看到的唯一解决方案是使用将从我的单例创建并启动的线程,但这是EJB规范所不允许的...
感谢您的帮助!
嗨马克!单身人士将成为应用程序的“入口点”,负责管理所有下载内容,即检查每个bean的下载状态,通过Web服务发送这些状态,中断/取消所有下载等。它是否回答您的问题?你看到另一种方式继续?问候 – Mehdi 2012-01-04 09:25:42
是的,我明白了,但它仍然不能说服我在这里需要一个单身人士。我的意思是,让SFSB管理单个客户端的互连,下载/取消/获取状态等。你为什么需要“集中”这个? – 2012-01-04 09:27:58
因为(在我看来)我需要集中。因为例如取消/中断下载等命令来自WS。所以我需要能够识别我需要中断/取消哪个SFSB ...更清楚了吗? – Mehdi 2012-01-04 09:46:37