Author: sergeyb
Date: Mon May 6 16:39:21 2013
New Revision: 1479634
URL: http://svn.apache.org/r1479634
Log:
[CXF-5000] Root-level NameBindings are missed if they are created from
Application
Modified:
cxf/trunk/rt/frontend/jaxrs/src/main/java/org/apache/cxf/jaxrs/JAXRSServerFactoryBean.java
Modified:
cxf/trunk/rt/frontend/jaxrs/src/main/java/org/apache/cxf/jaxrs/JAXRSServerFactoryBean.java
URL:
http://svn.apache.org/viewvc/cxf/trunk/rt/frontend/jaxrs/src/main/java/org/apache/cxf/jaxrs/JAXRSServerFactoryBean.java?rev=1479634&r1=1479633&r2=1479634&view=diff
==============================================================================
---
cxf/trunk/rt/frontend/jaxrs/src/main/java/org/apache/cxf/jaxrs/JAXRSServerFactoryBean.java
(original)
+++
cxf/trunk/rt/frontend/jaxrs/src/main/java/org/apache/cxf/jaxrs/JAXRSServerFactoryBean.java
Mon May 6 16:39:21 2013
@@ -22,6 +22,7 @@ import java.io.IOException;
import java.util.Arrays;
import java.util.Collections;
import java.util.HashMap;
+import java.util.LinkedList;
import java.util.List;
import java.util.Map;
import java.util.Set;
@@ -100,8 +101,11 @@ public class JAXRSServerFactoryBean exte
*/
public void setApplication(Application app) {
appProvider = new ProviderInfo<Application>(app, getBus());
+ List<String> appNameBindings =
AnnotationUtils.getNameBindings(app.getClass().getAnnotations());
for (ClassResourceInfo cri :
getServiceFactory().getClassResourceInfo()) {
-
cri.setNameBindings(AnnotationUtils.getNameBindings(app.getClass().getAnnotations()));
+ List<String> clsNameBindings = new
LinkedList<String>(appNameBindings);
+
clsNameBindings.addAll(AnnotationUtils.getNameBindings(cri.getServiceClass().getAnnotations()));
+ cri.setNameBindings(clsNameBindings);
}
}