Java 在为swagger服务描述呈现路径时,如何考虑servlet路径映射
我在配置swagger时遇到问题。当我在web.xml中为servlet指定链接时Java 在为swagger服务描述呈现路径时,如何考虑servlet路径映射,java,spring-mvc,jakarta-ee,swagger,swagger-ui,Java,Spring Mvc,Jakarta Ee,Swagger,Swagger Ui,我在配置swagger时遇到问题。当我在web.xml中为servlet指定链接时 <servlet-mapping> <servlet-name>appServlet</servlet-name> <url-pattern>/rest/*</url-pattern> </servlet-mapping> 看起来您使用的是springfox的2.0.0之前版本 这个解决方案有点棘手,而且没有经过真正的测试,所以不能保证它能
<servlet-mapping>
<servlet-name>appServlet</servlet-name>
<url-pattern>/rest/*</url-pattern>
</servlet-mapping>
看起来您使用的是springfox的2.0.0之前版本 这个解决方案有点棘手,而且没有经过真正的测试,所以不能保证它能正常工作,但值得一试
//注意:下面的代码只是强调相关代码段的大纲
@豆子
public-swagger-springmvcplugin插件(){
新大摇大摆的人(…)
//更多配置
.pathProvider(yourPathProvider());
}
私有SwaggerPathProvider yourPathProvider(){
SwaggerPathProvider pathProvider=新的RelativeSwaggerPathProvider(…);
pathProvider.setApiResourcePrefix(“/rest”);//我想你应该向我们展示你的swagger ui JS配置。@RC.我是JS的新手,它可以是什么文件?看,这与swagger ui配置无关。这与swagger springmvc/springfox中的basePath
配置有关(以@user3378876使用的为准)@RC.ok当我在url模式参数中指定not empty value时,它可以工作,但我无法测试,因为swagger编写url时没有使用value。例如:我指定url模式参数/rest/*并且swagger只显示/login而不是/rest/login,所以swagger ui无法正常工作
@Configuration
@EnableSwagger
public class DocumentationController extends WebMvcConfigurerAdapter {
private SpringSwaggerConfig springSwaggerConfig;
@Autowired
public void setSpringSwaggerConfig(SpringSwaggerConfig springSwaggerConfig) {
this.springSwaggerConfig = springSwaggerConfig;
}
@Bean
public SwaggerSpringMvcPlugin customImplementation() {
return new SwaggerSpringMvcPlugin(this.springSwaggerConfig).apiInfo(
apiInfo())
.genericModelSubstitutes(ResponseEntity.class)
.includePatterns("/.*");
}
private ApiInfo apiInfo() {
ApiInfo apiInfo = new ApiInfo("1-st Project's REST API",
"Write a description of REST API.",
"link",
"mail",
"API License",
"link");
return apiInfo;
}
}