This is an automated email from the ASF dual-hosted git repository.

ahuber pushed a commit to branch spring6
in repository https://gitbox.apache.org/repos/asf/isis.git

commit 512a96d2f11f1e42cbf55119c66f8ac999797f4b
Author: Andi Huber <[email protected]>
AuthorDate: Sun Nov 27 08:48:40 2022 +0100

    ISIS-3275: testing: resteasy provisioning fixes
---
 .../causeway/testdomain/rest/RestServiceTest.java  |  12 +-
 .../conf/Configuration_usingSpring6.java           | 150 +++++++++++++++++++++
 .../resources/DomainObjectResourceServerside.java  |   7 +-
 .../resources/DomainServiceResourceServerside.java |   7 +-
 .../resources/DomainTypeResourceServerside.java    |   7 +-
 .../resources/HomePageResourceServerside.java      |   7 +-
 .../viewer/resources/ImageResourceServerside.java  |   7 +-
 .../resources/MenuBarsResourceServerside.java      |   7 +-
 .../viewer/resources/SwaggerSpecResource.java      |   4 +-
 .../viewer/resources/UserResourceServerside.java   |   7 +-
 .../resources/VersionResourceServerside.java       |   7 +-
 11 files changed, 189 insertions(+), 33 deletions(-)

diff --git 
a/regressiontests/stable-rest/src/test/java/org/apache/causeway/testdomain/rest/RestServiceTest.java
 
b/regressiontests/stable-rest/src/test/java/org/apache/causeway/testdomain/rest/RestServiceTest.java
index 2f6711301c..88ecbf9287 100644
--- 
a/regressiontests/stable-rest/src/test/java/org/apache/causeway/testdomain/rest/RestServiceTest.java
+++ 
b/regressiontests/stable-rest/src/test/java/org/apache/causeway/testdomain/rest/RestServiceTest.java
@@ -18,6 +18,9 @@
  */
 package org.apache.causeway.testdomain.rest;
 
+import jakarta.inject.Inject;
+import jakarta.xml.bind.JAXBException;
+
 import org.junit.jupiter.api.Assertions;
 import org.junit.jupiter.api.Test;
 import org.springframework.boot.test.context.SpringBootTest;
@@ -31,16 +34,13 @@ import static org.junit.jupiter.api.Assertions.assertTrue;
 
 import org.apache.causeway.core.config.presets.CausewayPresets;
 import org.apache.causeway.testdomain.conf.Configuration_usingJdo;
+import org.apache.causeway.testdomain.conf.Configuration_usingSpring6;
 import org.apache.causeway.testdomain.jdo.JdoInventoryJaxbVm;
 import org.apache.causeway.testdomain.jdo.JdoTestFixtures;
 import org.apache.causeway.testdomain.jdo.entities.JdoBook;
 import org.apache.causeway.testdomain.util.rest.RestEndpointService;
-import 
org.apache.causeway.testing.fixtures.applib.fixturescripts.ExecutionParametersServiceAutoConfiguration;
-import 
org.apache.causeway.testing.fixtures.applib.fixturescripts.FixtureScriptsSpecificationProviderAutoConfiguration;
 import 
org.apache.causeway.viewer.restfulobjects.jaxrsresteasy.CausewayModuleViewerRestfulObjectsJaxrsResteasy;
 
-import jakarta.inject.Inject;
-import jakarta.xml.bind.JAXBException;
 import lombok.val;
 
 @SpringBootTest(
@@ -48,11 +48,9 @@ import lombok.val;
         webEnvironment = SpringBootTest.WebEnvironment.RANDOM_PORT)
 @TestPropertySource(CausewayPresets.UseLog4j2Test)
 @Import({
+    Configuration_usingSpring6.class,
     Configuration_usingJdo.class,
     CausewayModuleViewerRestfulObjectsJaxrsResteasy.class,
-
-    FixtureScriptsSpecificationProviderAutoConfiguration.class, // because 
something? disables autoconfiguration
-    ExecutionParametersServiceAutoConfiguration.class           // because 
something? disables autoconfiguration
 })
 class RestServiceTest {
 
diff --git 
a/regressiontests/stable/src/main/java/org/apache/causeway/testdomain/conf/Configuration_usingSpring6.java
 
b/regressiontests/stable/src/main/java/org/apache/causeway/testdomain/conf/Configuration_usingSpring6.java
new file mode 100644
index 0000000000..c159817845
--- /dev/null
+++ 
b/regressiontests/stable/src/main/java/org/apache/causeway/testdomain/conf/Configuration_usingSpring6.java
@@ -0,0 +1,150 @@
+/*
+ *  Licensed to the Apache Software Foundation (ASF) under one
+ *  or more contributor license agreements.  See the NOTICE file
+ *  distributed with this work for additional information
+ *  regarding copyright ownership.  The ASF licenses this file
+ *  to you under the Apache License, Version 2.0 (the
+ *  "License"); you may not use this file except in compliance
+ *  with the License.  You may obtain a copy of the License at
+ *
+ *        http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *  Unless required by applicable law or agreed to in writing,
+ *  software distributed under the License is distributed on an
+ *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ *  KIND, either express or implied.  See the License for the
+ *  specific language governing permissions and limitations
+ *  under the License.
+ */
+package org.apache.causeway.testdomain.conf;
+
+import java.util.Set;
+
+import jakarta.servlet.Servlet;
+import jakarta.servlet.ServletContainerInitializer;
+
+import org.jboss.resteasy.plugins.server.servlet.HttpServlet30Dispatcher;
+import org.jboss.resteasy.plugins.server.servlet.ResteasyContextParameters;
+import org.jboss.resteasy.plugins.servlet.ResteasyServletInitializer;
+import org.jboss.resteasy.springboot.ResteasyEmbeddedServletInitializer;
+import org.springframework.boot.web.servlet.ServletRegistrationBean;
+import org.springframework.context.annotation.Bean;
+import org.springframework.context.annotation.Configuration;
+import org.springframework.context.annotation.Import;
+
+import 
org.apache.causeway.testing.fixtures.applib.fixturescripts.ExecutionParametersServiceAutoConfiguration;
+import 
org.apache.causeway.testing.fixtures.applib.fixturescripts.FixtureScriptsSpecificationProviderAutoConfiguration;
+
+import lombok.extern.log4j.Log4j2;
+
+/**
+ * Introduced for the purpose of troubleshooting Spring 5.x to 6.x migration 
issues.
+ * @deprecated marked deprecated, to be removed once no longer needed
+ */
+@Deprecated(forRemoval = true)
+@Configuration
+@Import({
+    ResteasyEmbeddedServletInitializer.class, //FIXME[ISIS-3275] move up the 
hierarchy?
+    FixtureScriptsSpecificationProviderAutoConfiguration.class, // because 
something? disables autoconfiguration
+    ExecutionParametersServiceAutoConfiguration.class           // because 
something? disables autoconfiguration
+})
+@Log4j2
+public class Configuration_usingSpring6 {
+
+    /**
+     * This class is the Spring Boot equivalent of {@link 
ResteasyServletInitializer},
+     * which implements the Servlet API {@link ServletContainerInitializer} 
interface
+     * to find all JAX-RS Application, Provider and Path classes in the 
classpath.
+     * <p>
+     * As we all know, in Spring Boot we use an embedded servlet container. 
However,
+     * the Servlet spec does not support embedded containers, and many 
portions of it
+     * do not apply to embedded containers, and ServletContainerInitializer is 
one of them.
+     * <p>
+     * This class fills in this gap.
+     * <p>
+     * Notice that the JAX-RS Application classes are found in this RESTEasy 
starter by class
+     * ResteasyEmbeddedServletInitializer, and that is done by scanning the 
classpath.
+     * <p>
+     * The Path and Provider annotated classes are found by using Spring 
framework (instead of
+     * scanning the classpath), since it is assumed those classes are ALWAYS 
necessarily
+     * Spring beans (this starter is meant for Spring Boot applications that 
use RESTEasy
+     * as the JAX-RS implementation)
+     *
+     * @see 
"https://github.com/paypal/resteasy-spring-boot/blob/master/resteasy-spring-boot-starter/src/main/java/com/paypal/springboot/resteasy/ResteasyApplicationBuilder.java";
+     */
+    public static class ResteasyApplicationBuilder {
+
+        public static final String BEAN_NAME = 
"JaxrsApplicationServletBuilder";
+
+        public ServletRegistrationBean<Servlet> build(
+                final String applicationClassName,
+                final String path,
+                final Set<Class<?>> resources,
+                final Set<Class<?>> providers) {
+            Servlet servlet = new HttpServlet30Dispatcher();
+
+            ServletRegistrationBean<Servlet> servletRegistrationBean = new 
ServletRegistrationBean<Servlet>(servlet);
+
+            servletRegistrationBean.setName(applicationClassName);
+            servletRegistrationBean.setLoadOnStartup(1);
+            servletRegistrationBean.setAsyncSupported(true);
+            
servletRegistrationBean.addInitParameter("javax.ws.rs.Application", 
applicationClassName);
+
+            if (path != null) {
+                String mapping = path;
+                if (!mapping.startsWith("/"))
+                    mapping = "/" + mapping;
+                String prefix = mapping;
+                if (!"/".equals(prefix) && prefix.endsWith("/"))
+                    prefix = prefix.substring(0, prefix.length() - 1);
+                if (mapping.endsWith("/"))
+                    mapping += "*";
+                else
+                    mapping += "/*";
+                // resteasy.servlet.mapping.prefix
+                
servletRegistrationBean.addInitParameter("resteasy.servlet.mapping.prefix", 
prefix);
+                servletRegistrationBean.addUrlMappings(mapping);
+            }
+
+            if (resources.size() > 0) {
+                StringBuilder builder = new StringBuilder();
+                boolean first = true;
+                for (Class<?> resource : resources) {
+                    if (first) {
+                        first = false;
+                    } else {
+                        builder.append(",");
+                    }
+
+                    builder.append(resource.getName());
+                }
+                
servletRegistrationBean.addInitParameter(ResteasyContextParameters.RESTEASY_SCANNED_RESOURCES,
 builder.toString());
+            }
+            if (providers.size() > 0) {
+                StringBuilder builder = new StringBuilder();
+                boolean first = true;
+                for (Class<?> provider : providers) {
+                    if (first) {
+                        first = false;
+                    } else {
+                        builder.append(",");
+                    }
+                    builder.append(provider.getName());
+                }
+                
servletRegistrationBean.addInitParameter(ResteasyContextParameters.RESTEASY_SCANNED_PROVIDERS,
 builder.toString());
+            }
+
+            log.debug("ServletRegistrationBean has just bean created for 
JAX-RS class " + applicationClassName);
+
+            return servletRegistrationBean;
+        }
+
+    }
+
+
+    @Bean(name = "JaxrsApplicationServletBuilder")
+    public ResteasyApplicationBuilder resteasyApplicationBuilder() {
+        return new ResteasyApplicationBuilder();
+    }
+
+}
diff --git 
a/viewers/restfulobjects/viewer/src/main/java/org/apache/causeway/viewer/restfulobjects/viewer/resources/DomainObjectResourceServerside.java
 
b/viewers/restfulobjects/viewer/src/main/java/org/apache/causeway/viewer/restfulobjects/viewer/resources/DomainObjectResourceServerside.java
index c4897ddc8d..0575b560a4 100644
--- 
a/viewers/restfulobjects/viewer/src/main/java/org/apache/causeway/viewer/restfulobjects/viewer/resources/DomainObjectResourceServerside.java
+++ 
b/viewers/restfulobjects/viewer/src/main/java/org/apache/causeway/viewer/restfulobjects/viewer/resources/DomainObjectResourceServerside.java
@@ -32,6 +32,7 @@ import jakarta.ws.rs.Path;
 import jakarta.ws.rs.PathParam;
 import jakarta.ws.rs.Produces;
 import jakarta.ws.rs.QueryParam;
+import jakarta.ws.rs.core.Context;
 import jakarta.ws.rs.core.MediaType;
 import jakarta.ws.rs.core.Response;
 
@@ -83,9 +84,9 @@ implements DomainObjectResource {
 
     @Inject
     public DomainObjectResourceServerside(
-            final MetaModelContext metaModelContext,
-            final CausewayConfiguration causewayConfiguration,
-            final InteractionLayerTracker iInteractionLayerTracker) {
+            final @Context MetaModelContext metaModelContext,
+            final @Context CausewayConfiguration causewayConfiguration,
+            final @Context InteractionLayerTracker iInteractionLayerTracker) {
         super(metaModelContext, causewayConfiguration, 
iInteractionLayerTracker);
         log.debug("<init>");
     }
diff --git 
a/viewers/restfulobjects/viewer/src/main/java/org/apache/causeway/viewer/restfulobjects/viewer/resources/DomainServiceResourceServerside.java
 
b/viewers/restfulobjects/viewer/src/main/java/org/apache/causeway/viewer/restfulobjects/viewer/resources/DomainServiceResourceServerside.java
index 6a4486de52..94f9118af8 100644
--- 
a/viewers/restfulobjects/viewer/src/main/java/org/apache/causeway/viewer/restfulobjects/viewer/resources/DomainServiceResourceServerside.java
+++ 
b/viewers/restfulobjects/viewer/src/main/java/org/apache/causeway/viewer/restfulobjects/viewer/resources/DomainServiceResourceServerside.java
@@ -32,6 +32,7 @@ import jakarta.ws.rs.Path;
 import jakarta.ws.rs.PathParam;
 import jakarta.ws.rs.Produces;
 import jakarta.ws.rs.QueryParam;
+import jakarta.ws.rs.core.Context;
 import jakarta.ws.rs.core.MediaType;
 import jakarta.ws.rs.core.Response;
 
@@ -72,9 +73,9 @@ implements DomainServiceResource {
 
     @Inject
     public DomainServiceResourceServerside(
-            final MetaModelContext metaModelContext,
-            final CausewayConfiguration causewayConfiguration,
-            final InteractionLayerTracker iInteractionLayerTracker) {
+            final @Context MetaModelContext metaModelContext,
+            final @Context CausewayConfiguration causewayConfiguration,
+            final @Context InteractionLayerTracker iInteractionLayerTracker) {
         super(metaModelContext, causewayConfiguration, 
iInteractionLayerTracker);
         log.debug("<init>");
     }
diff --git 
a/viewers/restfulobjects/viewer/src/main/java/org/apache/causeway/viewer/restfulobjects/viewer/resources/DomainTypeResourceServerside.java
 
b/viewers/restfulobjects/viewer/src/main/java/org/apache/causeway/viewer/restfulobjects/viewer/resources/DomainTypeResourceServerside.java
index 734c20b1ae..aafd8cc65e 100644
--- 
a/viewers/restfulobjects/viewer/src/main/java/org/apache/causeway/viewer/restfulobjects/viewer/resources/DomainTypeResourceServerside.java
+++ 
b/viewers/restfulobjects/viewer/src/main/java/org/apache/causeway/viewer/restfulobjects/viewer/resources/DomainTypeResourceServerside.java
@@ -26,6 +26,7 @@ import jakarta.ws.rs.Path;
 import jakarta.ws.rs.PathParam;
 import jakarta.ws.rs.Produces;
 import jakarta.ws.rs.QueryParam;
+import jakarta.ws.rs.core.Context;
 import jakarta.ws.rs.core.MediaType;
 import jakarta.ws.rs.core.Response;
 
@@ -84,9 +85,9 @@ implements DomainTypeResource {
 
     @Inject
     public DomainTypeResourceServerside(
-            final MetaModelContext metaModelContext,
-            final CausewayConfiguration causewayConfiguration,
-            final InteractionLayerTracker iInteractionLayerTracker) {
+            final @Context MetaModelContext metaModelContext,
+            final @Context CausewayConfiguration causewayConfiguration,
+            final @Context InteractionLayerTracker iInteractionLayerTracker) {
         super(metaModelContext, causewayConfiguration, 
iInteractionLayerTracker);
         log.debug("<init>");
     }
diff --git 
a/viewers/restfulobjects/viewer/src/main/java/org/apache/causeway/viewer/restfulobjects/viewer/resources/HomePageResourceServerside.java
 
b/viewers/restfulobjects/viewer/src/main/java/org/apache/causeway/viewer/restfulobjects/viewer/resources/HomePageResourceServerside.java
index 594d33e2c9..10aa4ea9e7 100644
--- 
a/viewers/restfulobjects/viewer/src/main/java/org/apache/causeway/viewer/restfulobjects/viewer/resources/HomePageResourceServerside.java
+++ 
b/viewers/restfulobjects/viewer/src/main/java/org/apache/causeway/viewer/restfulobjects/viewer/resources/HomePageResourceServerside.java
@@ -22,6 +22,7 @@ import jakarta.inject.Inject;
 import jakarta.ws.rs.GET;
 import jakarta.ws.rs.Path;
 import jakarta.ws.rs.Produces;
+import jakarta.ws.rs.core.Context;
 import jakarta.ws.rs.core.MediaType;
 import jakarta.ws.rs.core.Response;
 
@@ -53,9 +54,9 @@ implements HomePageResource {
 
     @Inject
     public HomePageResourceServerside(
-            final MetaModelContext metaModelContext,
-            final CausewayConfiguration causewayConfiguration,
-            final InteractionLayerTracker iInteractionLayerTracker) {
+            final @Context MetaModelContext metaModelContext,
+            final @Context CausewayConfiguration causewayConfiguration,
+            final @Context InteractionLayerTracker iInteractionLayerTracker) {
         super(metaModelContext, causewayConfiguration, 
iInteractionLayerTracker);
         log.debug("<init>");
     }
diff --git 
a/viewers/restfulobjects/viewer/src/main/java/org/apache/causeway/viewer/restfulobjects/viewer/resources/ImageResourceServerside.java
 
b/viewers/restfulobjects/viewer/src/main/java/org/apache/causeway/viewer/restfulobjects/viewer/resources/ImageResourceServerside.java
index 822791e269..4d479b7bbc 100644
--- 
a/viewers/restfulobjects/viewer/src/main/java/org/apache/causeway/viewer/restfulobjects/viewer/resources/ImageResourceServerside.java
+++ 
b/viewers/restfulobjects/viewer/src/main/java/org/apache/causeway/viewer/restfulobjects/viewer/resources/ImageResourceServerside.java
@@ -25,6 +25,7 @@ import jakarta.inject.Inject;
 import jakarta.ws.rs.GET;
 import jakarta.ws.rs.Path;
 import jakarta.ws.rs.Produces;
+import jakarta.ws.rs.core.Context;
 import jakarta.ws.rs.core.Response;
 
 import org.springframework.stereotype.Component;
@@ -44,9 +45,9 @@ public class ImageResourceServerside extends ResourceAbstract 
{
 
     @Inject
     public ImageResourceServerside(
-            final MetaModelContext metaModelContext,
-            final CausewayConfiguration causewayConfiguration,
-            final InteractionLayerTracker iInteractionLayerTracker) {
+            final @Context MetaModelContext metaModelContext,
+            final @Context CausewayConfiguration causewayConfiguration,
+            final @Context InteractionLayerTracker iInteractionLayerTracker) {
         super(metaModelContext, causewayConfiguration, 
iInteractionLayerTracker);
         log.debug("<init>");
     }
diff --git 
a/viewers/restfulobjects/viewer/src/main/java/org/apache/causeway/viewer/restfulobjects/viewer/resources/MenuBarsResourceServerside.java
 
b/viewers/restfulobjects/viewer/src/main/java/org/apache/causeway/viewer/restfulobjects/viewer/resources/MenuBarsResourceServerside.java
index d58941ca65..06881c3466 100644
--- 
a/viewers/restfulobjects/viewer/src/main/java/org/apache/causeway/viewer/restfulobjects/viewer/resources/MenuBarsResourceServerside.java
+++ 
b/viewers/restfulobjects/viewer/src/main/java/org/apache/causeway/viewer/restfulobjects/viewer/resources/MenuBarsResourceServerside.java
@@ -23,6 +23,7 @@ import java.util.function.Consumer;
 import jakarta.inject.Inject;
 import jakarta.ws.rs.HttpMethod;
 import jakarta.ws.rs.Produces;
+import jakarta.ws.rs.core.Context;
 import jakarta.ws.rs.core.MediaType;
 import jakarta.ws.rs.core.Response;
 
@@ -54,9 +55,9 @@ public class MenuBarsResourceServerside extends 
ResourceAbstract implements Menu
 
     @Inject
     public MenuBarsResourceServerside(
-            final MetaModelContext metaModelContext,
-            final CausewayConfiguration causewayConfiguration,
-            final InteractionLayerTracker iInteractionLayerTracker) {
+            final @Context MetaModelContext metaModelContext,
+            final @Context CausewayConfiguration causewayConfiguration,
+            final @Context InteractionLayerTracker iInteractionLayerTracker) {
         super(metaModelContext, causewayConfiguration, 
iInteractionLayerTracker);
     }
 
diff --git 
a/viewers/restfulobjects/viewer/src/main/java/org/apache/causeway/viewer/restfulobjects/viewer/resources/SwaggerSpecResource.java
 
b/viewers/restfulobjects/viewer/src/main/java/org/apache/causeway/viewer/restfulobjects/viewer/resources/SwaggerSpecResource.java
index 48f1237a2b..1b85f97f1a 100644
--- 
a/viewers/restfulobjects/viewer/src/main/java/org/apache/causeway/viewer/restfulobjects/viewer/resources/SwaggerSpecResource.java
+++ 
b/viewers/restfulobjects/viewer/src/main/java/org/apache/causeway/viewer/restfulobjects/viewer/resources/SwaggerSpecResource.java
@@ -55,8 +55,8 @@ public class SwaggerSpecResource {
 
     @Inject
     public SwaggerSpecResource(
-            final SwaggerService swaggerService,
-            final InteractionService interactionService) {
+            final @Context SwaggerService swaggerService,
+            final @Context InteractionService interactionService) {
         this.swaggerService = swaggerService;
         this.interactionService = interactionService;
         log.debug("<init>");
diff --git 
a/viewers/restfulobjects/viewer/src/main/java/org/apache/causeway/viewer/restfulobjects/viewer/resources/UserResourceServerside.java
 
b/viewers/restfulobjects/viewer/src/main/java/org/apache/causeway/viewer/restfulobjects/viewer/resources/UserResourceServerside.java
index 628cad31b4..c49f9f85e2 100644
--- 
a/viewers/restfulobjects/viewer/src/main/java/org/apache/causeway/viewer/restfulobjects/viewer/resources/UserResourceServerside.java
+++ 
b/viewers/restfulobjects/viewer/src/main/java/org/apache/causeway/viewer/restfulobjects/viewer/resources/UserResourceServerside.java
@@ -23,6 +23,7 @@ import java.net.URISyntaxException;
 
 import jakarta.inject.Inject;
 import jakarta.ws.rs.Produces;
+import jakarta.ws.rs.core.Context;
 import jakarta.ws.rs.core.MediaType;
 import jakarta.ws.rs.core.Response;
 
@@ -51,9 +52,9 @@ public class UserResourceServerside extends ResourceAbstract 
implements UserReso
 
     @Inject
     public UserResourceServerside(
-            final MetaModelContext metaModelContext,
-            final CausewayConfiguration causewayConfiguration,
-            final InteractionLayerTracker iInteractionLayerTracker) {
+            final @Context MetaModelContext metaModelContext,
+            final @Context CausewayConfiguration causewayConfiguration,
+            final @Context InteractionLayerTracker iInteractionLayerTracker) {
         super(metaModelContext, causewayConfiguration, 
iInteractionLayerTracker);
     }
 
diff --git 
a/viewers/restfulobjects/viewer/src/main/java/org/apache/causeway/viewer/restfulobjects/viewer/resources/VersionResourceServerside.java
 
b/viewers/restfulobjects/viewer/src/main/java/org/apache/causeway/viewer/restfulobjects/viewer/resources/VersionResourceServerside.java
index b2e036c64c..53c20066ed 100644
--- 
a/viewers/restfulobjects/viewer/src/main/java/org/apache/causeway/viewer/restfulobjects/viewer/resources/VersionResourceServerside.java
+++ 
b/viewers/restfulobjects/viewer/src/main/java/org/apache/causeway/viewer/restfulobjects/viewer/resources/VersionResourceServerside.java
@@ -24,6 +24,7 @@ import jakarta.inject.Inject;
 import jakarta.ws.rs.GET;
 import jakarta.ws.rs.Path;
 import jakarta.ws.rs.Produces;
+import jakarta.ws.rs.core.Context;
 import jakarta.ws.rs.core.HttpHeaders;
 import jakarta.ws.rs.core.MediaType;
 import jakarta.ws.rs.core.Response;
@@ -63,9 +64,9 @@ implements VersionResource {
 
     @Inject
     public VersionResourceServerside(
-            final MetaModelContext metaModelContext,
-            final CausewayConfiguration causewayConfiguration,
-            final InteractionLayerTracker iInteractionLayerTracker) {
+            final @Context MetaModelContext metaModelContext,
+            final @Context CausewayConfiguration causewayConfiguration,
+            final @Context InteractionLayerTracker iInteractionLayerTracker) {
         super(metaModelContext, causewayConfiguration, 
iInteractionLayerTracker);
         log.debug("<init>");
     }

Reply via email to