如何在不使用FlexContext的情况下从Java服务对象访问Principal?

时间:2010-05-28 00:05:36

标签: java flex java-ee blazeds

我们正在构建一些通过BlazeDS公开给我们的Flex客户端应用程序的Java对象。因此,BlazeDS messagebroker servlet基本上实例化并调用这些对象上的方法以响应客户端请求。效果很好。

我们正在使用基于应用服务器的身份验证,并在remoting-config.xml文件元素中的<destination>元素上设置了安全约束,以防止未经身份验证的客户端访问这些远程Java对象。再次,工作正常。

但是,在这些java对象的实现中有几个地方我们想要获取当前登录用户的用户名。现在我们通过FlexContext.getUserPrincipal()来做这件事,这可以访问这个但是我们有一个唠叨的担忧,我们不喜欢这些对象(服务层)的实现与BlazeDS有很强的依赖性的想法类。但是我们不确定如何获得这个。这同样适用于访问ServletContext等。

有什么想法吗?

1 个答案:

答案 0 :(得分:1)

使用BlazeDS的MessageBrokerServlet时,没有办法解决这个问题。我能想到的唯一选择是编写自己的执行AMF的servlet,like this one

相关问题