2013-02-03 51 views
1

下面的代碼我可以毫不Tomcat中的問題,運行「無法打開ID文件」,在WebSphere

Session session = NotesFactory.createSession((String)null, (String)null, "password"); 

,但在WebSphere中,我得到了以下異常:

SystemErr  R  NotesException: Could not open the ID file 
SystemErr  R  at lotus.domino.local.Session.NCreateSessionWithPasswd(Native Method) 
SystemErr  R  at lotus.domino.local.Session.createSession(Unknown Source) 
SystemErr  R  at lotus.domino.NotesFactory.createSessionUP(Unknown Source) 
SystemErr  R  at lotus.domino.NotesFactory.createSession(Unknown Source) 

它是如此有線,我沒有檢查身份證文件的存在,在同一臺計算機上,我也可以執行Lutos Notes客戶端沒有問題。我現在真的不知道我現在可以做什麼?請指教。

+0

我的Notes客戶端(8.5)安裝在Windows7上,它的ID文件不在/ Program Files /..../ Lotus/Notes/Data中,而是在{User}/AppData/Local/Lotus/Notes/Data,這是Websphere無法加載ID文件的原因嗎? (但Tomcat沒有這樣的問題。) – Matt

+0

檢查WS使用的操作系統帳戶。 –

回答

2

檢查Websphere運行的憑據。它可能與Tomcat不一樣,可能無法訪問該文件。

+0

感謝您的回覆,我不太瞭解您提到的「憑據」,您能否提供更多詳細信息?非常感謝。 – Matt

+0

我很肯定肯指的是運行WebSphere服務的用戶帳戶。 –

+0

嗨,肯,請看我上面的評論,希望它能幫助你調查它,並且我以管理員身份登錄運行Websphere。非常感謝。 – Matt

0

另一個典型問題是lotus.domino類可能無法找到notes.ini文件的路徑。 Notes客戶端通常將路徑放入桌面快捷方式的命令行中以避免此問題。嘗試將包含notes.ini文件的文件夾添加到PATH環境變量中。

+0

謝謝,理查德。我也嘗試將包含notes.ini的文件夾放到PATH中。但問題依然存在。 – Matt

+0

嗨,理查德,請看看我上面的評論,希望它能幫助你進行調查。非常感謝。 – Matt

0

檢查您的導入。你應該從lotus.domino包中導入類。您的問題在於使用錯誤的類(來自lotus.domino.local包),這些類需要在代碼運行的機器上安裝Notes客戶機。這就是爲什麼它可以在Tomcat上運行(本地,我假設)並且無法部署。

您需要的是使用CORBA/DIIOP從代碼訪問Domino。改變你的代碼以相應地獲得會話。

+1

他表示他確實安裝了Notes客戶機,因此他不需要使用NCSO.jar(CORBA/IIOP)類。 –

0

請ASIGN郵件ID與像 '\ XXXXX \ XXX \ xxx.id' 網絡路徑,並確保您的服務帳戶可以訪問該位置。