मैं अपने वसंत आरईएसटी आवेदन के साथ swagger-ui सेटअप करने की कोशिश कर रहा हूं। मैं वसंत 4.2.6.RELEASE और swagger कोर & ui 2.5.0 का उपयोग कर रहा हूँ। मैं स्वैगर एनोटेशन का उपयोग नहीं कर रहा हूं, वसंत आरईएसटी एनोटेशन लेने के लिए स्वैगर की उम्मीद कर रहा हूं।वसंत आवेदन: swagger-ui swagger-resource/config/ui पर HTTP GET क्यों करने में सक्षम नहीं है?
मैं एपीआई दस्तावेज़ उत्पन्न करने के लिए स्वैगर प्राप्त करने में सक्षम हूं और मैं इसे v2/api-docs के अंतर्गत देख सकता हूं।
मैं swagger-ui.html पृष्ठ पर क्लिक करने में सक्षम हूं लेकिन यह पृष्ठ पर कोई एपीआई-दस्तावेज़ या नियंत्रक जानकारी नहीं दिखाता है। ब्राउज़र पर डीबगर मोड को सक्षम करने पर मुझे लगता है कि "swagger-resource/config/ui" प्राप्त करने का प्रयास करते समय यह त्रुटियां हैं - 404 (नहीं मिला) देता है।
मैं अकड़-ui http://www.baeldung.com/swagger-2-documentation-for-spring-rest-api
स्थापित करने के लिए नीचे दिए गए लिंक का पालन किया है मैं ऊपर के लिंक में निर्दिष्ट लेकिन है कि या तो मदद नहीं की रूप में शुरू में सेटअप संसाधन हैंडलर था और मुझे एक ही 404 त्रुटि दे दी है। मैंने संसाधन हैंडलर को ट्वीव करने का प्रयास किया है, इसलिए देखें कि क्या यह swagger-ui swagger-resource/config/ui पर प्राप्त करने में मदद कर सकता है।
क्यों swagger-ui संसाधन swagger-resource/config/ui प्राप्त करने में सक्षम नहीं है?
मैंने नीचे अपने संसाधन हैंडलर सेट किए हैं।
SwaggerConfiguration
@Configuration
@EnableSwagger2
public class SwaggerConfiguration {
@Bean
public Docket api(){
return new Docket(DocumentationType.SWAGGER_2)
.select()
.apis(RequestHandlerSelectors.any())
.paths(PathSelectors.any())
.build();
//.apiInfo(apiInfo());
}
}
वेब कॉन्फ़िग फ़ाइल
@EnableWebMvc
@Configuration
@Import(SwaggerConfiguration.class)
@ComponentScan("com.bank.direct.services")
public class WebConfig extends WebMvcConfigurerAdapter {
@Override
public void configureMessageConverters(List<HttpMessageConverter<?>> pConverters) {
pConverters.add(RestUtils.getJSONMessageConverter());
}
@Override
public void addResourceHandlers(ResourceHandlerRegistry registry) {
registry.addResourceHandler("**/**").addResourceLocations("classpath:/META-INF/resources/");
registry
.addResourceHandler("swagger-ui.html")
.addResourceLocations("classpath:/META-INF/resources/swagger-ui.html");
registry
.addResourceHandler("/webjars/**")
.addResourceLocations("classpath:/META-INF/resources/webjars/");
}
}
मैं webapp के लिए एक SecurityConfig सेटअप करते हैं, लेकिन मैं सिर्फ मामले में न्यूनतम करने के लिए इसे रखा है यह किसी भी मुद्दे का कारण हो सकता है।
@EnableWebSecurity
@EnableGlobalMethodSecurity(prePostEnabled = true)
@Configuration
public class SecurityConfig extends WebSecurityConfigurerAdapter {
@Autowired
private AuthenticationService _authenticationService;
@Autowired
public void globalUserDetails(AuthenticationManagerBuilder pAuth) throws Exception {
pAuth.userDetailsService(_authenticationService);
}
@Override
protected void configure(HttpSecurity pHttp) throws Exception {
// Enable HTTP caching
pHttp.headers().cacheControl().disable();
// Configure security
pHttp.httpBasic()
// -- Allow unauthenticated request (must be done before allowing only authenticated requests)
.and()
.authorizeRequests()
.antMatchers("/rest/application/information/").permitAll();
}
मैं कुछ संसाधन मानचित्रण देखने के लिए जब आवेदन
2016-08-31 11:24:55 जानकारी शुरू होता है करना [स्थानीय होस्ट-startStop-1] RequestMappingHandlerMapping - मैप "{[/v2/api-docs], विधियों = [GET], उत्पादन = [एप्लिकेशन/जेसन || एप्लिकेशन/हॉल + जेसन]} "सार्वजनिक org.springframework.http.ResponseEntity springfox.documentation.swagger2.web पर। Swagger2Controller.getDocumentation (java.lang.String, javax.servlet.http.HttpServletRequest) 2016/08/31 11:24:55 जानकारी [स्थानीय होस्ट-startStop-1] RequestMappingHandlerMapping - मैप "{[/ अकड़-संसाधनों/विन्यास/सुरक्षा]}" org.springframework.http.ResponseEntity पर springfox.documentation .swagger.web.ApiResourceController.security कॉन्फ़िगरेशन() 2016-08-31 11:24:55 जानकारी [लोकलहोस्ट-स्टार्टस्टॉप -1] RequestMappingHandlerMapping - मैप किया गया "{[/ swagger-resource]}" org.springframework.http पर ResponseEntity> springfox.documentation.swagger.web.ApiResourceController।swaggerResources() 2016/08/31 11:24:55 जानकारी [स्थानीय होस्ट-startStop-1] RequestMappingHandlerMapping - मैप "{[/ अकड़-संसाधनों/विन्यास/ui]}" पर org.springframework.http .ResponseEntity springfox.documentation.swagger.web.ApiResourceController.uiConfiguration()
आप समस्या हल किया:
मैं निम्नलिखित (2.4.0 के रूप में अकड़-ui गाइड है) का इस्तेमाल किया? कृपया एक प्रतिक्रिया दें। –