我有一个J2ee应用程序,我基本上希望两个独立的servlet创建的两个对象可以直接通信,并且我需要这些实例保持稳定,即在会话期间彼此“了解”。

顺序大致如下:


客户端向Servlet#1发送请求,该Servlet创建对象A
客户端向第二个创建对象B的servlet#2发送第二个请求(在第一个返回之后)。
对象B使用JNDI找到A,并且两个对象交互。
客户端现在继续向对象A发送请求,该对象需要再次查找B。


如何确保这两个实例在整个会话过程中相互了解?
将它们绑定到JNDI并不能完全解决问题,因为对象B需要与其原始servlet(servlet#2)进行通信,而该servlet在请求之间并不稳定。

有任何想法吗?

提前致谢。



是的,我承认问题描述有点含糊。但这不是一个非常简单的应用程序。
不过,我会尝试更好地询问它:

我的最终目标是为我的应用程序创建一种“语义调试器”,而不是仅调试Java语句的Java调试器。

调试的应用程序基本上是一个servlet。我的工具连接到哪个。
该工具通过另一个控制调试过程的servlet维护与应用程序的连接。
这两个servlet需要不断且直接地相互通信。

我目前的想法是建立一个有状态的会话bean,以促进这种通信(从没有做过,仍然在努力设置)。

但是,如果有任何关于如何更好地实现这一目标的想法,我将不胜感激。

最佳答案

什么使您无法使用Session?您不需要JNDI,只需使用预定义的名称将对象放入会话中即可。如果通信对象是应用程序范围的,请使用Singleton。

附言在我看来,您做的事情很奇怪,而解决方案实际上可能更简单。您能描述任务而不是拟议的实施吗?无论如何,什么是“语义调试器”?

关于java - 在J2EE服务器中的两个不同应用程序之间匹配两个对象实例的最佳方法是什么?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/252082/

10-12 00:33
查看更多