Author: sergeyb
Date: Fri Jul 27 16:05:59 2012
New Revision: 1366432

URL: http://svn.apache.org/viewvc?rev=1366432&view=rev
Log:
[CXF-4444] Updating BusApplicationContextResourceResolver to resolve resources 
without names by their types only, as proposed by Matas Veitas

Modified:
    
cxf/trunk/rt/core/src/main/java/org/apache/cxf/bus/spring/BusApplicationContextResourceResolver.java
    
cxf/trunk/systests/jaxrs/src/test/java/org/apache/cxf/systest/jaxrs/BookStoreSpring.java
    cxf/trunk/systests/jaxrs/src/test/resources/jaxrs/WEB-INF/beans.xml

Modified: 
cxf/trunk/rt/core/src/main/java/org/apache/cxf/bus/spring/BusApplicationContextResourceResolver.java
URL: 
http://svn.apache.org/viewvc/cxf/trunk/rt/core/src/main/java/org/apache/cxf/bus/spring/BusApplicationContextResourceResolver.java?rev=1366432&r1=1366431&r2=1366432&view=diff
==============================================================================
--- 
cxf/trunk/rt/core/src/main/java/org/apache/cxf/bus/spring/BusApplicationContextResourceResolver.java
 (original)
+++ 
cxf/trunk/rt/core/src/main/java/org/apache/cxf/bus/spring/BusApplicationContextResourceResolver.java
 Fri Jul 27 16:05:59 2012
@@ -65,11 +65,15 @@ public class BusApplicationContextResour
     }
 
     public <T> T resolve(String resourceName, Class<T> resourceType) {
-        if (resourceName == null) {
-            return null;
-        }   
+           
         try {
-            return resourceType.cast(context.getBean(resourceName, 
resourceType));
+            T resource = null;
+            if (resourceName == null) {
+                resource = resourceType.cast(context.getBean(resourceType));
+            } else {
+                resource = resourceType.cast(context.getBean(resourceName, 
resourceType));
+            }
+            return resource;
         } catch (NoSuchBeanDefinitionException def) {
             //ignore
         }

Modified: 
cxf/trunk/systests/jaxrs/src/test/java/org/apache/cxf/systest/jaxrs/BookStoreSpring.java
URL: 
http://svn.apache.org/viewvc/cxf/trunk/systests/jaxrs/src/test/java/org/apache/cxf/systest/jaxrs/BookStoreSpring.java?rev=1366432&r1=1366431&r2=1366432&view=diff
==============================================================================
--- 
cxf/trunk/systests/jaxrs/src/test/java/org/apache/cxf/systest/jaxrs/BookStoreSpring.java
 (original)
+++ 
cxf/trunk/systests/jaxrs/src/test/java/org/apache/cxf/systest/jaxrs/BookStoreSpring.java
 Fri Jul 27 16:05:59 2012
@@ -26,6 +26,7 @@ import java.util.Map;
 
 import javax.annotation.PostConstruct;
 import javax.annotation.PreDestroy;
+import javax.annotation.Resource;
 import javax.ws.rs.Consumes;
 import javax.ws.rs.GET;
 import javax.ws.rs.MatrixParam;
@@ -57,6 +58,8 @@ public class BookStoreSpring {
     @Context
     private UriInfo ui;    
     private boolean postConstructCalled;
+    @Resource
+    private Book injectedBook; 
     
     public BookStoreSpring() {
         init();
@@ -66,6 +69,9 @@ public class BookStoreSpring {
     
     @PostConstruct
     public void postConstruct() {
+        if (injectedBook == null) {
+            throw new IllegalStateException("Book resource has not been 
injected");
+        }    
         postConstructCalled = true;
     }
     

Modified: cxf/trunk/systests/jaxrs/src/test/resources/jaxrs/WEB-INF/beans.xml
URL: 
http://svn.apache.org/viewvc/cxf/trunk/systests/jaxrs/src/test/resources/jaxrs/WEB-INF/beans.xml?rev=1366432&r1=1366431&r2=1366432&view=diff
==============================================================================
--- cxf/trunk/systests/jaxrs/src/test/resources/jaxrs/WEB-INF/beans.xml 
(original)
+++ cxf/trunk/systests/jaxrs/src/test/resources/jaxrs/WEB-INF/beans.xml Fri Jul 
27 16:05:59 2012
@@ -43,6 +43,7 @@ http://cxf.apache.org/schemas/core.xsd";>
   <import resource="classpath:META-INF/cxf/cxf-servlet.xml" />
 
   <bean class="org.apache.cxf.systest.jaxrs.BookStoreSpring" id="serviceBean"/>
+  <bean class="org.apache.cxf.systest.jaxrs.Book"/>
   
   <jaxrs:server id="bookservice"
                        address="/bookstore">


Reply via email to