日期:2014-05-18  浏览次数:21320 次

做了个单点登陆系统结果用了几天出问题大家帮忙看下
事情是这样的,今天早晨来的时候我们做的单点登录系统出了问题导致子系统挂掉了,我不太明白我的单点登录系统是用C#做的我的子系统是asp做的,为什么单点登录系统出问题子系统怎么会挂了那?单点系统向子系统传递username,language就这个两个值,其中有个提示是说language引发的 但我的languag=Request.ServerVariables["HTTP_ACCEPT_LANGUAGE"].ToString();
目的是获得用户系统使用的语言啊,这个会有空值的情况么?下面是服务器日志
Event code: 3005 
Event message: An unhandled exception has occurred. 
Event time: 5/22/2012 2:03:03 PM 
Event time (UTC): 5/22/2012 6:03:03 AM 
Event ID: 0878d221ace14c0381fdeafc734b0193 
Event sequence: 945 
Event occurrence: 2 
Event detail code: 0 
 
Application information: 
  Application domain: /LM/W3SVC/855146/Root-1-129821111341346666 
  Trust level: Full 
  Application Virtual Path: / 
  Application Path: D:\SSO\ 
  Machine name: L1WEB 
 
Process information: 
  Process ID: 788 
  Process name: w3wp.exe 
  Account name: NT AUTHORITY\NETWORK SERVICE 
 
Exception information: 
  Exception type: NullReferenceException 
  Exception message: Object reference not set to an instance of an object.
  at SSO.Passport.UserLogin.Page_Load(Object sender, EventArgs e) in D:\SSO\Passport\UserLogin.aspx.cs:line 29
  at System.Web.Util.CalliHelper.EventArgFunctionCaller(IntPtr fp, Object o, Object t, EventArgs e)
  at System.Web.Util.CalliEventHandlerDelegateProxy.Callback(Object sender, EventArgs e)
  at System.Web.UI.Control.OnLoad(EventArgs e)
  at System.Web.UI.Control.LoadRecursive()
  at System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)

 
 
Request information: 
  Request URL: http://l1web:1000/userlogin.aspx?BackURL=http://l1web:1001/sso.asp 
  Request path: /userlogin.aspx 
  User host address: 172.16.122.54 
  User:  
  Is authenticated: False 
  Authentication Type:  
  Thread account name: NT AUTHORITY\NETWORK SERVICE 
 
Thread information: 
  Thread ID: 14 
  Thread account name: NT AUTHORITY\NETWORK SERVICE 
  Is impersonating: False 
  Stack trace: at SSO.Passport.UserLogin.Page_Load(Object sender, EventArgs e) in D:\SSO\Passport\UserLogin.aspx.cs:line 29
  at System.Web.Util.CalliHelper.EventArgFunctionCaller(IntPtr fp, Object o, Object t, EventArgs e)
  at System.Web.Util.CalliEventHandlerDelegateProxy.Callback(Object sender, EventArgs e)
  at System.Web.UI.Control.OnLoad(EventArgs e)
  at System.Web.UI.Control.LoadRecursive()
  at System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)
 
 
Custom event details: 

For more information, see Help and Support Center at http://go.microsoft.com/fwlink/events.asp.

查了半天也不知道这个日志写的什么意思,它提到的第29行那就是 strng languag=Request.ServerVariables["HTTP_ACCEPT_LANGUAGE"].ToString();
我是放到 page_load里面的
不明白为什么用了这么多天 ,现在才也这样的问题,有哪个朋友见过这样的错误请指教啊,急啊!!!!谢谢!!
分不多了请见谅。

------解决方案--------------------
什么叫单点登录系统???
------解决方案--------------------
at SSO.Passport.UserLogin.Page_Load(Object sender, EventArgs e) in D:\SSO\Passport\UserLogin.aspx.cs:line 29
你的程序有错呗,找吧