WebLogic服务器在Ajax调用之间丢失会话

时间:2012-02-15 16:34:36

标签: java jquery ajax session weblogic

我有一个在Apache Tomcat上完美运行的Web应用程序。但是,当我将其部署到WebLogic 10.2.3服务器时,由于会话为空,它会获得NPE。

该应用程序是Java 5,在Win 7 Pro上运行的jQuery 1.7.1。服务器的第一个Ajax GET导致一些值存储在会话对象中。下一个Ajax GET使用这些值 - 因为空会话导致NPE。

在Firebug中,我看到正在传递不同的会话ID - 为什么?

任何人都可以帮我解决这个问题吗? enter image description here

另一条信息。这是一些相关的jQuery:

    $.ajaxSetup ({
    cache: false,
    xhrFields: {
        withCredentials: true
     },
     crossDomain: true
});

    $('#findSites').click(function() {                                // Locate HTML DOM element with ID "somebutton" and assign the following function to its "click" event...
    searchVal = document.getElementById("searchFor").value;
    searchTyp = document.getElementById("searchType").value;
    $.get('SiteSearchServlet', {searchFor: searchVal, searchType: searchTyp}, function(responseJson) { // Execute Ajax GET request on URL of "someservlet" and execute the following function with Ajax response JSON...
...

1 个答案:

答案 0 :(得分:0)

原来,将此添加到文档就绪函数解决了问题(即现在我使用相同的会话,除非超时):

    jQuery.support.cors = true; // force cross-site scripting

希望这有助于其他人。 标记