【发布时间】:2011-05-08 15:41:17
【问题描述】:
我遇到了一些乍一看无法理解的问题。这个故事很简单,但我想解决方案是一些真正的配置/部署问题/不一致的背后。
我已经定义了一个 JSP 和两个 servlet。 JSP 在会话中放入一些东西,servlet 应该获取数据并对其进行操作。主要症状是 servlet 在 Chrome 和 Firefox 中查看 JSP 时看不到会话数据。有趣的是,当使用 Eclipse 内部浏览器以及使用 Internet Explorer(在 Win7 上工作)时,JSP/servlet 确实共享数据。
这里有一些关于本地配置的信息(和后续症状)的详细描述(并且,我相信存在问题):我已经在 c:\labs\eclipse 下安装了 Eclipse (Helios) 和在 c:\labs\tomcat 下解压 Tomcat (7.0.12)。我还安装了启动 Tomcat 的 Sysdeo 插件。
首先,当我使用 Sysdeo Eclipse 插件按钮启动 Tomcat,然后尝试从外部浏览器访问一些与应用程序相关的 URL - 然后找到主 Tomcat 页面,但没有找到应用程序 JSP/页面。但是,当我使用“播放/运行”Eclipse按钮启动Tomcat时(当正在选中Eclipse Web项目时的某些JSP页面时) - 然后我可以 em>请参阅渲染的JSP页面两者 来自 Eclipse 内部浏览器和任何外部浏览器。这两种启动模式有什么区别?
其次,当仅通过“播放/运行”Eclipse 按钮启动 Tomcat,并从内部 Eclipse 浏览器或外部 Internet Explorer 浏览器调用 JSP 和 servlet 时,所有数据将被共享由 JSP 和 servlet 正确执行。但是(仅针对相同的启动模式)如果我尝试从外部 Chrome/Firefox 浏览器访问 JSP/servlet - 然后找到 JSP/servlet,但数据似乎没有通过 http 会话共享(打印会话 id并验证它是正确的)。
第三,当我通过“支付/运行”按钮启动 Tomcat 时,我可以仅在使用内部 Eclipse 浏览器时在 Eclipse 控制台中看到 servlet log() 打印。当从外部浏览器调用 JSP/servlet 时 - 我找不到日志打印(但在 Tomcat 日志目录中的文件中只有少数与访问相关的行)。
试图总结我觉得奇怪的技术问题 - 我很可能错过了一些有价值的部署/配置相关信息。请告知我做错了什么,哪个是更好/正确的配置,可以在从所有外部浏览器调用应用程序资源时共享会话数据。如果您需要有关我的配置/环境的任何其他详细信息 - 请询问。
欣赏
【问题讨论】:
标签: eclipse tomcat servlets httpsession