MEECROWAVE-191 cxf 3.3.2
git-svn-id: https://svn.apache.org/repos/asf/openwebbeans/meecrowave/trunk@1859085 13f79535-47bb-0310-9956-ffa450edef68
diff --git a/meecrowave-core/src/main/java/org/apache/meecrowave/cxf/MeecrowaveBus.java b/meecrowave-core/src/main/java/org/apache/meecrowave/cxf/MeecrowaveBus.java
index a019f5c..ecdb2c4 100644
--- a/meecrowave-core/src/main/java/org/apache/meecrowave/cxf/MeecrowaveBus.java
+++ b/meecrowave-core/src/main/java/org/apache/meecrowave/cxf/MeecrowaveBus.java
@@ -23,6 +23,7 @@
import java.util.Map;
import javax.enterprise.context.ApplicationScoped;
+import javax.enterprise.inject.Typed;
import javax.inject.Inject;
import javax.inject.Named;
import javax.servlet.ServletContext;
@@ -35,8 +36,9 @@
import org.apache.meecrowave.Meecrowave;
@Named("cxf")
+@Typed({MeecrowaveBus.class, Bus.class})
@ApplicationScoped
-public class MeecrowaveBus implements Bus {
+public class MeecrowaveBus implements Bus, ClassUnwrapper {
private final ConfigurableBus delegate = new ConfigurableBus();
protected MeecrowaveBus() {
@@ -45,7 +47,7 @@
@Inject
public MeecrowaveBus(final ServletContext context) {
- setProperty(ClassUnwrapper.class.getName(), (ClassUnwrapper) this::getRealClass);
+ setProperty(ClassUnwrapper.class.getName(), this);
final ClassLoader appLoader = context.getClassLoader();
setExtension(appLoader, ClassLoader.class); // ServletController locks on the classloader otherwise
@@ -60,11 +62,16 @@
/**
* Unwrap all proxies and get the real underlying class
* for detecting annotations, etc.
- * @param o
- * @return
+ * @param o the instance to analyze.
+ * @return the class to introspect.
*/
- protected Class<?> getRealClass(Object o) {
- final Class<?> aClass = o.getClass();
+ @Override
+ public Class<?> getRealClass(Object o) {
+ return getRealClassFromClass(o.getClass());
+ }
+
+ @Override
+ public Class<?> getRealClassFromClass(final Class<?> aClass) {
if (aClass.getName().contains("$$")) {
Class realClass = aClass.getSuperclass();
if (realClass == Object.class || realClass.isInterface()) {
diff --git a/pom.xml b/pom.xml
index 0201430..2ec95c6 100644
--- a/pom.xml
+++ b/pom.xml
@@ -52,7 +52,7 @@
<junit.version>4.12</junit.version>
<tomcat.version>9.0.19</tomcat.version>
<openwebbeans.version>2.0.10</openwebbeans.version>
- <cxf.version>3.3.1</cxf.version>
+ <cxf.version>3.3.2</cxf.version>
<johnzon.version>1.1.10</johnzon.version>
<log4j2.version>2.11.1</log4j2.version>
<deltaspike.version>1.8.2</deltaspike.version>
@@ -217,8 +217,8 @@
</profile>
</profiles>
-<!-- only needed when under development
<repositories>
+<!-- only needed when under development
<repository>
<id>asf-snapshot</id>
<url>https://repository.apache.org/content/repositories/snapshots/</url>
@@ -229,6 +229,16 @@
<enabled>true</enabled>
</snapshots>
</repository>
- </repositories>
-->
+ <repository>
+ <id>cxf-staging</id>
+ <url>https://repository.apache.org/content/repositories/orgapachecxf-1141/</url>
+ <releases>
+ <enabled>true</enabled>
+ </releases>
+ <snapshots>
+ <enabled>false</enabled>
+ </snapshots>
+ </repository>
+ </repositories>
</project>