[ https://issues.apache.org/jira/browse/CXF-7746?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Dennis Kieselhorst resolved CXF-7746. ------------------------------------- Resolution: Fixed Thanks for you contribution. I've merged the changes, will be part of the next release. > Swagger2Feature - SwaggerUiResolver & JBoss 7.0 EAP > --------------------------------------------------- > > Key: CXF-7746 > URL: https://issues.apache.org/jira/browse/CXF-7746 > Project: CXF > Issue Type: Bug > Components: JAX-RS > Affects Versions: 3.2.4 > Reporter: Etienne Dumont > Assignee: Dennis Kieselhorst > Priority: Major > Fix For: 3.2.5 > > > Hi, > Same problem as CXF-7474, but for JBoss EAP 7.0 & CXF 3.2.4. > The SwaggerUiResolver is not able to find the swagger-ui jar, included in our > war via maven; the path returned by the class loader ends with ".jar/" > instead of the expected ".jar" or ".jar!/". > To bypass the problem, we modified the checkUiRoot as follow: > {code:java} > // Artifact: cxf-rt-rs-service-description-swagger > // Class: org.apache.cxf.jaxrs.swagger.SwaggerUiResolver > protected static String checkUiRoot(String urlStr, String swaggerUiVersion) > { > int swaggerUiIndex = urlStr.lastIndexOf("/swagger-ui-"); > if (swaggerUiIndex != -1) > { > boolean urlEndsWithJarSep = urlStr.endsWith(".jar!/"); > int offset = -1; > if (urlEndsWithJarSep || urlStr.endsWith(".jar")) > { > offset = urlEndsWithJarSep ? 6 : 4; > } > else if (urlStr.endsWith(".jar/")) > { > offset = 5; > urlEndsWithJarSep = true; > } > if (offset > -1) > { > String version = urlStr.substring(swaggerUiIndex + 12, urlStr.length() > - offset); > if (swaggerUiVersion != null && !swaggerUiVersion.equals(version)) > { > return null; > } > else > { > if (!urlEndsWithJarSep) > { > urlStr = "jar:" + urlStr + "!/"; > } > return urlStr + "META-INF/resources/webjars/swagger-ui/" + version + > "/"; > } > } > } > return null; > } > {code} > -- This message was sent by Atlassian JIRA (v7.6.3#76005)