diff --git a/src/main/resources/META-INF/frontpage.html b/gcube/extra-resources/META-INF/frontpage.html
similarity index 100%
rename from src/main/resources/META-INF/frontpage.html
rename to gcube/extra-resources/META-INF/frontpage.html
diff --git a/src/main/resources/META-INF/services/javax.servlet.ServletContainerInitializer b/gcube/extra-resources/META-INF/services/javax.servlet.ServletContainerInitializer
similarity index 100%
rename from src/main/resources/META-INF/services/javax.servlet.ServletContainerInitializer
rename to gcube/extra-resources/META-INF/services/javax.servlet.ServletContainerInitializer
diff --git a/pom.xml b/pom.xml
index fab527a..d290cb7 100644
--- a/pom.xml
+++ b/pom.xml
@@ -5,7 +5,7 @@
maven-parent
org.gcube.tools
- 1.1.0
+ 1.2.0
org.gcube.core
@@ -24,7 +24,7 @@
- 8.0.42
+ 9.0.85
UTF-8
11
11
diff --git a/src/main/java/org/gcube/smartgears/managers/ApplicationManager.java b/src/main/java/org/gcube/smartgears/managers/ApplicationManager.java
index 175ac93..2e0a395 100644
--- a/src/main/java/org/gcube/smartgears/managers/ApplicationManager.java
+++ b/src/main/java/org/gcube/smartgears/managers/ApplicationManager.java
@@ -81,10 +81,6 @@ public class ApplicationManager {
ApplicationHandlers handlers = provider().handlersFor(context);
- /*
- extensions = provider().extensionsFor(context);
- extensions.validate();
- */
List lifecycleHandlers = handlers.lifecycleHandlers();
List requestHandlers = handlers.requestHandlers();
@@ -99,7 +95,7 @@ public class ApplicationManager {
registerExtension(extensions);
// then intercept them all
- registerHandlers(requestHandlers);
+ registerHandlersAsFilter(requestHandlers);
// start lifecycle management
start(lifecycleHandlers);
@@ -171,29 +167,18 @@ public class ApplicationManager {
}
- private void registerHandlers(List rqHandlers) {
+ private void registerHandlersAsFilter(List rqHandlers) {
ServletContext app = context.application();
- // attach filters based on request pipeline to each servlet
- Collection extends ServletRegistration> servlets = app.getServletRegistrations().values();
+ String appName = app.getContextPath().replace("/", "");
+
+ RequestManager requestFilter = new RequestManager(context, appName, rqHandlers);
- for (ServletRegistration servlet : servlets) {
+ FilterRegistration.Dynamic filter = app.addFilter(appName + "-filter", requestFilter);
- String name = servlet.getName();
+ filter.addMappingForUrlPatterns(null, false, "/*");
- if (name.equals("default") || name.equals("jsp")) // skip page-resolving servlets
- continue;
-
- for (String mapping : servlet.getMappings()) {
-
- RequestManager requestFilter = new RequestManager(context, name, rqHandlers);
-
- FilterRegistration.Dynamic filter = app.addFilter(name + "-filter-"+mapping.replaceAll("/", ""), requestFilter);
-
- filter.addMappingForUrlPatterns(null, false, mapping);
- }
- }
}
private void registerExtension(List extensions) {
diff --git a/src/main/java/org/gcube/smartgears/managers/RequestManager.java b/src/main/java/org/gcube/smartgears/managers/RequestManager.java
index 4e0414d..4bf17c8 100644
--- a/src/main/java/org/gcube/smartgears/managers/RequestManager.java
+++ b/src/main/java/org/gcube/smartgears/managers/RequestManager.java
@@ -66,7 +66,9 @@ public class RequestManager implements Filter {
HttpServletRequest httprequest = (HttpServletRequest) request;
HttpServletResponse httpresponse = (HttpServletResponse) response;
-
+
+ log.warn("request filter for app {} applied to {}", this.servlet, httprequest.getServletContext().getContextPath());
+
List filterHandlers = getPipelineHandlers(httprequest, handlers);
if (filterHandlers.isEmpty()){
diff --git a/src/main/resources/META-INF/.gitignore b/src/main/resources/META-INF/.gitignore
deleted file mode 100644
index b5c4b2d..0000000
--- a/src/main/resources/META-INF/.gitignore
+++ /dev/null
@@ -1 +0,0 @@
-/smartgears-config.xml