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 2019/05/03 06:09:13 UTC

[isis] 02/03: ISIS-2111: Remove Resteasy-3 Module (Plugin)

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

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

commit 8761c4c6c7a1cacd5df3d66bb085a3c4362456cc
Author: Andi Huber <ah...@apache.org>
AuthorDate: Fri May 3 07:42:07 2019 +0200

    ISIS-2111: Remove Resteasy-3 Module (Plugin)
    
    Task-Url: https://issues.apache.org/jira/browse/ISIS-2111
---
 core/plugins/jaxrs-resteasy-3/.gitignore           |   1 -
 core/plugins/jaxrs-resteasy-3/pom.xml              | 207 ---------------------
 .../jaxrs/resteasy/IsisResteasy3Plugin.java        |  51 -----
 .../conneg/IsisPrettyPrintingProcessor.java        |  68 -------
 .../rendering/service/conneg/PrettyPrinting.java   |  31 ---
 .../conneg/RestfulObjectsJaxbWriterForXml.java     |  74 --------
 .../viewer/restfulobjects/server/conneg/Util.java  |  33 ----
 ...r.restfulobjects.applib.client.UriBuilderPlugin |   1 -
 ...wer.restfulobjects.server.IsisJaxrsServerPlugin |   1 -
 .../applib/Parser_forCacheControl_Test.java        |  25 ---
 .../applib/Parser_forJaxRsMediaType_Test.java      |  25 ---
 .../RepresentationTypeTest_getMediaType.java       |  23 ---
 .../applib/RepresentationTypeTest_getName.java     |  23 ---
 .../applib/RepresentationTypeTest_lookup.java      |  25 ---
 .../applib/RepresentationTypeTest_parser.java      |  23 ---
 ...eContext_ensureCompatibleAcceptHeader_Test.java |  24 ---
 ...tfulObjectsApplicationExceptionMapper_Test.java |  24 ---
 core/pom.xml                                       |   1 -
 core/webdocker/pom.xml                             |   2 +-
 example/application/helloworld/pom.xml             |   2 +-
 .../application/simpleapp/module-simple/pom.xml    |   2 +-
 21 files changed, 3 insertions(+), 663 deletions(-)

diff --git a/core/plugins/jaxrs-resteasy-3/.gitignore b/core/plugins/jaxrs-resteasy-3/.gitignore
deleted file mode 100644
index a48e45b..0000000
--- a/core/plugins/jaxrs-resteasy-3/.gitignore
+++ /dev/null
@@ -1 +0,0 @@
-/target-ide
diff --git a/core/plugins/jaxrs-resteasy-3/pom.xml b/core/plugins/jaxrs-resteasy-3/pom.xml
deleted file mode 100644
index 735651b..0000000
--- a/core/plugins/jaxrs-resteasy-3/pom.xml
+++ /dev/null
@@ -1,207 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 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. -->
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-	xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
-	<modelVersion>4.0.0</modelVersion>
-
-	<parent>
-		<groupId>org.apache.isis.core</groupId>
-		<artifactId>isis</artifactId>
-		<version>${revision}</version>
-		<relativePath>../../pom.xml</relativePath>
-	</parent>
-
-	<artifactId>isis-core-plugins-jaxrs-resteasy-3</artifactId>
-
-	<name>Apache Isis Plugin for JAX-RS (Resteasy v3)</name>
-	<description>
-        JAX-RS plugin using jboss resteasy.
-    </description>
-
-	<properties>
-		<jar-plugin.automaticModuleName>org.apache.isis.plugins.jaxrs-resteasy-3</jar-plugin.automaticModuleName>
-		<git-plugin.propertiesDir>org/apache/isis/plugins/jaxrs-resteasy-3</git-plugin.propertiesDir>
-	</properties>
-
-	<build>
-		<resources>
-			<resource>
-				<filtering>false</filtering>
-				<directory>src/main/resources</directory>
-			</resource>
-			<resource>
-				<filtering>false</filtering>
-				<directory>src/main/java</directory>
-				<includes>
-					<include>**</include>
-				</includes>
-				<excludes>
-					<exclude>**/*.java</exclude>
-				</excludes>
-			</resource>
-		</resources>
-	</build>
-
-	<dependencies>
-
-		<!-- compile dependencies -->
-
-		<dependency>
-			<groupId>org.apache.isis.core</groupId>
-			<artifactId>isis-core-viewer-restfulobjects-rendering</artifactId>
-		</dependency>
-
-		<dependency>
-			<groupId>org.apache.isis.core</groupId>
-			<artifactId>isis-core-viewer-restfulobjects-applib</artifactId>
-			<type>test-jar</type>
-			<scope>test</scope>
-		</dependency>
-
-		<dependency>
-			<groupId>org.apache.isis.core</groupId>
-			<artifactId>isis-core-viewer-restfulobjects-server</artifactId>
-		</dependency>
-
-		<dependency>
-			<groupId>org.jboss.resteasy</groupId>
-			<artifactId>resteasy-jaxb-provider</artifactId>
-			<version>${resteasy3-jaxrs.version}</version>
-		</dependency>
-
-		<dependency>
-			<groupId>org.jboss.resteasy</groupId>
-			<artifactId>resteasy-jackson-provider</artifactId>
-			<version>${resteasy3-jaxrs.version}</version>
-		</dependency>
-
-		<!-- RestEasy -->
-		<dependency>
-			<groupId>org.jboss.resteasy</groupId>
-			<artifactId>resteasy-jaxrs</artifactId>
-			<version>${resteasy3-jaxrs.version}</version>
-			<exclusions>
-				<exclusion>
-					<groupId>org.jboss.spec.javax.servlet</groupId>
-					<artifactId>jboss-servlet-api_3.1_spec</artifactId>
-				</exclusion>
-				<exclusion>
-					<groupId>javax.annotation</groupId>
-					<artifactId>jsr250-api</artifactId>
-				</exclusion>
-				<exclusion>
-					<groupId>javax.activation</groupId>
-					<artifactId>activation</artifactId>
-				</exclusion>
-				<!-- clashes with axon -->
-				<exclusion>
-					<groupId>commons-io</groupId>
-					<artifactId>commons-io</artifactId>
-				</exclusion>
-			</exclusions>
-		</dependency>
-
-
-		<dependency>
-			<!-- required because resteasy-jaxrs declares as a test dependency whereas 
-				httpclient4 needs it as a compile dependency -->
-			<groupId>commons-logging</groupId>
-			<artifactId>commons-logging</artifactId>
-		</dependency>
-		<dependency>
-			<groupId>com.fasterxml.jackson.core</groupId>
-			<artifactId>jackson-core</artifactId>
-		</dependency>
-		<dependency>
-			<groupId>com.fasterxml.jackson.core</groupId>
-			<artifactId>jackson-databind</artifactId>
-		</dependency>
-		<dependency>
-			<groupId>com.fasterxml.jackson.core</groupId>
-			<artifactId>jackson-annotations</artifactId>
-		</dependency>
-		<dependency>
-			<groupId>com.fasterxml.jackson.module</groupId>
-			<artifactId>jackson-module-jaxb-annotations</artifactId>
-		</dependency>
-
-		<!-- TEST DEPENDENCIES -->
-		
-		<dependency>
-            <groupId>org.apache.isis.core</groupId>
-            <artifactId>isis-core-unittestsupport</artifactId>
-            <scope>test</scope>
-        </dependency>
-        
-        <dependency>
-            <groupId>org.apache.isis.core</groupId>
-            <artifactId>isis-core-viewer-restfulobjects-server</artifactId>
-            <type>test-jar</type>
-            <scope>test</scope>
-        </dependency>
-
-		<dependency>
-			<groupId>javax.jdo</groupId>
-			<artifactId>jdo-api</artifactId>
-			<version>${jdo-api.version}</version>
-			<scope>test</scope>
-		</dependency>
-
-	</dependencies>
-
-	<profiles>
-		<profile>
-			<id>flatten</id>
-			<activation>
-				<property>
-					<name>!skip.flatten</name>
-				</property>
-			</activation>
-			<build>
-				<plugins>
-					<plugin>
-						<groupId>org.codehaus.mojo</groupId>
-						<artifactId>flatten-maven-plugin</artifactId>
-						<version>1.0.0</version>
-						<executions>
-							<execution>
-								<id>flatten</id>
-								<phase>process-resources</phase>
-								<goals>
-									<goal>flatten</goal>
-								</goals>
-								<configuration>
-									<flattenMode>defaults</flattenMode>
-									<updatePomFile>true</updatePomFile>
-									<pomElements>
-										<name>resolve</name>
-										<description>resolve</description>
-										<dependencies>resolve</dependencies>
-									</pomElements>
-								</configuration>
-							</execution>
-							<execution>
-								<id>flatten.clean</id>
-								<phase>clean</phase>
-								<goals>
-									<goal>clean</goal>
-								</goals>
-							</execution>
-						</executions>
-					</plugin>
-				</plugins>
-			</build>
-		</profile>
-	</profiles>
-
-
-</project>
\ No newline at end of file
diff --git a/core/plugins/jaxrs-resteasy-3/src/main/java/org/apache/isis/plugins/jaxrs/resteasy/IsisResteasy3Plugin.java b/core/plugins/jaxrs-resteasy-3/src/main/java/org/apache/isis/plugins/jaxrs/resteasy/IsisResteasy3Plugin.java
deleted file mode 100644
index 1f5ab93..0000000
--- a/core/plugins/jaxrs-resteasy-3/src/main/java/org/apache/isis/plugins/jaxrs/resteasy/IsisResteasy3Plugin.java
+++ /dev/null
@@ -1,51 +0,0 @@
-/**
- *  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.isis.plugins.jaxrs.resteasy;
-
-import javax.ws.rs.core.UriBuilder;
-
-import org.jboss.resteasy.specimpl.ResteasyUriBuilder;
-import org.jboss.resteasy.spi.Failure;
-
-import org.apache.isis.viewer.restfulobjects.applib.client.RestfulResponse;
-import org.apache.isis.viewer.restfulobjects.applib.client.RestfulResponse.HttpStatusCode;
-import org.apache.isis.viewer.restfulobjects.applib.client.UriBuilderPlugin;
-import org.apache.isis.viewer.restfulobjects.server.IsisJaxrsServerPlugin;
-import org.apache.isis.viewer.restfulobjects.server.conneg.RestfulObjectsJaxbWriterForXml;
-
-public class IsisResteasy3Plugin implements UriBuilderPlugin, IsisJaxrsServerPlugin {
-
-    @Override
-    public UriBuilder uriTemplate(String uriTemplate) {
-        return new ResteasyUriBuilder().uriTemplate(uriTemplate);
-    }
-
-    @Override
-    public Object newRestfulObjectsJaxbWriterForXml() {
-
-        return new RestfulObjectsJaxbWriterForXml();
-    }
-
-    @Override
-    public HttpStatusCode getFailureStatusCodeIfAny(Throwable ex) {
-
-        return (ex instanceof Failure)
-                ? RestfulResponse.HttpStatusCode.statusFor(((Failure)ex).getErrorCode())
-                        : null;
-    }
-
-}
diff --git a/core/plugins/jaxrs-resteasy-3/src/main/java/org/apache/isis/viewer/restfulobjects/rendering/service/conneg/IsisPrettyPrintingProcessor.java b/core/plugins/jaxrs-resteasy-3/src/main/java/org/apache/isis/viewer/restfulobjects/rendering/service/conneg/IsisPrettyPrintingProcessor.java
deleted file mode 100644
index 6706bb0..0000000
--- a/core/plugins/jaxrs-resteasy-3/src/main/java/org/apache/isis/viewer/restfulobjects/rendering/service/conneg/IsisPrettyPrintingProcessor.java
+++ /dev/null
@@ -1,68 +0,0 @@
-/**
- *  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.isis.viewer.restfulobjects.rendering.service.conneg;
-
-import java.lang.annotation.Annotation;
-
-import javax.ws.rs.core.MediaType;
-import javax.xml.bind.Marshaller;
-
-import org.jboss.resteasy.annotations.DecorateTypes;
-import org.jboss.resteasy.spi.DecoratorProcessor;
-
-import org.apache.isis.commons.internal.context._Context;
-import org.apache.isis.config.IsisConfiguration;
-import org.apache.isis.core.runtime.system.context.IsisContext;
-import org.apache.isis.core.runtime.system.session.IsisSessionFactory;
-
-@DecorateTypes({"text/*+xml", "application/*+xml"})
-public class IsisPrettyPrintingProcessor implements DecoratorProcessor<Marshaller, PrettyPrinting> {
-
-    public static final String KEY_PRETTY_PRINT = "isis.services." + ContentNegotiationServiceXRoDomainType.class.getSimpleName() + ".prettyPrint";
-
-    @Override
-    public Marshaller decorate(final Marshaller target, final PrettyPrinting annotation, @SuppressWarnings("rawtypes") final Class type, final Annotation[] annotations, final MediaType mediaType) {
-        return shouldPrettyPrint()
-                ? doDecorate(target, annotation, type, annotations, mediaType)
-                        : target;
-    }
-
-    protected boolean shouldPrettyPrint() {
-        try {
-            return getConfiguration().getBoolean(KEY_PRETTY_PRINT, _Context.isPrototyping());
-        } catch (Exception e) {
-            return true;
-        }
-    }
-
-    protected Marshaller doDecorate(Marshaller target, PrettyPrinting annotation, @SuppressWarnings("rawtypes") Class type, Annotation[] annotations, MediaType mediaType) {
-        try {
-            target.setProperty(Marshaller.JAXB_FORMATTED_OUTPUT, Boolean.TRUE);
-            return target;
-        } catch (Exception ex) {
-            throw new RuntimeException(ex);
-        }
-    }
-
-    protected IsisConfiguration getConfiguration() {
-        return getIsisSessionFactory().getConfiguration();
-    }
-
-    IsisSessionFactory getIsisSessionFactory() {
-        return IsisContext.getSessionFactory();
-    }
-}
diff --git a/core/plugins/jaxrs-resteasy-3/src/main/java/org/apache/isis/viewer/restfulobjects/rendering/service/conneg/PrettyPrinting.java b/core/plugins/jaxrs-resteasy-3/src/main/java/org/apache/isis/viewer/restfulobjects/rendering/service/conneg/PrettyPrinting.java
deleted file mode 100644
index 46ef491..0000000
--- a/core/plugins/jaxrs-resteasy-3/src/main/java/org/apache/isis/viewer/restfulobjects/rendering/service/conneg/PrettyPrinting.java
+++ /dev/null
@@ -1,31 +0,0 @@
-/**
- *  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.isis.viewer.restfulobjects.rendering.service.conneg;
-
-import java.lang.annotation.ElementType;
-import java.lang.annotation.Retention;
-import java.lang.annotation.RetentionPolicy;
-import java.lang.annotation.Target;
-
-import javax.xml.bind.Marshaller;
-
-import org.jboss.resteasy.annotations.Decorator;
-
-@Target({ElementType.TYPE, ElementType.METHOD, ElementType.PARAMETER, ElementType.FIELD})
-@Retention(RetentionPolicy.RUNTIME)
-@Decorator(processor = IsisPrettyPrintingProcessor.class, target = Marshaller.class)
-public @interface PrettyPrinting {}
\ No newline at end of file
diff --git a/core/plugins/jaxrs-resteasy-3/src/main/java/org/apache/isis/viewer/restfulobjects/server/conneg/RestfulObjectsJaxbWriterForXml.java b/core/plugins/jaxrs-resteasy-3/src/main/java/org/apache/isis/viewer/restfulobjects/server/conneg/RestfulObjectsJaxbWriterForXml.java
deleted file mode 100644
index e00c78b..0000000
--- a/core/plugins/jaxrs-resteasy-3/src/main/java/org/apache/isis/viewer/restfulobjects/server/conneg/RestfulObjectsJaxbWriterForXml.java
+++ /dev/null
@@ -1,74 +0,0 @@
-/*
- *  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.isis.viewer.restfulobjects.server.conneg;
-
-import java.lang.annotation.Annotation;
-import java.lang.reflect.Type;
-
-import javax.ws.rs.Produces;
-import javax.ws.rs.core.MediaType;
-import javax.ws.rs.ext.Provider;
-import javax.xml.bind.Marshaller;
-
-import org.jboss.resteasy.plugins.providers.jaxb.JAXBXmlRootElementProvider;
-
-import org.apache.isis.applib.services.bookmark.BookmarkService;
-import org.apache.isis.core.metamodel.services.ServicesInjector;
-import org.apache.isis.core.runtime.system.context.IsisContext;
-import org.apache.isis.core.runtime.system.session.IsisSessionFactory;
-import org.apache.isis.schema.utils.jaxbadapters.PersistentEntityAdapter;
-
-@Provider
-@Produces({"application/xml", "application/*+xml", "text/*+xml"})
-public class RestfulObjectsJaxbWriterForXml extends JAXBXmlRootElementProvider {
-
-    public RestfulObjectsJaxbWriterForXml(){
-        ;
-    }
-
-    @Override protected boolean isReadWritable(
-            final Class<?> type, final Type genericType, final Annotation[] annotations, final MediaType mediaType) {
-        return super.isReadWritable(type, genericType, annotations, mediaType) && hasXRoDomainTypeParameter(mediaType);
-    }
-
-    protected boolean hasXRoDomainTypeParameter(final MediaType mediaType) {
-        return Util.hasXRoDomainTypeParameter(mediaType);
-    }
-
-    @Override
-    protected Marshaller getMarshaller(
-            final Class<?> type, final Annotation[] annotations, final MediaType mediaType) {
-        final Marshaller marshaller = super.getMarshaller(type, annotations, mediaType);
-        marshaller.setAdapter(PersistentEntityAdapter.class, new PersistentEntityAdapter() {
-            @Override
-            protected BookmarkService getBookmarkService() {
-                return getServicesInjector().lookupServiceElseFail(BookmarkService.class);
-            }
-        });
-        return marshaller;
-    }
-
-    ServicesInjector getServicesInjector() {
-        return getIsisSessionFactory().getServicesInjector();
-    }
-
-    IsisSessionFactory getIsisSessionFactory() {
-        return IsisContext.getSessionFactory();
-    }
-}
diff --git a/core/plugins/jaxrs-resteasy-3/src/main/java/org/apache/isis/viewer/restfulobjects/server/conneg/Util.java b/core/plugins/jaxrs-resteasy-3/src/main/java/org/apache/isis/viewer/restfulobjects/server/conneg/Util.java
deleted file mode 100644
index e7663ad..0000000
--- a/core/plugins/jaxrs-resteasy-3/src/main/java/org/apache/isis/viewer/restfulobjects/server/conneg/Util.java
+++ /dev/null
@@ -1,33 +0,0 @@
-/*
- *  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.isis.viewer.restfulobjects.server.conneg;
-
-import javax.ws.rs.core.MediaType;
-
-final class Util {
-
-    private Util(){
-    }
-
-    static boolean hasXRoDomainTypeParameter(final MediaType mediaType) {
-        final boolean retval = mediaType.getParameters().containsKey("x-ro-domain-type");
-        return retval;
-    }
-
-}
diff --git a/core/plugins/jaxrs-resteasy-3/src/main/resources/META-INF/services/org.apache.isis.viewer.restfulobjects.applib.client.UriBuilderPlugin b/core/plugins/jaxrs-resteasy-3/src/main/resources/META-INF/services/org.apache.isis.viewer.restfulobjects.applib.client.UriBuilderPlugin
deleted file mode 100644
index e8be99c..0000000
--- a/core/plugins/jaxrs-resteasy-3/src/main/resources/META-INF/services/org.apache.isis.viewer.restfulobjects.applib.client.UriBuilderPlugin
+++ /dev/null
@@ -1 +0,0 @@
-org.apache.isis.plugins.jaxrs.resteasy.IsisResteasy3Plugin
\ No newline at end of file
diff --git a/core/plugins/jaxrs-resteasy-3/src/main/resources/META-INF/services/org.apache.isis.viewer.restfulobjects.server.IsisJaxrsServerPlugin b/core/plugins/jaxrs-resteasy-3/src/main/resources/META-INF/services/org.apache.isis.viewer.restfulobjects.server.IsisJaxrsServerPlugin
deleted file mode 100644
index e8be99c..0000000
--- a/core/plugins/jaxrs-resteasy-3/src/main/resources/META-INF/services/org.apache.isis.viewer.restfulobjects.server.IsisJaxrsServerPlugin
+++ /dev/null
@@ -1 +0,0 @@
-org.apache.isis.plugins.jaxrs.resteasy.IsisResteasy3Plugin
\ No newline at end of file
diff --git a/core/plugins/jaxrs-resteasy-3/src/test/java/org/apache/isis/viewer/restfulobjects/applib/Parser_forCacheControl_Test.java b/core/plugins/jaxrs-resteasy-3/src/test/java/org/apache/isis/viewer/restfulobjects/applib/Parser_forCacheControl_Test.java
deleted file mode 100644
index 94dc472..0000000
--- a/core/plugins/jaxrs-resteasy-3/src/test/java/org/apache/isis/viewer/restfulobjects/applib/Parser_forCacheControl_Test.java
+++ /dev/null
@@ -1,25 +0,0 @@
-/*
- *  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.isis.viewer.restfulobjects.applib;
-
-import org.apache.isis.viewer.restfulobjects.applib.util.Parser_forCacheControl_ContractTest;
-
-public class Parser_forCacheControl_Test extends Parser_forCacheControl_ContractTest {
-
-}
diff --git a/core/plugins/jaxrs-resteasy-3/src/test/java/org/apache/isis/viewer/restfulobjects/applib/Parser_forJaxRsMediaType_Test.java b/core/plugins/jaxrs-resteasy-3/src/test/java/org/apache/isis/viewer/restfulobjects/applib/Parser_forJaxRsMediaType_Test.java
deleted file mode 100644
index 773ac9a..0000000
--- a/core/plugins/jaxrs-resteasy-3/src/test/java/org/apache/isis/viewer/restfulobjects/applib/Parser_forJaxRsMediaType_Test.java
+++ /dev/null
@@ -1,25 +0,0 @@
-/*
- *  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.isis.viewer.restfulobjects.applib;
-
-import org.apache.isis.viewer.restfulobjects.applib.util.Parser_forJaxRsMediaType_ContractTest;
-
-public class Parser_forJaxRsMediaType_Test extends Parser_forJaxRsMediaType_ContractTest {
-
-}
diff --git a/core/plugins/jaxrs-resteasy-3/src/test/java/org/apache/isis/viewer/restfulobjects/applib/RepresentationTypeTest_getMediaType.java b/core/plugins/jaxrs-resteasy-3/src/test/java/org/apache/isis/viewer/restfulobjects/applib/RepresentationTypeTest_getMediaType.java
deleted file mode 100644
index ea2d886..0000000
--- a/core/plugins/jaxrs-resteasy-3/src/test/java/org/apache/isis/viewer/restfulobjects/applib/RepresentationTypeTest_getMediaType.java
+++ /dev/null
@@ -1,23 +0,0 @@
-/*
- *  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.isis.viewer.restfulobjects.applib;
-
-public class RepresentationTypeTest_getMediaType extends RepresentationTypeTest_getMediaType_ContractTest {
-
-}
diff --git a/core/plugins/jaxrs-resteasy-3/src/test/java/org/apache/isis/viewer/restfulobjects/applib/RepresentationTypeTest_getName.java b/core/plugins/jaxrs-resteasy-3/src/test/java/org/apache/isis/viewer/restfulobjects/applib/RepresentationTypeTest_getName.java
deleted file mode 100644
index 4054b01..0000000
--- a/core/plugins/jaxrs-resteasy-3/src/test/java/org/apache/isis/viewer/restfulobjects/applib/RepresentationTypeTest_getName.java
+++ /dev/null
@@ -1,23 +0,0 @@
-/*
- *  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.isis.viewer.restfulobjects.applib;
-
-public class RepresentationTypeTest_getName extends RepresentationTypeTest_getName_ContractTest {
-
-}
diff --git a/core/plugins/jaxrs-resteasy-3/src/test/java/org/apache/isis/viewer/restfulobjects/applib/RepresentationTypeTest_lookup.java b/core/plugins/jaxrs-resteasy-3/src/test/java/org/apache/isis/viewer/restfulobjects/applib/RepresentationTypeTest_lookup.java
deleted file mode 100644
index 54d97c7..0000000
--- a/core/plugins/jaxrs-resteasy-3/src/test/java/org/apache/isis/viewer/restfulobjects/applib/RepresentationTypeTest_lookup.java
+++ /dev/null
@@ -1,25 +0,0 @@
-/*
- *  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.isis.viewer.restfulobjects.applib;
-
-public class RepresentationTypeTest_lookup extends RepresentationTypeTest_lookup_ContractTest {
-
-
-
-}
diff --git a/core/plugins/jaxrs-resteasy-3/src/test/java/org/apache/isis/viewer/restfulobjects/applib/RepresentationTypeTest_parser.java b/core/plugins/jaxrs-resteasy-3/src/test/java/org/apache/isis/viewer/restfulobjects/applib/RepresentationTypeTest_parser.java
deleted file mode 100644
index a49fbbe..0000000
--- a/core/plugins/jaxrs-resteasy-3/src/test/java/org/apache/isis/viewer/restfulobjects/applib/RepresentationTypeTest_parser.java
+++ /dev/null
@@ -1,23 +0,0 @@
-/*
- *  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.isis.viewer.restfulobjects.applib;
-
-public abstract class RepresentationTypeTest_parser extends RepresentationTypeTest_parser_ContractTest {
-
-}
diff --git a/core/plugins/jaxrs-resteasy-3/src/test/java/org/apache/isis/viewer/restfulobjects/server/ResourceContext_ensureCompatibleAcceptHeader_Test.java b/core/plugins/jaxrs-resteasy-3/src/test/java/org/apache/isis/viewer/restfulobjects/server/ResourceContext_ensureCompatibleAcceptHeader_Test.java
deleted file mode 100644
index 703ee64..0000000
--- a/core/plugins/jaxrs-resteasy-3/src/test/java/org/apache/isis/viewer/restfulobjects/server/ResourceContext_ensureCompatibleAcceptHeader_Test.java
+++ /dev/null
@@ -1,24 +0,0 @@
-/*
- *  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.isis.viewer.restfulobjects.server;
-
-public class ResourceContext_ensureCompatibleAcceptHeader_Test extends
-        ResourceContext_ensureCompatibleAcceptHeader_ContractTest {
-
-}
diff --git a/core/plugins/jaxrs-resteasy-3/src/test/java/org/apache/isis/viewer/restfulobjects/server/mappers/RestfulObjectsApplicationExceptionMapper_Test.java b/core/plugins/jaxrs-resteasy-3/src/test/java/org/apache/isis/viewer/restfulobjects/server/mappers/RestfulObjectsApplicationExceptionMapper_Test.java
deleted file mode 100644
index 12e3630..0000000
--- a/core/plugins/jaxrs-resteasy-3/src/test/java/org/apache/isis/viewer/restfulobjects/server/mappers/RestfulObjectsApplicationExceptionMapper_Test.java
+++ /dev/null
@@ -1,24 +0,0 @@
-/*
- *  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.isis.viewer.restfulobjects.server.mappers;
-
-public class RestfulObjectsApplicationExceptionMapper_Test extends
-        RestfulObjectsApplicationExceptionMapper_Test_Contract {
-
-}
diff --git a/core/pom.xml b/core/pom.xml
index f67e744..9f01183 100644
--- a/core/pom.xml
+++ b/core/pom.xml
@@ -2523,7 +2523,6 @@ ${license.additional-notes}
         <module>plugins/discovery-reflections</module>
         <module>plugins/eventbus-axon</module>
         <module>plugins/eventbus-guava</module>
-        <module>plugins/jaxrs-resteasy-3</module>
         <module>plugins/jaxrs-resteasy-4</module>
         <module>plugins/jdo-datanucleus-5</module>
         <module>plugins/security-shiro</module>
diff --git a/core/webdocker/pom.xml b/core/webdocker/pom.xml
index 98e8cd9..bcbda581 100644
--- a/core/webdocker/pom.xml
+++ b/core/webdocker/pom.xml
@@ -99,7 +99,7 @@
 
         <dependency>
             <groupId>org.apache.isis.core</groupId>
-            <artifactId>isis-core-plugins-jaxrs-resteasy-3</artifactId>
+            <artifactId>isis-core-plugins-jaxrs-resteasy-4</artifactId>
         </dependency>
 
     </dependencies>
diff --git a/example/application/helloworld/pom.xml b/example/application/helloworld/pom.xml
index b9df0b8..c752b90 100644
--- a/example/application/helloworld/pom.xml
+++ b/example/application/helloworld/pom.xml
@@ -187,7 +187,7 @@
 
         <dependency>
             <groupId>org.apache.isis.core</groupId>
-            <artifactId>isis-core-plugins-jaxrs-resteasy-3</artifactId>
+            <artifactId>isis-core-plugins-jaxrs-resteasy-4</artifactId>
         </dependency>
 
         <!-- OTHER DEPENDENCIES -->
diff --git a/example/application/simpleapp/module-simple/pom.xml b/example/application/simpleapp/module-simple/pom.xml
index fc5521a..7d3840b 100644
--- a/example/application/simpleapp/module-simple/pom.xml
+++ b/example/application/simpleapp/module-simple/pom.xml
@@ -143,7 +143,7 @@
 
     	<dependency>
             <groupId>org.apache.isis.core</groupId>
-            <artifactId>isis-core-plugins-jaxrs-resteasy-3</artifactId>
+            <artifactId>isis-core-plugins-jaxrs-resteasy-4</artifactId>
         </dependency>
 
         <!-- TESTS -->