如何正確使用wsimport生成帶權(quán)限校驗(yàn)的wsdl客戶端代碼
wsimport工具簡介wsimport是JDK提供的一個(gè)基于wsdl文件生成客戶端代碼的工具。通常其使用步驟很清晰,但有些webservice使用了權(quán)限校驗(yàn)(即在瀏覽器訪問wsdl地址時(shí)需要提供用
wsimport工具簡介
wsimport是JDK提供的一個(gè)基于wsdl文件生成客戶端代碼的工具。通常其使用步驟很清晰,但有些webservice使用了權(quán)限校驗(yàn)(即在瀏覽器訪問wsdl地址時(shí)需要提供用戶名和密碼)。對于這種情況,就需要特殊處理才能成功生成客戶端代碼。
遇到權(quán)限校驗(yàn)問題
當(dāng)瀏覽器訪問帶權(quán)限校驗(yàn)的wsdl地址時(shí),會(huì)彈出一個(gè)對話框,要求輸入賬號和密碼進(jìn)行校驗(yàn)。只有通過校驗(yàn)后才能正常訪問該wsdl文件。
使用wsimport生成客戶端代碼
對于這種類型的wsdl文件,如果按照平常使用wsimport的方式來操作,會(huì)遇到報(bào)錯(cuò)情況。通常,wsimport命令的格式為:
```
wsimport -keep -s 工程的src文件夾 -p 目標(biāo)包名 -verbose wsdl路徑
```
解決權(quán)限校驗(yàn)問題
在報(bào)錯(cuò)信息中提示我們需要使用-Xauthfile參數(shù)來提供授權(quán)文件信息。授權(quán)文件的內(nèi)容格式應(yīng)符合一定規(guī)范,并且需要將-Xauthfile參數(shù)添加到wsimport命令中。最終構(gòu)建的命令串應(yīng)包含該參數(shù),如圖2所示。
重新執(zhí)行wsimport命令
經(jīng)過以上步驟處理后,再次執(zhí)行新構(gòu)建的wsimport命令,此時(shí)客戶端代碼生成成功(如圖1所示)!刷新工程后,工程的src目錄下會(huì)自動(dòng)創(chuàng)建目標(biāo)包,并包含根據(jù)wsdl自動(dòng)生成的客戶端類。
通過以上方法,我們可以成功處理帶權(quán)限校驗(yàn)的wsdl文件,使用wsimport生成客戶端代碼。這個(gè)技巧可以幫助開發(fā)者順利應(yīng)對具有權(quán)限校驗(yàn)要求的webservice接口的情況,提高工作效率。