diff --git a/examples/strict/pom.xml b/examples/strict/pom.xml
index 17db2fdf66d8f..0d16d5495f6e1 100644
--- a/examples/strict/pom.xml
+++ b/examples/strict/pom.xml
@@ -86,6 +86,10 @@
io.reactivex.rxjava2
rxjava
+
+ org.jboss.shamrock
+ shamrock-rest-client-deployment
+
diff --git a/examples/strict/src/main/java/org/jboss/shamrock/example/rest/RestInterface.java b/examples/strict/src/main/java/org/jboss/shamrock/example/rest/RestInterface.java
new file mode 100644
index 0000000000000..6b598105019c8
--- /dev/null
+++ b/examples/strict/src/main/java/org/jboss/shamrock/example/rest/RestInterface.java
@@ -0,0 +1,12 @@
+package org.jboss.shamrock.example.rest;
+
+import javax.ws.rs.GET;
+import javax.ws.rs.Path;
+
+@Path("/foo")
+public interface RestInterface {
+
+ @GET
+ void get();
+
+}
diff --git a/examples/strict/src/main/java/org/jboss/shamrock/example/rest/TestResource.java b/examples/strict/src/main/java/org/jboss/shamrock/example/rest/TestResource.java
index c81a17c737549..48bcc2be07497 100644
--- a/examples/strict/src/main/java/org/jboss/shamrock/example/rest/TestResource.java
+++ b/examples/strict/src/main/java/org/jboss/shamrock/example/rest/TestResource.java
@@ -9,12 +9,14 @@
import javax.xml.bind.annotation.XmlRootElement;
import io.reactivex.Single;
+import org.eclipse.microprofile.rest.client.RestClientBuilder;
@Path("/test")
public class TestResource {
@GET
public String getTest() {
+ RestInterface iface = RestClientBuilder.newBuilder().build(RestInterface.class);
return "TEST";
}
diff --git a/rest-client/runtime/src/main/java/org/jboss/shamrock/restclient/runtime/ProxyInvocationHandler.java b/rest-client/runtime/src/main/java/org/jboss/shamrock/restclient/runtime/ProxyInvocationHandler.java
deleted file mode 100644
index 800e1749fc6ff..0000000000000
--- a/rest-client/runtime/src/main/java/org/jboss/shamrock/restclient/runtime/ProxyInvocationHandler.java
+++ /dev/null
@@ -1,259 +0,0 @@
-/**
- * Copyright 2015-2017 Red Hat, Inc, and individual contributors.
- *
- * Licensed 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.jboss.shamrock.restclient.runtime;
-
-import java.lang.annotation.Annotation;
-import java.lang.reflect.InvocationHandler;
-import java.lang.reflect.InvocationTargetException;
-import java.lang.reflect.Method;
-import java.lang.reflect.Modifier;
-import java.lang.reflect.ParameterizedType;
-import java.lang.reflect.Type;
-import java.util.ArrayList;
-import java.util.Collections;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-import java.util.Set;
-import java.util.concurrent.atomic.AtomicBoolean;
-import java.util.stream.Collectors;
-
-import javax.enterprise.context.spi.CreationalContext;
-import javax.enterprise.inject.spi.BeanManager;
-import javax.enterprise.inject.spi.CDI;
-import javax.enterprise.inject.spi.InterceptionType;
-import javax.enterprise.inject.spi.Interceptor;
-import javax.ws.rs.client.ResponseProcessingException;
-import javax.ws.rs.ext.ParamConverter;
-import javax.ws.rs.ext.ParamConverterProvider;
-
-import org.jboss.logging.Logger;
-import org.jboss.resteasy.client.jaxrs.ResteasyClient;
-
-import RestClientProxy;
-
-/**
- * Created by hbraun on 22.01.18.
- */
-class ProxyInvocationHandler implements InvocationHandler {
-
- private static final Logger LOGGER = Logger.getLogger(ProxyInvocationHandler.class);
-
- private final Object target;
-
- private final Set