在Liberty上运行项目时,特别是在Chrome中运行时,我收到一些警告消息.
[WARNING ] Detected JSESSIONID with invalid length; expected length of 23, found 28, setting: BD14EBEEDBE53803FAE565131A03 to null.
这是因为Liberty正在生成长度为28的JSESSIONID,但是Liberty配置文件将httpSession属性idLength缺省设置为23.
<httpSession idLength="28" />
在Liberty server.xml中,我没有在日志中得到这些警告消息.但是,我想解决此问题而不更改server.xml.
是否可以将JSESSIONID的生成方式更改为默认长度为23?也许这是一个糟糕的方法?
解决方法:
WebSphere缺省创建长度为23的JSESSIONID.因此,在您的情况下,您必须在同一主机上具有不同的应用程序服务器或Web容器,这将创建不同的会话cookie.避免这些问题的最佳方法是更改已安装产品之一的默认cookie名称.将长度更改为28只会解决日志中的消息,但是您将收到应用程序错误,因为Websphere会查找它没有的会话,反之亦然-另一个应用程序服务器,当它接收由WebSphere生成的cookie时也找不到会话.
检查此链接:http://www-01.ibm.com/support/docview.wss?uid=swg21671600