仅当cookie关闭时,Weblogic url-重写才真实

时间:2014-06-10 13:30:31

标签: java cookies url-rewriting weblogic

我希望在weblogic容器上部署一个应用程序,只有在浏览器中禁用了cookie时才使用URL重写。

我需要这个,因为即使浏览器启用了cookie,在第一次请求时也会使用url-rewritting。所以网址看起来像

  

mysite.com/go;jsessionid=YZLVTW3P1fPdLFc28BxgN72zhmXNGMpkYpwnTflDGJy9Gvp7R61n!-128874051

我喜欢它

  

mysite.com/go

如果启用了cookie,只有在禁用cookie时才附加jsessionid。

我现在在weblogic.xml中有以下配置

<session-descriptor>
        <debug-enabled>true</debug-enabled>
        <persistent-store-type>replicated_if_clustered</persistent-store-type>
        <url-rewriting-enabled>true</url-rewriting-enabled>
        <cookies-enabled>true</cookies-enabled>
        <cookie-secure>true</cookie-secure>
</session-descriptor>

是否有人知道是否可以启用

<url-rewriting-enabled>true</url-rewriting-enabled>

仅在禁用cookie的情况下?

你会怎么做这样的事情? Java代码过滤器?

更多细节: 我需要的是拥有像这样的行为

<session-descriptor>        
        <url-rewriting-enabled>true</url-rewriting-enabled>
        <cookies-enabled>false</cookies-enabled>
    </session-descriptor> 

<session-descriptor>        
        <url-rewriting-enabled>false</url-rewriting-enabled>
        <cookies-enabled>true</cookies-enabled>
    </session-descriptor>

或者模仿这个的东西(即使是java过滤器也不错),只有在禁用cookie时才启用url-rewriting。正如我在第一次请求时所说的那样,即使启用了cookie,我也会获得jsessionid。

1 个答案:

答案 0 :(得分:2)

文档说,如果您同时启用url-rewriting-enabled,则不应启用cookie-secure

http://docs.oracle.com/cd/E15051_01/wls/docs103/webapp/weblogic_xml.html#wp1071982

我发现其他多个引用也提到了,不,你不能同时启用安全cookie和url重写。这个来源详细介绍了每个的优点,以帮助您做出选择:

http://j2eesecurity.blogspot.com/2007/11/cookies-vs-url-rewriting.html