如何拆分SFSB Facade?
我在使用基于EJB 3技术的应用程序时遇到了一些问题。
我想在Session bean中使用Facade Pattern来将我的客户端(Web应用程序)与我的Entity Beans分离。
我正在使用SFSB来管理用户会话。
所以我有一个
FacadeLoginRemote
远程接口,向客户端公开方法doLogin()
,doLogout()
等...
目前这个SFSB还包括一些其他方法,如getCourse(int id)
,getResource(int id)
。并非所有用户都可以实际获得课程并获取资源,因此Facade在将值返回给客户端之前执行一些检查。
我想拆分Facade,将方法getCourse()
和getResource()
放在一个特殊的类中,但是留给FacadeLoginRemote
检查用户权限的功能。
如果我制作一些不同的SLSB,我会将它们暴露给客户端。因此,客户端可以直接连接到它们,避免来自FacadeLoginRemote
的检查。
我错了吗?有没有办法做到这一点?
提前致谢,
安德里亚
没有找到相关结果
已邀请:
1 个回复
街茬
等方法的bean,则无关紧要。 我想知道你是如何在EJB中实现
的。我的猜测是你在那里做了一些自定义,不幸的是,据我所知,EJB3没有一种直接的方法来通过特定bean上的特定方法进行编程登录。安全性主要是声明性的,然后在访问任何bean时,客户端必须提供身份验证详细信息。例如。当您从远程JNDI请求bean时,您必须使用与远程服务器的初始JNDI连接提供这些详细信息。