You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@isis.apache.org by ah...@apache.org on 2020/01/28 06:17:17 UTC
[isis] 01/02: ISIS-2158: make the generated swagger-spec
context-path aware
This is an automated email from the ASF dual-hosted git repository.
ahuber pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/isis.git
commit 2680f78535ed381b178ba28ae9377eb5282b5194
Author: Andi Huber <ah...@apache.org>
AuthorDate: Tue Jan 28 07:13:21 2020 +0100
ISIS-2158: make the generated swagger-spec context-path aware
---
.../rendering/service/swagger/SwaggerServiceDefault.java | 16 ++++++++++++----
.../viewer/src/main/resources/swagger-ui/index.thtml | 1 +
2 files changed, 13 insertions(+), 4 deletions(-)
diff --git a/viewers/restfulobjects/rendering/src/main/java/org/apache/isis/viewer/restfulobjects/rendering/service/swagger/SwaggerServiceDefault.java b/viewers/restfulobjects/rendering/src/main/java/org/apache/isis/viewer/restfulobjects/rendering/service/swagger/SwaggerServiceDefault.java
index 4ae749a..0fa6739 100644
--- a/viewers/restfulobjects/rendering/src/main/java/org/apache/isis/viewer/restfulobjects/rendering/service/swagger/SwaggerServiceDefault.java
+++ b/viewers/restfulobjects/rendering/src/main/java/org/apache/isis/viewer/restfulobjects/rendering/service/swagger/SwaggerServiceDefault.java
@@ -28,9 +28,13 @@ import org.springframework.stereotype.Service;
import org.apache.isis.applib.annotation.OrderPrecedence;
import org.apache.isis.applib.services.swagger.SwaggerService;
+import org.apache.isis.core.commons.internal.base._Strings;
import org.apache.isis.core.config.RestEasyConfiguration;
+import org.apache.isis.core.config.viewer.wicket.WebAppContextPath;
import org.apache.isis.viewer.restfulobjects.rendering.service.swagger.internal.SwaggerSpecGenerator;
+import lombok.val;
+
@Service
@Named("isisMetaModel.swaggerServiceDefault")
@Order(OrderPrecedence.MIDPOINT)
@@ -39,16 +43,20 @@ import org.apache.isis.viewer.restfulobjects.rendering.service.swagger.internal.
public class SwaggerServiceDefault implements SwaggerService {
private final SwaggerSpecGenerator swaggerSpecGenerator;
- private final RestEasyConfiguration restEasyConfiguration;
private final String basePath;
@Inject
public SwaggerServiceDefault(
final SwaggerSpecGenerator swaggerSpecGenerator,
- final RestEasyConfiguration restEasyConfiguration) {
+ final RestEasyConfiguration restEasyConfiguration,
+ final WebAppContextPath webAppContextPath) {
+
this.swaggerSpecGenerator = swaggerSpecGenerator;
- this.restEasyConfiguration = restEasyConfiguration;
- basePath = this.restEasyConfiguration.getJaxrs().getDefaultPath() + "/";
+
+ val restfulPath = restEasyConfiguration.getJaxrs().getDefaultPath();
+ val restfulBase = webAppContextPath.prependContextPath(restfulPath);
+
+ this.basePath = _Strings.suffix(restfulBase, "/");
}
@Override
diff --git a/viewers/restfulobjects/viewer/src/main/resources/swagger-ui/index.thtml b/viewers/restfulobjects/viewer/src/main/resources/swagger-ui/index.thtml
index b4ef86c..ea39b68 100644
--- a/viewers/restfulobjects/viewer/src/main/resources/swagger-ui/index.thtml
+++ b/viewers/restfulobjects/viewer/src/main/resources/swagger-ui/index.thtml
@@ -31,6 +31,7 @@
</head>
<body>
+ <!-- template variables are filled in by the TemplateResourceServlet -->
<div id="swagger-ui"></div>