3

我有一个分布式应用程序,它由一台服务器组成,即运行应用程序前端和后端的 JBoss AS7。运行在网络中其他机器上的多个客户端获取 JBoss 的 JNDI 初始上下文以获取某些对象。每个客户端都是唯一的,需要在不对其进行任何配置的情况下进行识别。我的方法是获取他们的地址并映射与他们相关的数据(东西池,在所有连接的客户端之间均匀映射)。

如何获取 EJB 方法的调用客户端的 IP 地址?

我已经找到了描述如何从线程名称中获取信息的“hacks”(例如在 JBoss 4.x 中使用),但它总是返回如下内容:

EJB 默认 - 7

请参阅如何在 ejb 调用中获取调用 IP 地址?

如果您在某些上下文中提供代码片段或方法调用,您能否添加它的来源?我无法通过搜索EJB3Remoting3和类似的东西找到东西

4

1 回答 1

0

Just an idea,

May be use can expose your ejb through a rest based web service layer. If you do so it is easy to find remote host name and may also use filter servlet to allow or disallow a request.

You can use @EJB to inject your bean into rest class assuming you will use JAX-RS.

于 2013-10-06T18:29:41.327 回答