我已经开始使用Clojure构建一个web应用程序(使用ring和compojure),一切都运行得很好。
但是,当我使用uberwar创建一个war文件并将其部署到Tomcat时,我的会话对Tomcat是不可见的。
会话机制本身肯定是有效的(例如,它为购物篮保留状态),但是没有JSESSIONID,Tomcat管理器应用程序、Java Melody、Psi Probe都说我没有会话。
我确信我在创建JSESSIONID时明显遗漏了一些东西,但我在我找到的任何教程中都没有看到任何关于这方面的内容。
谁能给我举个例子,说明部署到Tomcat服务器上的Clojure应用程序是如何创建JSESSIONID的?
谢谢你的帮助
发布于 2013-07-03 21:38:26
Ring使用其own session store。
但是,如果您使用的是Servlet容器,Ring将使用各种Servlet对象进行populate the request map。在本例中,:servlet-request键引用HttpServletRequest对象。
值得注意的是,Ring是基于HTTP的抽象,并不一定依赖于Servlet规范。因此,只要在底层使用Servlet容器,就应该能够使用Servlet会话
https://stackoverflow.com/questions/17442318
复制相似问题