【補充說明】如何在JavaWeb項目中集成Swagger-UI
原文地址:https://bbs.huaweicloud.com/forum/thread-6358-1-1.html

【問題描述】在使用軟開云接口測試的時候,導出swagger文檔,是個十分優(yōu)雅的操作。經(jīng)過實戰(zhàn),發(fā)現(xiàn)Swagger的API文檔,還是導不出來,經(jīng)過深入分析,將遇到的問題再總結(jié)了一下。
1、報告異常:
org.springframework.beans.factory.BeanCreationException:?Error?creating?bean?with?name?'org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter':?Instantiation?of?bean?failed
原因是com.fasterxml.jackson.core的版本號過低,將2.6.6修改為更高版本,例如2.9.6(目前最新),問題得到解決。
2、報告異常:
1
Unable?to?infer?base?url.?This?is?common?when?using?dynamic?servlet?registration?or?when?the?API?is?behind?an?API?Gateway.?The?base?url?is?the?root?of?where?all?the?swagger?resources?are?served.
這個問題的原因,網(wǎng)絡(luò)上的說明有很多,但終究是因為頁面訪問有問題。-出問題的可能性最大。不同系統(tǒng)的攔截方法,可能不盡相同,在這塊找問題,基本會解決。提供一點樣例代碼,僅供參考。
web.xml
1
2
3
4
-Java類中
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
/**
*?登錄校驗忽略swagger
*
*?@param?mapping
*????????????相關(guān)映射
*?@return
*?@author?Corpse
*?@since?2018-08-23?18:26
*/
private?boolean?swagger(String?mapping)
{
return?swaggerAccess?&&?XhString.equals(mapping,
"/swagger-resources/configuration/ui",
"/swagger-resources/configuration/security",
"/swagger-resources",
"/v2/api-docs");
}
注意:根據(jù)自己系統(tǒng)的實際情況,合理配置攔截規(guī)則。
解決這兩個問題之后,根據(jù)上面文檔中的描述,就可以得到你想要的頁面了。
軟件開發(fā)云
版權(quán)聲明:本文內(nèi)容由網(wǎng)絡(luò)用戶投稿,版權(quán)歸原作者所有,本站不擁有其著作權(quán),亦不承擔相應法律責任。如果您發(fā)現(xiàn)本站中有涉嫌抄襲或描述失實的內(nèi)容,請聯(lián)系我們jiasou666@gmail.com 處理,核實后本網(wǎng)站將在24小時內(nèi)刪除侵權(quán)內(nèi)容。
版權(quán)聲明:本文內(nèi)容由網(wǎng)絡(luò)用戶投稿,版權(quán)歸原作者所有,本站不擁有其著作權(quán),亦不承擔相應法律責任。如果您發(fā)現(xiàn)本站中有涉嫌抄襲或描述失實的內(nèi)容,請聯(lián)系我們jiasou666@gmail.com 處理,核實后本網(wǎng)站將在24小時內(nèi)刪除侵權(quán)內(nèi)容。