4.到myfaces項目網站http://myfaces.apache.org/,下載與客戶應用同一版本的最簡單的sample應用myfaces-example-simple-1.1.9.war,在WAS上安裝進行測試,頁面無法顯示,進行第1步更改類加載路徑也無法顯示。檢查myfaces-example-simple-1.1.9.war的lib目錄,刪除掉xml-apis-1.0.b2.jar和xmlParserAPIs-2.0.2.jar包,運行成功。
5.回到客戶應用,刪除掉xml-apis-1.0.b2.jar和xmlParserAPIs-2.0.2.jar,更改類加載路徑,頁面正常顯示。
6.如果實際診斷中,能夠明確斷定是某個類的加載出了問題,可以打開“詳細類裝入”:選擇“應用程序服務器/server1/進程定義/Java虛擬機”,選擇“詳細類裝入”如下圖:

重啟WAS之后,在native_stderr.log中,可以看到類的加載信息,例如:
class load: org.apache.taglibs.standard.tlv.JstlBaseTLV from: file:/D:/Program/was61/AppServer/profiles/TestProfile/installedApps/wdanNode02Cell/myfaces-example-simple-1_1_9_war.ear/myfaces-example-simple-1.1.9.war/WEB-INF/lib/jstl-1.2.jar
如果還需要類加載的更詳細信息,可以在診斷跟蹤中設置 *=info: com.ibm.ws.classloader.*=all,具體做法為:登陸管理控制臺,左邊導航樹選擇“故障診斷/日志和跟蹤”,然后在右面區域選擇進程名(單機環境通常為server1)/診斷跟蹤,然后選擇“更改日志詳細信息級別”,設置“*=info: com.ibm.ws.classloader.*=all”,保存。


重啟WAS。在profile_root/logs/server1/trace.log中,就可以看到類加載的詳細信息。例如:
> loadClass name=com.ibm.isclite.container.collaborator.PortletServletCollaborator
…
com.ibm.ws.classloader.CompoundClassLoader@3f603f6
Local ClassPath: D:\Program\was61\AppServer\systemApps\isclite.ear\struts.jar;
…
Delegation Mode: PARENT_FIRST
[09-12-31 11:39:18:671 CST] 0000000a CompoundClass < loadClass Exit
需要注意的是,開源項目為應用開發節省了很多工作量,但開發人員使用開源項目時,最好對該開源項目的運行機制、代碼,以及要使用的應用服務器類加載機制有較好的理解,以便于錯誤診斷。