You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cxf.apache.org by jl...@apache.org on 2007/11/01 10:50:30 UTC

svn commit: r590950 - in /incubator/cxf/trunk: rt/frontend/jaxrs/src/main/java/org/apache/cxf/jaxrs/ rt/frontend/jaxrs/src/main/java/org/apache/cxf/jaxrs/spring/ rt/frontend/jaxrs/src/main/resources/META-INF/ rt/frontend/jaxrs/src/main/resources/schema...

Author: jliu
Date: Thu Nov  1 02:50:29 2007
New Revision: 590950

URL: http://svn.apache.org/viewvc?rev=590950&view=rev
Log: (empty)

Added:
    incubator/cxf/trunk/rt/frontend/jaxrs/src/main/java/org/apache/cxf/jaxrs/spring/
    incubator/cxf/trunk/rt/frontend/jaxrs/src/main/java/org/apache/cxf/jaxrs/spring/JAXRSServerFactoryBeanDefinitionParser.java   (with props)
    incubator/cxf/trunk/rt/frontend/jaxrs/src/main/java/org/apache/cxf/jaxrs/spring/NamespaceHandler.java   (with props)
    incubator/cxf/trunk/rt/frontend/jaxrs/src/main/resources/META-INF/spring.handlers
    incubator/cxf/trunk/rt/frontend/jaxrs/src/main/resources/META-INF/spring.schemas
    incubator/cxf/trunk/rt/frontend/jaxrs/src/main/resources/schemas/
    incubator/cxf/trunk/rt/frontend/jaxrs/src/main/resources/schemas/jaxrs.xsd   (with props)
    incubator/cxf/trunk/systests/src/test/java/org/apache/cxf/systest/jaxrs/BookServerSpring.java   (with props)
    incubator/cxf/trunk/systests/src/test/java/org/apache/cxf/systest/jaxrs/JAXRSClientServerSpringBookTest.java   (with props)
    incubator/cxf/trunk/systests/src/test/resources/jaxrs/
    incubator/cxf/trunk/systests/src/test/resources/jaxrs/WEB-INF/
    incubator/cxf/trunk/systests/src/test/resources/jaxrs/WEB-INF/beans.xml   (with props)
    incubator/cxf/trunk/systests/src/test/resources/jaxrs/WEB-INF/web.xml   (with props)
Modified:
    incubator/cxf/trunk/rt/frontend/jaxrs/src/main/java/org/apache/cxf/jaxrs/JAXRSServerFactoryBean.java
    incubator/cxf/trunk/systests/src/test/java/org/apache/cxf/systest/jaxrs/BookServer.java
    incubator/cxf/trunk/systests/src/test/java/org/apache/cxf/systest/jaxrs/BookServerFromResourceInstance.java

Modified: incubator/cxf/trunk/rt/frontend/jaxrs/src/main/java/org/apache/cxf/jaxrs/JAXRSServerFactoryBean.java
URL: http://svn.apache.org/viewvc/incubator/cxf/trunk/rt/frontend/jaxrs/src/main/java/org/apache/cxf/jaxrs/JAXRSServerFactoryBean.java?rev=590950&r1=590949&r2=590950&view=diff
==============================================================================
--- incubator/cxf/trunk/rt/frontend/jaxrs/src/main/java/org/apache/cxf/jaxrs/JAXRSServerFactoryBean.java (original)
+++ incubator/cxf/trunk/rt/frontend/jaxrs/src/main/java/org/apache/cxf/jaxrs/JAXRSServerFactoryBean.java Thu Nov  1 02:50:29 2007
@@ -65,11 +65,12 @@
 
     public JAXRSServerFactoryBean() {
         this(new JAXRSServiceFactoryBean());
-        doInit = true;
     }
+
     public JAXRSServerFactoryBean(JAXRSServiceFactoryBean sf) {
         this.serviceFactory = sf;
         doInit = true;
+        setBindingId(JAXRSBindingFactory.JAXRS_BINDING_ID);
     }
     
     public Server create() {

Added: incubator/cxf/trunk/rt/frontend/jaxrs/src/main/java/org/apache/cxf/jaxrs/spring/JAXRSServerFactoryBeanDefinitionParser.java
URL: http://svn.apache.org/viewvc/incubator/cxf/trunk/rt/frontend/jaxrs/src/main/java/org/apache/cxf/jaxrs/spring/JAXRSServerFactoryBeanDefinitionParser.java?rev=590950&view=auto
==============================================================================
--- incubator/cxf/trunk/rt/frontend/jaxrs/src/main/java/org/apache/cxf/jaxrs/spring/JAXRSServerFactoryBeanDefinitionParser.java (added)
+++ incubator/cxf/trunk/rt/frontend/jaxrs/src/main/java/org/apache/cxf/jaxrs/spring/JAXRSServerFactoryBeanDefinitionParser.java Thu Nov  1 02:50:29 2007
@@ -0,0 +1,106 @@
+/**
+ * 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.cxf.jaxrs.spring;
+
+import java.util.List;
+import java.util.Map;
+
+import javax.xml.namespace.QName;
+
+import org.w3c.dom.Element;
+
+import org.apache.cxf.common.util.StringUtils;
+import org.apache.cxf.configuration.spring.AbstractBeanDefinitionParser;
+import org.apache.cxf.jaxrs.JAXRSServerFactoryBean;
+
+import org.springframework.beans.factory.BeanDefinitionStoreException;
+import org.springframework.beans.factory.support.AbstractBeanDefinition;
+import org.springframework.beans.factory.support.BeanDefinitionBuilder;
+import org.springframework.beans.factory.xml.ParserContext;
+
+
+public class JAXRSServerFactoryBeanDefinitionParser extends AbstractBeanDefinitionParser {
+    
+
+    public JAXRSServerFactoryBeanDefinitionParser() {
+        super();
+        setBeanClass(JAXRSServerFactoryBean.class);
+    }
+    
+    @Override
+    protected void mapAttribute(BeanDefinitionBuilder bean, Element e, String name, String val) {
+        if ("endpointName".equals(name) || "serviceName".equals(name)) {
+            QName q = parseQName(e, val);
+            bean.addPropertyValue(name, q);
+        } else {
+            mapToProperty(bean, name, val);
+        }
+    }
+
+    @Override
+    protected void mapElement(ParserContext ctx, BeanDefinitionBuilder bean, Element el, String name) {
+        if ("properties".equals(name)) {
+            Map map = ctx.getDelegate().parseMapElement(el, bean.getBeanDefinition());
+            bean.addPropertyValue("properties", map);
+        } else if ("executor".equals(name)) {
+            setFirstChildAsProperty(el, ctx, bean, "serviceFactory.executor");
+        } else if ("invoker".equals(name)) {
+            setFirstChildAsProperty(el, ctx, bean, "serviceFactory.invoker");
+        } else if ("binding".equals(name)) {
+            setFirstChildAsProperty(el, ctx, bean, "bindingConfig");
+        } else if ("inInterceptors".equals(name) || "inFaultInterceptors".equals(name)
+            || "outInterceptors".equals(name) || "outFaultInterceptors".equals(name)
+            || "features".equals(name) || "schemaLocations".equals(name)) {
+            List list = ctx.getDelegate().parseListElement(el, bean.getBeanDefinition());
+            bean.addPropertyValue(name, list);
+        } else {
+            setFirstChildAsProperty(el, ctx, bean, name);            
+        }        
+    }
+    
+
+    @Override
+    protected void doParse(Element element, ParserContext ctx, BeanDefinitionBuilder bean) {
+        super.doParse(element, ctx, bean);
+
+        bean.setInitMethodName("create");
+        
+        // We don't really want to delay the registration of our Server
+        bean.setLazyInit(false);
+    }
+
+    @Override
+    protected String resolveId(Element elem, 
+                               AbstractBeanDefinition definition, 
+                               ParserContext ctx) 
+        throws BeanDefinitionStoreException {
+        String id = super.resolveId(elem, definition, ctx);
+        if (StringUtils.isEmpty(id)) {
+            id = getBeanClass().getName() + "--" + definition.hashCode();
+        }
+        
+        return id;
+    }
+
+    @Override
+    protected boolean hasBusProperty() {
+        return true;
+    }
+
+}

Propchange: incubator/cxf/trunk/rt/frontend/jaxrs/src/main/java/org/apache/cxf/jaxrs/spring/JAXRSServerFactoryBeanDefinitionParser.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: incubator/cxf/trunk/rt/frontend/jaxrs/src/main/java/org/apache/cxf/jaxrs/spring/JAXRSServerFactoryBeanDefinitionParser.java
------------------------------------------------------------------------------
    svn:keywords = Rev Date

Added: incubator/cxf/trunk/rt/frontend/jaxrs/src/main/java/org/apache/cxf/jaxrs/spring/NamespaceHandler.java
URL: http://svn.apache.org/viewvc/incubator/cxf/trunk/rt/frontend/jaxrs/src/main/java/org/apache/cxf/jaxrs/spring/NamespaceHandler.java?rev=590950&view=auto
==============================================================================
--- incubator/cxf/trunk/rt/frontend/jaxrs/src/main/java/org/apache/cxf/jaxrs/spring/NamespaceHandler.java (added)
+++ incubator/cxf/trunk/rt/frontend/jaxrs/src/main/java/org/apache/cxf/jaxrs/spring/NamespaceHandler.java Thu Nov  1 02:50:29 2007
@@ -0,0 +1,29 @@
+/**
+ * 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.cxf.jaxrs.spring;
+
+import org.apache.cxf.configuration.spring.StringBeanDefinitionParser;
+import org.springframework.beans.factory.xml.NamespaceHandlerSupport;
+
+public class NamespaceHandler extends NamespaceHandlerSupport {
+    public void init() {
+        registerBeanDefinitionParser("server", new JAXRSServerFactoryBeanDefinitionParser());        
+        registerBeanDefinitionParser("schemaLocation", new StringBeanDefinitionParser());    
+    }
+}

Propchange: incubator/cxf/trunk/rt/frontend/jaxrs/src/main/java/org/apache/cxf/jaxrs/spring/NamespaceHandler.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: incubator/cxf/trunk/rt/frontend/jaxrs/src/main/java/org/apache/cxf/jaxrs/spring/NamespaceHandler.java
------------------------------------------------------------------------------
    svn:keywords = Rev Date

Added: incubator/cxf/trunk/rt/frontend/jaxrs/src/main/resources/META-INF/spring.handlers
URL: http://svn.apache.org/viewvc/incubator/cxf/trunk/rt/frontend/jaxrs/src/main/resources/META-INF/spring.handlers?rev=590950&view=auto
==============================================================================
--- incubator/cxf/trunk/rt/frontend/jaxrs/src/main/resources/META-INF/spring.handlers (added)
+++ incubator/cxf/trunk/rt/frontend/jaxrs/src/main/resources/META-INF/spring.handlers Thu Nov  1 02:50:29 2007
@@ -0,0 +1,21 @@
+#
+#
+#    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.
+#
+#
+http\://cxf.apache.org/jaxrs=org.apache.cxf.jaxrs.spring.NamespaceHandler
\ No newline at end of file

Added: incubator/cxf/trunk/rt/frontend/jaxrs/src/main/resources/META-INF/spring.schemas
URL: http://svn.apache.org/viewvc/incubator/cxf/trunk/rt/frontend/jaxrs/src/main/resources/META-INF/spring.schemas?rev=590950&view=auto
==============================================================================
--- incubator/cxf/trunk/rt/frontend/jaxrs/src/main/resources/META-INF/spring.schemas (added)
+++ incubator/cxf/trunk/rt/frontend/jaxrs/src/main/resources/META-INF/spring.schemas Thu Nov  1 02:50:29 2007
@@ -0,0 +1,21 @@
+#
+#
+#    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.
+#
+#
+http\://cxf.apache.org/schemas/jaxrs.xsd=schemas/jaxrs.xsd
\ No newline at end of file

Added: incubator/cxf/trunk/rt/frontend/jaxrs/src/main/resources/schemas/jaxrs.xsd
URL: http://svn.apache.org/viewvc/incubator/cxf/trunk/rt/frontend/jaxrs/src/main/resources/schemas/jaxrs.xsd?rev=590950&view=auto
==============================================================================
--- incubator/cxf/trunk/rt/frontend/jaxrs/src/main/resources/schemas/jaxrs.xsd (added)
+++ incubator/cxf/trunk/rt/frontend/jaxrs/src/main/resources/schemas/jaxrs.xsd Thu Nov  1 02:50:29 2007
@@ -0,0 +1,69 @@
+<?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.
+-->
+<xsd:schema xmlns="http://cxf.apache.org/jaxrs"
+  xmlns:xsd="http://www.w3.org/2001/XMLSchema"
+  xmlns:beans="http://www.springframework.org/schema/beans"
+  xmlns:cxf-beans="http://cxf.apache.org/configuration/beans"
+  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+  targetNamespace="http://cxf.apache.org/jaxrs" 
+  elementFormDefault="qualified"
+  attributeFormDefault="unqualified"  >
+
+  <xsd:import namespace="http://www.springframework.org/schema/beans" schemaLocation="http://www.springframework.org/schema/beans/spring-beans.xsd"/>
+  <xsd:import namespace="http://cxf.apache.org/configuration/beans" schemaLocation="http://cxf.apache.org/schemas/configuration/cxf-beans.xsd"/>
+  
+  <xsd:element name="server">
+    <xsd:complexType>
+      <xsd:complexContent>
+        <xsd:extension base="beans:identifiedType">
+          <xsd:all>
+            <xsd:element name="binding" type="xsd:anyType" minOccurs="0"/>
+            <xsd:element name="executor" type="xsd:anyType" minOccurs="0"/>
+            <xsd:element name="features" type="xsd:anyType" minOccurs="0"/>
+            <xsd:element name="inInterceptors" type="xsd:anyType" minOccurs="0"/>
+            <xsd:element name="inFaultInterceptors" type="xsd:anyType" minOccurs="0"/>
+            <xsd:element name="invoker" type="xsd:anyType" minOccurs="0"/>
+            <xsd:element name="outInterceptors" type="xsd:anyType" minOccurs="0"/>
+            <xsd:element name="outFaultInterceptors" type="xsd:anyType" minOccurs="0"/>
+            <xsd:element name="properties" type="beans:mapType" minOccurs="0"/>
+            <xsd:element name="serviceBeans" type="xsd:anyType" minOccurs="0"/>
+            <xsd:element name="serviceFactory" type="xsd:anyType" minOccurs="0"/>
+          </xsd:all>
+          <xsd:attributeGroup ref="cxf-beans:beanAttributes"/>
+          <xsd:attribute name="address" type="xsd:string" />
+          <xsd:attribute name="bindingId" type="xsd:string" />
+          <xsd:attribute name="bus" type="xsd:string" />
+          <xsd:attribute name="serviceClass" type="xsd:string"/>
+          <xsd:attribute name="serviceBeans" type="xsd:string"/>          
+          <xsd:attribute name="transportId" type="xsd:string"/>
+          <xsd:attribute name="endpointName" type="xsd:QName" />
+          <xsd:attribute name="serviceName" type="xsd:QName" />
+        </xsd:extension>
+      </xsd:complexContent>
+    </xsd:complexType>
+  </xsd:element>
+  
+  <xsd:complexType name="schemasType">
+    <xsd:sequence>
+      <xsd:element name="schemaLocation" type="xsd:string" minOccurs="0" maxOccurs="unbounded"/>
+    </xsd:sequence>
+  </xsd:complexType>
+  
+</xsd:schema>

Propchange: incubator/cxf/trunk/rt/frontend/jaxrs/src/main/resources/schemas/jaxrs.xsd
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: incubator/cxf/trunk/rt/frontend/jaxrs/src/main/resources/schemas/jaxrs.xsd
------------------------------------------------------------------------------
    svn:keywords = Rev Date

Propchange: incubator/cxf/trunk/rt/frontend/jaxrs/src/main/resources/schemas/jaxrs.xsd
------------------------------------------------------------------------------
    svn:mime-type = text/xml

Modified: incubator/cxf/trunk/systests/src/test/java/org/apache/cxf/systest/jaxrs/BookServer.java
URL: http://svn.apache.org/viewvc/incubator/cxf/trunk/systests/src/test/java/org/apache/cxf/systest/jaxrs/BookServer.java?rev=590950&r1=590949&r2=590950&view=diff
==============================================================================
--- incubator/cxf/trunk/systests/src/test/java/org/apache/cxf/systest/jaxrs/BookServer.java (original)
+++ incubator/cxf/trunk/systests/src/test/java/org/apache/cxf/systest/jaxrs/BookServer.java Thu Nov  1 02:50:29 2007
@@ -19,8 +19,6 @@
 
 package org.apache.cxf.systest.jaxrs;
 
-
-import org.apache.cxf.jaxrs.JAXRSBindingFactory;
 import org.apache.cxf.jaxrs.JAXRSServerFactoryBean;
 import org.apache.cxf.jaxrs.lifecycle.SingletonResourceProvider;
 import org.apache.cxf.testutil.common.AbstractBusTestServerBase;
@@ -32,7 +30,6 @@
         sf.setResourceClasses(BookStore.class);
         //default lifecycle is per-request, change it to singleton
         sf.setResourceProvider(BookStore.class, new SingletonResourceProvider());
-        sf.setBindingId(JAXRSBindingFactory.JAXRS_BINDING_ID);
         sf.setAddress("http://localhost:9080/");
 
         sf.create();        

Modified: incubator/cxf/trunk/systests/src/test/java/org/apache/cxf/systest/jaxrs/BookServerFromResourceInstance.java
URL: http://svn.apache.org/viewvc/incubator/cxf/trunk/systests/src/test/java/org/apache/cxf/systest/jaxrs/BookServerFromResourceInstance.java?rev=590950&r1=590949&r2=590950&view=diff
==============================================================================
--- incubator/cxf/trunk/systests/src/test/java/org/apache/cxf/systest/jaxrs/BookServerFromResourceInstance.java (original)
+++ incubator/cxf/trunk/systests/src/test/java/org/apache/cxf/systest/jaxrs/BookServerFromResourceInstance.java Thu Nov  1 02:50:29 2007
@@ -19,8 +19,6 @@
 
 package org.apache.cxf.systest.jaxrs;
 
-
-import org.apache.cxf.jaxrs.JAXRSBindingFactory;
 import org.apache.cxf.jaxrs.JAXRSServerFactoryBean;
 import org.apache.cxf.testutil.common.AbstractBusTestServerBase;
     
@@ -30,7 +28,6 @@
         JAXRSServerFactoryBean sf = new JAXRSServerFactoryBean();
         BookStore bs = new BookStore();
         sf.setServiceBeans(bs);
-        sf.setBindingId(JAXRSBindingFactory.JAXRS_BINDING_ID);
         sf.setAddress("http://localhost:9080/");
 
         sf.create();        

Added: incubator/cxf/trunk/systests/src/test/java/org/apache/cxf/systest/jaxrs/BookServerSpring.java
URL: http://svn.apache.org/viewvc/incubator/cxf/trunk/systests/src/test/java/org/apache/cxf/systest/jaxrs/BookServerSpring.java?rev=590950&view=auto
==============================================================================
--- incubator/cxf/trunk/systests/src/test/java/org/apache/cxf/systest/jaxrs/BookServerSpring.java (added)
+++ incubator/cxf/trunk/systests/src/test/java/org/apache/cxf/systest/jaxrs/BookServerSpring.java Thu Nov  1 02:50:29 2007
@@ -0,0 +1,89 @@
+/**
+ * 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.cxf.systest.jaxrs;
+
+import java.net.URISyntaxException;
+
+import org.apache.cxf.testutil.common.AbstractBusTestServerBase;
+import org.mortbay.jetty.Connector;
+import org.mortbay.jetty.Handler;
+import org.mortbay.jetty.handler.DefaultHandler;
+import org.mortbay.jetty.handler.HandlerCollection;
+import org.mortbay.jetty.nio.SelectChannelConnector;
+import org.mortbay.jetty.webapp.WebAppContext;
+
+
+public class BookServerSpring extends AbstractBusTestServerBase {
+
+    private org.mortbay.jetty.Server server;
+    
+    protected void run() {
+        System.out.println("Starting Server");
+
+        server = new org.mortbay.jetty.Server();
+
+        SelectChannelConnector connector = new SelectChannelConnector();
+        connector.setPort(9080);
+        server.setConnectors(new Connector[] {connector});
+
+        WebAppContext webappcontext = new WebAppContext();
+        String contextPath = null;
+        try {
+            contextPath = getClass().getResource("/jaxrs").toURI().getPath();
+        } catch (URISyntaxException e1) {
+            e1.printStackTrace();
+        }
+        webappcontext.setContextPath("/");
+
+        webappcontext.setWar(contextPath);
+
+        HandlerCollection handlers = new HandlerCollection();
+        handlers.setHandlers(new Handler[] {webappcontext, new DefaultHandler()});
+
+        server.setHandler(handlers);
+        try {
+            server.start();
+                       
+        } catch (Exception e) {
+            e.printStackTrace();
+        }     
+    }
+
+    public boolean stopInProcess() throws Exception {
+        boolean ret = super.stopInProcess();
+        if (server != null) {
+            server.stop();
+        }
+        return ret;
+    }    
+    
+    public static void main(String args[]) {
+        try {
+            BookServerSpring s = new BookServerSpring();
+            s.start();
+        } catch (Exception ex) {
+            ex.printStackTrace();
+            System.exit(-1);
+        } finally {
+            System.out.println("done!");
+        }
+    }
+
+}

Propchange: incubator/cxf/trunk/systests/src/test/java/org/apache/cxf/systest/jaxrs/BookServerSpring.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: incubator/cxf/trunk/systests/src/test/java/org/apache/cxf/systest/jaxrs/BookServerSpring.java
------------------------------------------------------------------------------
    svn:keywords = Rev Date

Added: incubator/cxf/trunk/systests/src/test/java/org/apache/cxf/systest/jaxrs/JAXRSClientServerSpringBookTest.java
URL: http://svn.apache.org/viewvc/incubator/cxf/trunk/systests/src/test/java/org/apache/cxf/systest/jaxrs/JAXRSClientServerSpringBookTest.java?rev=590950&view=auto
==============================================================================
--- incubator/cxf/trunk/systests/src/test/java/org/apache/cxf/systest/jaxrs/JAXRSClientServerSpringBookTest.java (added)
+++ incubator/cxf/trunk/systests/src/test/java/org/apache/cxf/systest/jaxrs/JAXRSClientServerSpringBookTest.java Thu Nov  1 02:50:29 2007
@@ -0,0 +1,62 @@
+/**
+ * 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.cxf.systest.jaxrs;
+
+import java.io.InputStream;
+import java.net.URL;
+
+import org.apache.cxf.helpers.IOUtils;
+import org.apache.cxf.io.CachedOutputStream;
+import org.apache.cxf.testutil.common.AbstractBusClientServerTestBase;
+import org.junit.BeforeClass;
+import org.junit.Test;
+
+public class JAXRSClientServerSpringBookTest extends AbstractBusClientServerTestBase {
+
+    @BeforeClass
+    public static void startServers() throws Exception {
+        assertTrue("server did not launch correctly", launchServer(BookServerSpring.class));
+    }
+    
+    @Test
+    public void testGetBook123() throws Exception {
+        String endpointAddress =
+            "http://localhost:9080/bookstore/books/123"; 
+        URL url = new URL(endpointAddress);
+        InputStream in = url.openStream();
+        assertNotNull(in);           
+
+        InputStream expected = getClass()
+            .getResourceAsStream("resources/expected_get_book123.txt");
+
+        //System.out.println("---" + getStringFromInputStream(in));
+        assertEquals(getStringFromInputStream(expected), getStringFromInputStream(in)); 
+    }
+
+    private String getStringFromInputStream(InputStream in) throws Exception {        
+        CachedOutputStream bos = new CachedOutputStream();
+        IOUtils.copy(in, bos);
+        in.close();
+        bos.close();
+        //System.out.println(bos.getOut().toString());        
+        return bos.getOut().toString();        
+    }
+
+}

Propchange: incubator/cxf/trunk/systests/src/test/java/org/apache/cxf/systest/jaxrs/JAXRSClientServerSpringBookTest.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: incubator/cxf/trunk/systests/src/test/java/org/apache/cxf/systest/jaxrs/JAXRSClientServerSpringBookTest.java
------------------------------------------------------------------------------
    svn:keywords = Rev Date

Added: incubator/cxf/trunk/systests/src/test/resources/jaxrs/WEB-INF/beans.xml
URL: http://svn.apache.org/viewvc/incubator/cxf/trunk/systests/src/test/resources/jaxrs/WEB-INF/beans.xml?rev=590950&view=auto
==============================================================================
--- incubator/cxf/trunk/systests/src/test/resources/jaxrs/WEB-INF/beans.xml (added)
+++ incubator/cxf/trunk/systests/src/test/resources/jaxrs/WEB-INF/beans.xml Thu Nov  1 02:50:29 2007
@@ -0,0 +1,48 @@
+<?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.
+-->
+<!-- START SNIPPET: beans -->
+<!--beans xmlns="http://www.springframework.org/schema/beans"
+  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+  xmlns:simple="http://cxf.apache.org/simple"
+  xsi:schemaLocation="
+  http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd
+  http://cxf.apache.org/simple http://cxf.apache.org/schemas/simple.xsd"-->
+<beans xmlns="http://www.springframework.org/schema/beans"
+  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+  xmlns:jaxrs="http://cxf.apache.org/jaxrs"
+  xsi:schemaLocation="
+http://www.springframework.org/schema/beans 
+http://www.springframework.org/schema/beans/spring-beans.xsd
+http://cxf.apache.org/jaxrs
+http://cxf.apache.org/schemas/jaxrs.xsd">
+
+  <import resource="classpath:META-INF/cxf/cxf.xml" />
+  <import resource="classpath:META-INF/cxf/cxf-extension-jaxrs-binding.xml" />
+  <import resource="classpath:META-INF/cxf/cxf-servlet.xml" />
+  
+  <jaxrs:server id="bookservice"
+		        address="/">
+    <jaxrs:serviceBeans>
+      <bean class="org.apache.cxf.systest.jaxrs.BookStore" />
+    </jaxrs:serviceBeans>		   
+  </jaxrs:server>
+
+</beans>
+<!-- END SNIPPET: beans -->

Propchange: incubator/cxf/trunk/systests/src/test/resources/jaxrs/WEB-INF/beans.xml
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: incubator/cxf/trunk/systests/src/test/resources/jaxrs/WEB-INF/beans.xml
------------------------------------------------------------------------------
    svn:keywords = Rev Date

Propchange: incubator/cxf/trunk/systests/src/test/resources/jaxrs/WEB-INF/beans.xml
------------------------------------------------------------------------------
    svn:mime-type = text/xml

Added: incubator/cxf/trunk/systests/src/test/resources/jaxrs/WEB-INF/web.xml
URL: http://svn.apache.org/viewvc/incubator/cxf/trunk/systests/src/test/resources/jaxrs/WEB-INF/web.xml?rev=590950&view=auto
==============================================================================
--- incubator/cxf/trunk/systests/src/test/resources/jaxrs/WEB-INF/web.xml (added)
+++ incubator/cxf/trunk/systests/src/test/resources/jaxrs/WEB-INF/web.xml Thu Nov  1 02:50:29 2007
@@ -0,0 +1,52 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+
+<!DOCTYPE web-app
+    PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
+    "http://java.sun.com/dtd/web-app_2_3.dtd">
+
+<!--
+	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.
+-->
+<!-- START SNIPPET: webxml -->
+<web-app>
+	<context-param>
+		<param-name>contextConfigLocation</param-name>
+		<param-value>WEB-INF/beans.xml</param-value>
+	</context-param>
+
+	<listener>
+		<listener-class>
+			org.springframework.web.context.ContextLoaderListener
+		</listener-class>
+	</listener>
+
+	<servlet>
+		<servlet-name>CXFServlet</servlet-name>
+		<display-name>CXF Servlet</display-name>
+		<servlet-class>
+			org.apache.cxf.transport.servlet.CXFServlet
+		</servlet-class>
+		<load-on-startup>1</load-on-startup>
+	</servlet>
+
+	<servlet-mapping>
+		<servlet-name>CXFServlet</servlet-name>
+		<url-pattern>/*</url-pattern>
+	</servlet-mapping>
+</web-app>
+<!-- END SNIPPET: webxml -->
\ No newline at end of file

Propchange: incubator/cxf/trunk/systests/src/test/resources/jaxrs/WEB-INF/web.xml
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: incubator/cxf/trunk/systests/src/test/resources/jaxrs/WEB-INF/web.xml
------------------------------------------------------------------------------
    svn:keywords = Rev Date

Propchange: incubator/cxf/trunk/systests/src/test/resources/jaxrs/WEB-INF/web.xml
------------------------------------------------------------------------------
    svn:mime-type = text/xml



RE: svn commit: r590950 - in /incubator/cxf/trunk: rt/frontend/jaxrs/src/main/java/org/apache/cxf/jaxrs/ rt/frontend/jaxrs/src/main/java/org/apache/cxf/jaxrs/spring/ rt/frontend/jaxrs/src/main/resources/META-INF/ rt/frontend/jaxrs/src/main/resources/schem

Posted by "Liu, Jervis" <jl...@iona.com>.
Forgot writing a log. This commit is for CXF-1162. Run JAX-RS server with Spring configuration.

Jervis

> -----Original Message-----
> From: jliu@apache.org [mailto:jliu@apache.org]
> Sent: 2007年11月1日 17:51
> To: cxf-commits@incubator.apache.org
> Subject: svn commit: r590950 - in /incubator/cxf/trunk:
> rt/frontend/jaxrs/src/main/java/org/apache/cxf/jaxrs/
> rt/frontend/jaxrs/src/main/java/org/apache/cxf/jaxrs/spring/
> rt/frontend/jaxrs/src/main/resources/META-INF/
> rt/frontend/jaxrs/src/main/resources/schema...
> 
> 
> Author: jliu
> Date: Thu Nov  1 02:50:29 2007
> New Revision: 590950
> 
> URL: http://svn.apache.org/viewvc?rev=590950&view=rev
> Log: (empty)
> 
> Added:
>     
> incubator/cxf/trunk/rt/frontend/jaxrs/src/main/java/org/apache
> /cxf/jaxrs/spring/
>     
> incubator/cxf/trunk/rt/frontend/jaxrs/src/main/java/org/apache
> /cxf/jaxrs/spring/JAXRSServerFactoryBeanDefinitionParser.java 
>   (with props)
>     
> incubator/cxf/trunk/rt/frontend/jaxrs/src/main/java/org/apache
> /cxf/jaxrs/spring/NamespaceHandler.java   (with props)
>     
> incubator/cxf/trunk/rt/frontend/jaxrs/src/main/resources/META-
> INF/spring.handlers
>     
> incubator/cxf/trunk/rt/frontend/jaxrs/src/main/resources/META-
> INF/spring.schemas
>     incubator/cxf/trunk/rt/frontend/jaxrs/src/main/resources/schemas/
>     
> incubator/cxf/trunk/rt/frontend/jaxrs/src/main/resources/schem
> as/jaxrs.xsd   (with props)
>     
> incubator/cxf/trunk/systests/src/test/java/org/apache/cxf/syst
> est/jaxrs/BookServerSpring.java   (with props)
>     
> incubator/cxf/trunk/systests/src/test/java/org/apache/cxf/syst
> est/jaxrs/JAXRSClientServerSpringBookTest.java   (with props)
>     incubator/cxf/trunk/systests/src/test/resources/jaxrs/
>     incubator/cxf/trunk/systests/src/test/resources/jaxrs/WEB-INF/
>     
> incubator/cxf/trunk/systests/src/test/resources/jaxrs/WEB-INF/
> beans.xml   (with props)
>     
> incubator/cxf/trunk/systests/src/test/resources/jaxrs/WEB-INF/
> web.xml   (with props)
> Modified:
>     
> incubator/cxf/trunk/rt/frontend/jaxrs/src/main/java/org/apache
> /cxf/jaxrs/JAXRSServerFactoryBean.java
>     
> incubator/cxf/trunk/systests/src/test/java/org/apache/cxf/syst
> est/jaxrs/BookServer.java
>     
> incubator/cxf/trunk/systests/src/test/java/org/apache/cxf/syst
> est/jaxrs/BookServerFromResourceInstance.java
> 
> Modified: 
> incubator/cxf/trunk/rt/frontend/jaxrs/src/main/java/org/apache
> /cxf/jaxrs/JAXRSServerFactoryBean.java
> URL: 
> http://svn.apache.org/viewvc/incubator/cxf/trunk/rt/frontend/j
> axrs/src/main/java/org/apache/cxf/jaxrs/JAXRSServerFactoryBean
> .java?rev=590950&r1=590949&r2=590950&view=diff
> ==============================================================
> ================
> --- 
> incubator/cxf/trunk/rt/frontend/jaxrs/src/main/java/org/apache
> /cxf/jaxrs/JAXRSServerFactoryBean.java (original)
> +++ 
> incubator/cxf/trunk/rt/frontend/jaxrs/src/main/java/org/apache
> /cxf/jaxrs/JAXRSServerFactoryBean.java Thu Nov  1 02:50:29 2007
> @@ -65,11 +65,12 @@
>  
>      public JAXRSServerFactoryBean() {
>          this(new JAXRSServiceFactoryBean());
> -        doInit = true;
>      }
> +
>      public JAXRSServerFactoryBean(JAXRSServiceFactoryBean sf) {
>          this.serviceFactory = sf;
>          doInit = true;
> +        setBindingId(JAXRSBindingFactory.JAXRS_BINDING_ID);
>      }
>      
>      public Server create() {
> 
> Added: 
> incubator/cxf/trunk/rt/frontend/jaxrs/src/main/java/org/apache
> /cxf/jaxrs/spring/JAXRSServerFactoryBeanDefinitionParser.java
> URL: 
> http://svn.apache.org/viewvc/incubator/cxf/trunk/rt/frontend/j
> axrs/src/main/java/org/apache/cxf/jaxrs/spring/JAXRSServerFact
> oryBeanDefinitionParser.java?rev=590950&view=auto
> ==============================================================
> ================
> --- 
> incubator/cxf/trunk/rt/frontend/jaxrs/src/main/java/org/apache
> /cxf/jaxrs/spring/JAXRSServerFactoryBeanDefinitionParser.java (added)
> +++ 
> incubator/cxf/trunk/rt/frontend/jaxrs/src/main/java/org/apache
> /cxf/jaxrs/spring/JAXRSServerFactoryBeanDefinitionParser.java 
> Thu Nov  1 02:50:29 2007
> @@ -0,0 +1,106 @@
> +/**
> + * 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.cxf.jaxrs.spring;
> +
> +import java.util.List;
> +import java.util.Map;
> +
> +import javax.xml.namespace.QName;
> +
> +import org.w3c.dom.Element;
> +
> +import org.apache.cxf.common.util.StringUtils;
> +import 
> org.apache.cxf.configuration.spring.AbstractBeanDefinitionParser;
> +import org.apache.cxf.jaxrs.JAXRSServerFactoryBean;
> +
> +import 
> org.springframework.beans.factory.BeanDefinitionStoreException;
> +import 
> org.springframework.beans.factory.support.AbstractBeanDefinition;
> +import 
> org.springframework.beans.factory.support.BeanDefinitionBuilder;
> +import org.springframework.beans.factory.xml.ParserContext;
> +
> +
> +public class JAXRSServerFactoryBeanDefinitionParser extends 
> AbstractBeanDefinitionParser {
> +    
> +
> +    public JAXRSServerFactoryBeanDefinitionParser() {
> +        super();
> +        setBeanClass(JAXRSServerFactoryBean.class);
> +    }
> +    
> +    @Override
> +    protected void mapAttribute(BeanDefinitionBuilder bean, 
> Element e, String name, String val) {
> +        if ("endpointName".equals(name) || 
> "serviceName".equals(name)) {
> +            QName q = parseQName(e, val);
> +            bean.addPropertyValue(name, q);
> +        } else {
> +            mapToProperty(bean, name, val);
> +        }
> +    }
> +
> +    @Override
> +    protected void mapElement(ParserContext ctx, 
> BeanDefinitionBuilder bean, Element el, String name) {
> +        if ("properties".equals(name)) {
> +            Map map = ctx.getDelegate().parseMapElement(el, 
> bean.getBeanDefinition());
> +            bean.addPropertyValue("properties", map);
> +        } else if ("executor".equals(name)) {
> +            setFirstChildAsProperty(el, ctx, bean, 
> "serviceFactory.executor");
> +        } else if ("invoker".equals(name)) {
> +            setFirstChildAsProperty(el, ctx, bean, 
> "serviceFactory.invoker");
> +        } else if ("binding".equals(name)) {
> +            setFirstChildAsProperty(el, ctx, bean, "bindingConfig");
> +        } else if ("inInterceptors".equals(name) || 
> "inFaultInterceptors".equals(name)
> +            || "outInterceptors".equals(name) || 
> "outFaultInterceptors".equals(name)
> +            || "features".equals(name) || 
> "schemaLocations".equals(name)) {
> +            List list = 
> ctx.getDelegate().parseListElement(el, bean.getBeanDefinition());
> +            bean.addPropertyValue(name, list);
> +        } else {
> +            setFirstChildAsProperty(el, ctx, bean, name);            
> +        }        
> +    }
> +    
> +
> +    @Override
> +    protected void doParse(Element element, ParserContext 
> ctx, BeanDefinitionBuilder bean) {
> +        super.doParse(element, ctx, bean);
> +
> +        bean.setInitMethodName("create");
> +        
> +        // We don't really want to delay the registration of 
> our Server
> +        bean.setLazyInit(false);
> +    }
> +
> +    @Override
> +    protected String resolveId(Element elem, 
> +                               AbstractBeanDefinition definition, 
> +                               ParserContext ctx) 
> +        throws BeanDefinitionStoreException {
> +        String id = super.resolveId(elem, definition, ctx);
> +        if (StringUtils.isEmpty(id)) {
> +            id = getBeanClass().getName() + "--" + 
> definition.hashCode();
> +        }
> +        
> +        return id;
> +    }
> +
> +    @Override
> +    protected boolean hasBusProperty() {
> +        return true;
> +    }
> +
> +}
> 
> Propchange: 
> incubator/cxf/trunk/rt/frontend/jaxrs/src/main/java/org/apache
> /cxf/jaxrs/spring/JAXRSServerFactoryBeanDefinitionParser.java
> --------------------------------------------------------------
> ----------------
>     svn:eol-style = native
> 
> Propchange: 
> incubator/cxf/trunk/rt/frontend/jaxrs/src/main/java/org/apache
> /cxf/jaxrs/spring/JAXRSServerFactoryBeanDefinitionParser.java
> --------------------------------------------------------------
> ----------------
>     svn:keywords = Rev Date
> 
> Added: 
> incubator/cxf/trunk/rt/frontend/jaxrs/src/main/java/org/apache
> /cxf/jaxrs/spring/NamespaceHandler.java
> URL: 
> http://svn.apache.org/viewvc/incubator/cxf/trunk/rt/frontend/j
> axrs/src/main/java/org/apache/cxf/jaxrs/spring/NamespaceHandle
> r.java?rev=590950&view=auto
> ==============================================================
> ================
> --- 
> incubator/cxf/trunk/rt/frontend/jaxrs/src/main/java/org/apache
> /cxf/jaxrs/spring/NamespaceHandler.java (added)
> +++ 
> incubator/cxf/trunk/rt/frontend/jaxrs/src/main/java/org/apache
> /cxf/jaxrs/spring/NamespaceHandler.java Thu Nov  1 02:50:29 2007
> @@ -0,0 +1,29 @@
> +/**
> + * 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.cxf.jaxrs.spring;
> +
> +import 
> org.apache.cxf.configuration.spring.StringBeanDefinitionParser;
> +import org.springframework.beans.factory.xml.NamespaceHandlerSupport;
> +
> +public class NamespaceHandler extends NamespaceHandlerSupport {
> +    public void init() {
> +        registerBeanDefinitionParser("server", new 
> JAXRSServerFactoryBeanDefinitionParser());        
> +        registerBeanDefinitionParser("schemaLocation", new 
> StringBeanDefinitionParser());    
> +    }
> +}
> 
> Propchange: 
> incubator/cxf/trunk/rt/frontend/jaxrs/src/main/java/org/apache
> /cxf/jaxrs/spring/NamespaceHandler.java
> --------------------------------------------------------------
> ----------------
>     svn:eol-style = native
> 
> Propchange: 
> incubator/cxf/trunk/rt/frontend/jaxrs/src/main/java/org/apache
> /cxf/jaxrs/spring/NamespaceHandler.java
> --------------------------------------------------------------
> ----------------
>     svn:keywords = Rev Date
> 
> Added: 
> incubator/cxf/trunk/rt/frontend/jaxrs/src/main/resources/META-
> INF/spring.handlers
> URL: 
> http://svn.apache.org/viewvc/incubator/cxf/trunk/rt/frontend/j
> axrs/src/main/resources/META-INF/spring.handlers?rev=590950&view=auto
> ==============================================================
> ================
> --- 
> incubator/cxf/trunk/rt/frontend/jaxrs/src/main/resources/META-
> INF/spring.handlers (added)
> +++ 
> incubator/cxf/trunk/rt/frontend/jaxrs/src/main/resources/META-
> INF/spring.handlers Thu Nov  1 02:50:29 2007
> @@ -0,0 +1,21 @@
> +#
> +#
> +#    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.
> +#
> +#
> +http\://cxf.apache.org/jaxrs=org.apache.cxf.jaxrs.spring.Name
> spaceHandler
> \ No newline at end of file
> 
> Added: 
> incubator/cxf/trunk/rt/frontend/jaxrs/src/main/resources/META-
> INF/spring.schemas
> URL: 
> http://svn.apache.org/viewvc/incubator/cxf/trunk/rt/frontend/j
> axrs/src/main/resources/META-INF/spring.schemas?rev=590950&view=auto
> ==============================================================
> ================
> --- 
> incubator/cxf/trunk/rt/frontend/jaxrs/src/main/resources/META-
> INF/spring.schemas (added)
> +++ 
> incubator/cxf/trunk/rt/frontend/jaxrs/src/main/resources/META-
> INF/spring.schemas Thu Nov  1 02:50:29 2007
> @@ -0,0 +1,21 @@
> +#
> +#
> +#    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.
> +#
> +#
> +http\://cxf.apache.org/schemas/jaxrs.xsd=schemas/jaxrs.xsd
> \ No newline at end of file
> 
> Added: 
> incubator/cxf/trunk/rt/frontend/jaxrs/src/main/resources/schem
> as/jaxrs.xsd
> URL: 
> http://svn.apache.org/viewvc/incubator/cxf/trunk/rt/frontend/j
> axrs/src/main/resources/schemas/jaxrs.xsd?rev=590950&view=auto
> ==============================================================
> ================
> --- 
> incubator/cxf/trunk/rt/frontend/jaxrs/src/main/resources/schem
> as/jaxrs.xsd (added)
> +++ 
> incubator/cxf/trunk/rt/frontend/jaxrs/src/main/resources/schem
> as/jaxrs.xsd Thu Nov  1 02:50:29 2007
> @@ -0,0 +1,69 @@
> +<?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.
> +-->
> +<xsd:schema xmlns="http://cxf.apache.org/jaxrs"
> +  xmlns:xsd="http://www.w3.org/2001/XMLSchema"
> +  xmlns:beans="http://www.springframework.org/schema/beans"
> +  xmlns:cxf-beans="http://cxf.apache.org/configuration/beans"
> +  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
> +  targetNamespace="http://cxf.apache.org/jaxrs" 
> +  elementFormDefault="qualified"
> +  attributeFormDefault="unqualified"  >
> +
> +  <xsd:import 
> namespace="http://www.springframework.org/schema/beans" 
> schemaLocation="http://www.springframework.org/schema/beans/sp
> ring-beans.xsd"/>
> +  <xsd:import 
> namespace="http://cxf.apache.org/configuration/beans" 
> schemaLocation="http://cxf.apache.org/schemas/configuration/cx
> f-beans.xsd"/>
> +  
> +  <xsd:element name="server">
> +    <xsd:complexType>
> +      <xsd:complexContent>
> +        <xsd:extension base="beans:identifiedType">
> +          <xsd:all>
> +            <xsd:element name="binding" type="xsd:anyType" 
> minOccurs="0"/>
> +            <xsd:element name="executor" type="xsd:anyType" 
> minOccurs="0"/>
> +            <xsd:element name="features" type="xsd:anyType" 
> minOccurs="0"/>
> +            <xsd:element name="inInterceptors" 
> type="xsd:anyType" minOccurs="0"/>
> +            <xsd:element name="inFaultInterceptors" 
> type="xsd:anyType" minOccurs="0"/>
> +            <xsd:element name="invoker" type="xsd:anyType" 
> minOccurs="0"/>
> +            <xsd:element name="outInterceptors" 
> type="xsd:anyType" minOccurs="0"/>
> +            <xsd:element name="outFaultInterceptors" 
> type="xsd:anyType" minOccurs="0"/>
> +            <xsd:element name="properties" 
> type="beans:mapType" minOccurs="0"/>
> +            <xsd:element name="serviceBeans" 
> type="xsd:anyType" minOccurs="0"/>
> +            <xsd:element name="serviceFactory" 
> type="xsd:anyType" minOccurs="0"/>
> +          </xsd:all>
> +          <xsd:attributeGroup ref="cxf-beans:beanAttributes"/>
> +          <xsd:attribute name="address" type="xsd:string" />
> +          <xsd:attribute name="bindingId" type="xsd:string" />
> +          <xsd:attribute name="bus" type="xsd:string" />
> +          <xsd:attribute name="serviceClass" type="xsd:string"/>
> +          <xsd:attribute name="serviceBeans" 
> type="xsd:string"/>          
> +          <xsd:attribute name="transportId" type="xsd:string"/>
> +          <xsd:attribute name="endpointName" type="xsd:QName" />
> +          <xsd:attribute name="serviceName" type="xsd:QName" />
> +        </xsd:extension>
> +      </xsd:complexContent>
> +    </xsd:complexType>
> +  </xsd:element>
> +  
> +  <xsd:complexType name="schemasType">
> +    <xsd:sequence>
> +      <xsd:element name="schemaLocation" type="xsd:string" 
> minOccurs="0" maxOccurs="unbounded"/>
> +    </xsd:sequence>
> +  </xsd:complexType>
> +  
> +</xsd:schema>
> 
> Propchange: 
> incubator/cxf/trunk/rt/frontend/jaxrs/src/main/resources/schem
> as/jaxrs.xsd
> --------------------------------------------------------------
> ----------------
>     svn:eol-style = native
> 
> Propchange: 
> incubator/cxf/trunk/rt/frontend/jaxrs/src/main/resources/schem
> as/jaxrs.xsd
> --------------------------------------------------------------
> ----------------
>     svn:keywords = Rev Date
> 
> Propchange: 
> incubator/cxf/trunk/rt/frontend/jaxrs/src/main/resources/schem
> as/jaxrs.xsd
> --------------------------------------------------------------
> ----------------
>     svn:mime-type = text/xml
> 
> Modified: 
> incubator/cxf/trunk/systests/src/test/java/org/apache/cxf/syst
> est/jaxrs/BookServer.java
> URL: 
> http://svn.apache.org/viewvc/incubator/cxf/trunk/systests/src/
> test/java/org/apache/cxf/systest/jaxrs/BookServer.java?rev=590
> 950&r1=590949&r2=590950&view=diff
> ==============================================================
> ================
> --- 
> incubator/cxf/trunk/systests/src/test/java/org/apache/cxf/syst
> est/jaxrs/BookServer.java (original)
> +++ 
> incubator/cxf/trunk/systests/src/test/java/org/apache/cxf/syst
> est/jaxrs/BookServer.java Thu Nov  1 02:50:29 2007
> @@ -19,8 +19,6 @@
>  
>  package org.apache.cxf.systest.jaxrs;
>  
> -
> -import org.apache.cxf.jaxrs.JAXRSBindingFactory;
>  import org.apache.cxf.jaxrs.JAXRSServerFactoryBean;
>  import org.apache.cxf.jaxrs.lifecycle.SingletonResourceProvider;
>  import org.apache.cxf.testutil.common.AbstractBusTestServerBase;
> @@ -32,7 +30,6 @@
>          sf.setResourceClasses(BookStore.class);
>          //default lifecycle is per-request, change it to singleton
>          sf.setResourceProvider(BookStore.class, new 
> SingletonResourceProvider());
> -        sf.setBindingId(JAXRSBindingFactory.JAXRS_BINDING_ID);
>          sf.setAddress("http://localhost:9080/");
>  
>          sf.create();        
> 
> Modified: 
> incubator/cxf/trunk/systests/src/test/java/org/apache/cxf/syst
> est/jaxrs/BookServerFromResourceInstance.java
> URL: 
> http://svn.apache.org/viewvc/incubator/cxf/trunk/systests/src/
> test/java/org/apache/cxf/systest/jaxrs/BookServerFromResourceI
> nstance.java?rev=590950&r1=590949&r2=590950&view=diff
> ==============================================================
> ================
> --- 
> incubator/cxf/trunk/systests/src/test/java/org/apache/cxf/syst
> est/jaxrs/BookServerFromResourceInstance.java (original)
> +++ 
> incubator/cxf/trunk/systests/src/test/java/org/apache/cxf/syst
> est/jaxrs/BookServerFromResourceInstance.java Thu Nov  1 02:50:29 2007
> @@ -19,8 +19,6 @@
>  
>  package org.apache.cxf.systest.jaxrs;
>  
> -
> -import org.apache.cxf.jaxrs.JAXRSBindingFactory;
>  import org.apache.cxf.jaxrs.JAXRSServerFactoryBean;
>  import org.apache.cxf.testutil.common.AbstractBusTestServerBase;
>      
> @@ -30,7 +28,6 @@
>          JAXRSServerFactoryBean sf = new JAXRSServerFactoryBean();
>          BookStore bs = new BookStore();
>          sf.setServiceBeans(bs);
> -        sf.setBindingId(JAXRSBindingFactory.JAXRS_BINDING_ID);
>          sf.setAddress("http://localhost:9080/");
>  
>          sf.create();        
> 
> Added: 
> incubator/cxf/trunk/systests/src/test/java/org/apache/cxf/syst
> est/jaxrs/BookServerSpring.java
> URL: 
> http://svn.apache.org/viewvc/incubator/cxf/trunk/systests/src/
> test/java/org/apache/cxf/systest/jaxrs/BookServerSpring.java?r
> ev=590950&view=auto
> ==============================================================
> ================
> --- 
> incubator/cxf/trunk/systests/src/test/java/org/apache/cxf/syst
> est/jaxrs/BookServerSpring.java (added)
> +++ 
> incubator/cxf/trunk/systests/src/test/java/org/apache/cxf/syst
> est/jaxrs/BookServerSpring.java Thu Nov  1 02:50:29 2007
> @@ -0,0 +1,89 @@
> +/**
> + * 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.cxf.systest.jaxrs;
> +
> +import java.net.URISyntaxException;
> +
> +import org.apache.cxf.testutil.common.AbstractBusTestServerBase;
> +import org.mortbay.jetty.Connector;
> +import org.mortbay.jetty.Handler;
> +import org.mortbay.jetty.handler.DefaultHandler;
> +import org.mortbay.jetty.handler.HandlerCollection;
> +import org.mortbay.jetty.nio.SelectChannelConnector;
> +import org.mortbay.jetty.webapp.WebAppContext;
> +
> +
> +public class BookServerSpring extends AbstractBusTestServerBase {
> +
> +    private org.mortbay.jetty.Server server;
> +    
> +    protected void run() {
> +        System.out.println("Starting Server");
> +
> +        server = new org.mortbay.jetty.Server();
> +
> +        SelectChannelConnector connector = new 
> SelectChannelConnector();
> +        connector.setPort(9080);
> +        server.setConnectors(new Connector[] {connector});
> +
> +        WebAppContext webappcontext = new WebAppContext();
> +        String contextPath = null;
> +        try {
> +            contextPath = 
> getClass().getResource("/jaxrs").toURI().getPath();
> +        } catch (URISyntaxException e1) {
> +            e1.printStackTrace();
> +        }
> +        webappcontext.setContextPath("/");
> +
> +        webappcontext.setWar(contextPath);
> +
> +        HandlerCollection handlers = new HandlerCollection();
> +        handlers.setHandlers(new Handler[] {webappcontext, 
> new DefaultHandler()});
> +
> +        server.setHandler(handlers);
> +        try {
> +            server.start();
> +                       
> +        } catch (Exception e) {
> +            e.printStackTrace();
> +        }     
> +    }
> +
> +    public boolean stopInProcess() throws Exception {
> +        boolean ret = super.stopInProcess();
> +        if (server != null) {
> +            server.stop();
> +        }
> +        return ret;
> +    }    
> +    
> +    public static void main(String args[]) {
> +        try {
> +            BookServerSpring s = new BookServerSpring();
> +            s.start();
> +        } catch (Exception ex) {
> +            ex.printStackTrace();
> +            System.exit(-1);
> +        } finally {
> +            System.out.println("done!");
> +        }
> +    }
> +
> +}
> 
> Propchange: 
> incubator/cxf/trunk/systests/src/test/java/org/apache/cxf/syst
> est/jaxrs/BookServerSpring.java
> --------------------------------------------------------------
> ----------------
>     svn:eol-style = native
> 
> Propchange: 
> incubator/cxf/trunk/systests/src/test/java/org/apache/cxf/syst
> est/jaxrs/BookServerSpring.java
> --------------------------------------------------------------
> ----------------
>     svn:keywords = Rev Date
> 
> Added: 
> incubator/cxf/trunk/systests/src/test/java/org/apache/cxf/syst
> est/jaxrs/JAXRSClientServerSpringBookTest.java
> URL: 
> http://svn.apache.org/viewvc/incubator/cxf/trunk/systests/src/
> test/java/org/apache/cxf/systest/jaxrs/JAXRSClientServerSpring
> BookTest.java?rev=590950&view=auto
> ==============================================================
> ================
> --- 
> incubator/cxf/trunk/systests/src/test/java/org/apache/cxf/syst
> est/jaxrs/JAXRSClientServerSpringBookTest.java (added)
> +++ 
> incubator/cxf/trunk/systests/src/test/java/org/apache/cxf/syst
> est/jaxrs/JAXRSClientServerSpringBookTest.java Thu Nov  1 
> 02:50:29 2007
> @@ -0,0 +1,62 @@
> +/**
> + * 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.cxf.systest.jaxrs;
> +
> +import java.io.InputStream;
> +import java.net.URL;
> +
> +import org.apache.cxf.helpers.IOUtils;
> +import org.apache.cxf.io.CachedOutputStream;
> +import 
> org.apache.cxf.testutil.common.AbstractBusClientServerTestBase;
> +import org.junit.BeforeClass;
> +import org.junit.Test;
> +
> +public class JAXRSClientServerSpringBookTest extends 
> AbstractBusClientServerTestBase {
> +
> +    @BeforeClass
> +    public static void startServers() throws Exception {
> +        assertTrue("server did not launch correctly", 
> launchServer(BookServerSpring.class));
> +    }
> +    
> +    @Test
> +    public void testGetBook123() throws Exception {
> +        String endpointAddress =
> +            "http://localhost:9080/bookstore/books/123"; 
> +        URL url = new URL(endpointAddress);
> +        InputStream in = url.openStream();
> +        assertNotNull(in);           
> +
> +        InputStream expected = getClass()
> +            
> .getResourceAsStream("resources/expected_get_book123.txt");
> +
> +        //System.out.println("---" + getStringFromInputStream(in));
> +        assertEquals(getStringFromInputStream(expected), 
> getStringFromInputStream(in)); 
> +    }
> +
> +    private String getStringFromInputStream(InputStream in) 
> throws Exception {        
> +        CachedOutputStream bos = new CachedOutputStream();
> +        IOUtils.copy(in, bos);
> +        in.close();
> +        bos.close();
> +        //System.out.println(bos.getOut().toString());        
> +        return bos.getOut().toString();        
> +    }
> +
> +}
> 
> Propchange: 
> incubator/cxf/trunk/systests/src/test/java/org/apache/cxf/syst
> est/jaxrs/JAXRSClientServerSpringBookTest.java
> --------------------------------------------------------------
> ----------------
>     svn:eol-style = native
> 
> Propchange: 
> incubator/cxf/trunk/systests/src/test/java/org/apache/cxf/syst
> est/jaxrs/JAXRSClientServerSpringBookTest.java
> --------------------------------------------------------------
> ----------------
>     svn:keywords = Rev Date
> 
> Added: 
> incubator/cxf/trunk/systests/src/test/resources/jaxrs/WEB-INF/
> beans.xml
> URL: 
> http://svn.apache.org/viewvc/incubator/cxf/trunk/systests/src/
> test/resources/jaxrs/WEB-INF/beans.xml?rev=590950&view=auto
> ==============================================================
> ================
> --- 
> incubator/cxf/trunk/systests/src/test/resources/jaxrs/WEB-INF/
> beans.xml (added)
> +++ 
> incubator/cxf/trunk/systests/src/test/resources/jaxrs/WEB-INF/
> beans.xml Thu Nov  1 02:50:29 2007
> @@ -0,0 +1,48 @@
> +<?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.
> +-->
> +<!-- START SNIPPET: beans -->
> +<!--beans xmlns="http://www.springframework.org/schema/beans"
> +  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
> +  xmlns:simple="http://cxf.apache.org/simple"
> +  xsi:schemaLocation="
> +  http://www.springframework.org/schema/beans 
> http://www.springframework.org/schema/beans/spring-beans.xsd
> +  http://cxf.apache.org/simple 
> http://cxf.apache.org/schemas/simple.xsd"-->
> +<beans xmlns="http://www.springframework.org/schema/beans"
> +  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
> +  xmlns:jaxrs="http://cxf.apache.org/jaxrs"
> +  xsi:schemaLocation="
> +http://www.springframework.org/schema/beans 
> +http://www.springframework.org/schema/beans/spring-beans.xsd
> +http://cxf.apache.org/jaxrs
> +http://cxf.apache.org/schemas/jaxrs.xsd">
> +
> +  <import resource="classpath:META-INF/cxf/cxf.xml" />
> +  <import 
> resource="classpath:META-INF/cxf/cxf-extension-jaxrs-binding.xml" />
> +  <import resource="classpath:META-INF/cxf/cxf-servlet.xml" />
> +  
> +  <jaxrs:server id="bookservice"
> +		        address="/">
> +    <jaxrs:serviceBeans>
> +      <bean class="org.apache.cxf.systest.jaxrs.BookStore" />
> +    </jaxrs:serviceBeans>		   
> +  </jaxrs:server>
> +
> +</beans>
> +<!-- END SNIPPET: beans -->
> 
> Propchange: 
> incubator/cxf/trunk/systests/src/test/resources/jaxrs/WEB-INF/
> beans.xml
> --------------------------------------------------------------
> ----------------
>     svn:eol-style = native
> 
> Propchange: 
> incubator/cxf/trunk/systests/src/test/resources/jaxrs/WEB-INF/
> beans.xml
> --------------------------------------------------------------
> ----------------
>     svn:keywords = Rev Date
> 
> Propchange: 
> incubator/cxf/trunk/systests/src/test/resources/jaxrs/WEB-INF/
> beans.xml
> --------------------------------------------------------------
> ----------------
>     svn:mime-type = text/xml
> 
> Added: 
> incubator/cxf/trunk/systests/src/test/resources/jaxrs/WEB-INF/web.xml
> URL: 
> http://svn.apache.org/viewvc/incubator/cxf/trunk/systests/src/
> test/resources/jaxrs/WEB-INF/web.xml?rev=590950&view=auto
> ==============================================================
> ================
> --- 
> incubator/cxf/trunk/systests/src/test/resources/jaxrs/WEB-INF/
> web.xml (added)
> +++ 
> incubator/cxf/trunk/systests/src/test/resources/jaxrs/WEB-INF/
> web.xml Thu Nov  1 02:50:29 2007
> @@ -0,0 +1,52 @@
> +<?xml version="1.0" encoding="ISO-8859-1"?>
> +
> +<!DOCTYPE web-app
> +    PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
> +    "http://java.sun.com/dtd/web-app_2_3.dtd">
> +
> +<!--
> +	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.
> +-->
> +<!-- START SNIPPET: webxml -->
> +<web-app>
> +	<context-param>
> +		<param-name>contextConfigLocation</param-name>
> +		<param-value>WEB-INF/beans.xml</param-value>
> +	</context-param>
> +
> +	<listener>
> +		<listener-class>
> +			
> org.springframework.web.context.ContextLoaderListener
> +		</listener-class>
> +	</listener>
> +
> +	<servlet>
> +		<servlet-name>CXFServlet</servlet-name>
> +		<display-name>CXF Servlet</display-name>
> +		<servlet-class>
> +			org.apache.cxf.transport.servlet.CXFServlet
> +		</servlet-class>
> +		<load-on-startup>1</load-on-startup>
> +	</servlet>
> +
> +	<servlet-mapping>
> +		<servlet-name>CXFServlet</servlet-name>
> +		<url-pattern>/*</url-pattern>
> +	</servlet-mapping>
> +</web-app>
> +<!-- END SNIPPET: webxml -->
> \ No newline at end of file
> 
> Propchange: 
> incubator/cxf/trunk/systests/src/test/resources/jaxrs/WEB-INF/web.xml
> --------------------------------------------------------------
> ----------------
>     svn:eol-style = native
> 
> Propchange: 
> incubator/cxf/trunk/systests/src/test/resources/jaxrs/WEB-INF/web.xml
> --------------------------------------------------------------
> ----------------
>     svn:keywords = Rev Date
> 
> Propchange: 
> incubator/cxf/trunk/systests/src/test/resources/jaxrs/WEB-INF/web.xml
> --------------------------------------------------------------
> ----------------
>     svn:mime-type = text/xml
> 
> 

----------------------------
IONA Technologies PLC (registered in Ireland)
Registered Number: 171387
Registered Address: The IONA Building, Shelbourne Road, Dublin 4, Ireland