[Domino]Tomcat 需要 NCSO.jar 來定位 Domino 異常
編寫者
|
日期
|
關鍵詞
|
鄭昀
@ultrapower
|
2005-6-15
|
Java Tomcat Axis NotesFactory
|
現象
我試圖從
Web Service
訪問
Domino
。
Web Service
的構建方法是:
Axis+Tomcat
,在
Eclipse
中加入了
tomcatPluginV31beta
插件,從而很容易地發布基于
Axis
的
Java Web Service
。
但是,當訪問
web service
時,
NotesFactory.createSession
卻總是無疾而終。加上了
catch(NotesException e)
{}
后,頁面報告
500
錯誤,在
Tomcat 5.0\logs\stdout.log
看到如下錯誤:
Log
提示:
|
Exception:
java.lang.NoClassDefFoundError: lotus/domino/NotesException
??????
at java.lang.Class.forName0(Native Method)
??????
at java.lang.Class.forName(Unknown Source)
??????
at org.apache.axis.utils.ClassUtils$2.run(ClassUtils.java:176)
??????
at java.security.AccessController.doPrivileged(Native Method)
??????
at org.apache.axis.utils.ClassUtils.loadClass(ClassUtils.java:160)
|
換成推薦的捕獲
Notes
異常的辦法:
catch(Exception e)
??????
???
{
??????
???
??????
if(e instanceof lotus.domino.NotesException)
??????
???
??????
{
??????
???
?????????????
System.out.println(
??????
???
???????????????????????????
"
通過
CORBA
訪問數據庫發生錯誤,錯誤代碼為
"
??????
???
?????????????
????????
+((lotus.domino.NotesException)e).id);
??????
???
??????
}
??????
???????
e.printStackTrace();
??????
???????
System.out.println(e.getLocalizedMessage());
??????
???
}
,一點作用都沒有,連錯誤都不報告了。
解決辦法
java.lang.NoClassDefFoundError
根據
java.lang.NoClassDefFoundError
說明沒有能夠在指定的路徑下找到
jar
包,于是我把
NCSO.jar
直接放入
Tomcat 5.0\common\lib
下。重新啟動
Tomcat
,再次訪問
Web Service
,于是真正的錯誤就出來了:
Log
提示:
|
通過
CORBA
訪問數據庫發生錯誤,錯誤代碼為
4457
NotesException:
Could not get IOR from Domino Server: java.net.UnknownHostException: tian da hai
??????
at lotus.domino.NotesFactory.requestIOR(Unknown Source)
??????
at lotus.domino.NotesFactory.getIOR(Unknown Source)
??????
at lotus.domino.NotesFactory.createSessionC(Unknown Source)
??????
at lotus.domino.NotesFactory.createSession(Unknown Source)
??????
at com.ultrapower.domino.view.GetMailCount(view.java:48)
??????
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
??????
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
??????
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
??????
at java.lang.reflect.Method.invoke(Unknown Source)
??????
。。。。。。。
|
當然也可以把
NCSO.jar
所在路徑加入
CLASSPATH
。
雖然是一個很小的細節,但還是寫下來了
。
編寫者
|
日期
|
關鍵詞
|
鄭昀
@ultrapower
|
2005-6-15
|
Java Tomcat Axis NotesFactory
|
更多文章、技術交流、商務合作、聯系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號聯系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
