测试环境:J2EE(weblogic)+oracle+cognos10应用实现:cognos使用第三方验证,j2ee中使用js直接调用cognos的登陆地址进行验证,调用代码如下:
//执行cognos注销
var logOff = $.ajax({
url: "http://cognosServerUrl/cognos8/cgi-bin/cognos.cgi?b_action=xts.run&m=portal/logoff.xts&h_CAM_ACTION=logoff",
async: false
}).responseText;
//执行cognos登陆验证
var result = $.ajax({
url : "http://cognosServerUrl/cognos/cgi-bin/cognos.cgi?h_CAM_ACTION=logonAs&CAMUser=login_name&CAMPassword=login_password&CAMNamespace=gs",
async: false
}).responseText;
问题说明:在IE8中,有两个不同权限的用户A和B,A用户访问应用系统j2ee,调用cognos登陆验证成功,退出调用cognos注销注销用户,再次使用B用户登陆,调用登陆验证cognos成功,查看用户A和B数据权限都正确。
但在IE9或IE10中,使用A用户登陆调用cognos登陆验证成功,退出再次使用B用户登陆调用cognos登陆验证时result内容中出现“密码不匹配”错误,无法验证成功,导致在应用系统中,B用户的数据权限任然为A用户的。
已确定在IE10中密码都输入正确。A用户和B用户密码相同。
可能我表述不太清楚,见谅!
求大神解惑?困扰好长时间了