一尘不染

Tomcat:如何从Servlet访问(会话)管理器

tomcat

我需要从Tomcat中的servlet(或过滤器)访问Manager,以通过自定义会话ID加载自定义会话。

回答您的下一个问题:为什么我需要它。Flash中有一个旧错误,导致该错误从IE(而不是当前浏览器)发送Cookie。因此,如果我在FF中,并且尝试使用SWFUpload上传文件,则会导致会话错误和错误。

我想将magic参数添加到POST中,该参数应覆盖默认(错误的)会话ID,然后加载自定义会话,而不是Tomcat加载的会话。我无法使用URL重写,因为首先要解决cookie,并且当flash从IE发送错误的cookie时,Tomcat不会尝试从url重写的地址加载会话。

我希望您能从上下文或原始问题的解决方案中访问Manager的任何其他提示。

在此先感谢Juriy


阅读 207

收藏
2020-06-16

共1个答案

一尘不染

应该可以通过实现来访问它ServletContext。获取tomcat的源进行检查,或使用反射获取上下文的所有字段。您可能需要花很多精力去找经理。

(我找不到管理器是否在JNDI中公开,但您也可以在那里查看)

2020-06-16