You are viewing a plain text version of this content. The canonical link for it is here.
Posted to cvs@cocoon.apache.org by re...@apache.org on 2009/04/27 22:06:16 UTC
svn commit: r769137 - in /cocoon/cocoon3/trunk:
cocoon-sample/src/main/resources/META-INF/cocoon/spring/
cocoon-sample/src/test/java/org/apache/cocoon/sitemap/
cocoon-servlet/src/main/java/org/apache/cocoon/servlet/
cocoon-sitemap/src/main/java/org/apa...
Author: reinhard
Date: Mon Apr 27 20:06:16 2009
New Revision: 769137
URL: http://svn.apache.org/viewvc?rev=769137&view=rev
Log:
COCOON3-34 Use the SitemapNode interface instead of the concrete implementation. This should allow 'default' interface proxies.
Added:
cocoon/cocoon3/trunk/cocoon-sample/src/main/resources/META-INF/cocoon/spring/cocoon-sample-jaxrs.xml (with props)
Modified:
cocoon/cocoon3/trunk/cocoon-sample/src/main/resources/META-INF/cocoon/spring/cocoon-sample-servlet-service.xml
cocoon/cocoon3/trunk/cocoon-sample/src/main/resources/META-INF/cocoon/spring/cocoon-sample-sitemap-components.xml
cocoon/cocoon3/trunk/cocoon-sample/src/test/java/org/apache/cocoon/sitemap/SitemapBuilderTest.java
cocoon/cocoon3/trunk/cocoon-servlet/src/main/java/org/apache/cocoon/servlet/XMLSitemapServlet.java
cocoon/cocoon3/trunk/cocoon-sitemap/src/main/java/org/apache/cocoon/sitemap/SitemapBuilder.java
Added: cocoon/cocoon3/trunk/cocoon-sample/src/main/resources/META-INF/cocoon/spring/cocoon-sample-jaxrs.xml
URL: http://svn.apache.org/viewvc/cocoon/cocoon3/trunk/cocoon-sample/src/main/resources/META-INF/cocoon/spring/cocoon-sample-jaxrs.xml?rev=769137&view=auto
==============================================================================
--- cocoon/cocoon3/trunk/cocoon-sample/src/main/resources/META-INF/cocoon/spring/cocoon-sample-jaxrs.xml (added)
+++ cocoon/cocoon3/trunk/cocoon-sample/src/main/resources/META-INF/cocoon/spring/cocoon-sample-jaxrs.xml Mon Apr 27 20:06:16 2009
@@ -0,0 +1,29 @@
+<?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.
+ -->
+<!-- $Id$ -->
+<beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd">
+
+ <bean id="org.apache.cocoon.sample.rest.resource.one" class="org.apache.cocoon.sample.jaxrs.SampleRestResource">
+ <property name="settings" ref="org.apache.cocoon.configuration.Settings" />
+ </bean>
+ <bean id="org.apache.cocoon.sample.rest.resource.two" class="org.apache.cocoon.sample.jaxrs.Sample2RestResource" />
+
+</beans>
Propchange: cocoon/cocoon3/trunk/cocoon-sample/src/main/resources/META-INF/cocoon/spring/cocoon-sample-jaxrs.xml
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: cocoon/cocoon3/trunk/cocoon-sample/src/main/resources/META-INF/cocoon/spring/cocoon-sample-jaxrs.xml
------------------------------------------------------------------------------
svn:keywords = Id
Propchange: cocoon/cocoon3/trunk/cocoon-sample/src/main/resources/META-INF/cocoon/spring/cocoon-sample-jaxrs.xml
------------------------------------------------------------------------------
svn:mime-type = text/xml
Modified: cocoon/cocoon3/trunk/cocoon-sample/src/main/resources/META-INF/cocoon/spring/cocoon-sample-servlet-service.xml
URL: http://svn.apache.org/viewvc/cocoon/cocoon3/trunk/cocoon-sample/src/main/resources/META-INF/cocoon/spring/cocoon-sample-servlet-service.xml?rev=769137&r1=769136&r2=769137&view=diff
==============================================================================
--- cocoon/cocoon3/trunk/cocoon-sample/src/main/resources/META-INF/cocoon/spring/cocoon-sample-servlet-service.xml (original)
+++ cocoon/cocoon3/trunk/cocoon-sample/src/main/resources/META-INF/cocoon/spring/cocoon-sample-servlet-service.xml Mon Apr 27 20:06:16 2009
@@ -21,11 +21,30 @@
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:servlet="http://cocoon.apache.org/schema/servlet"
+ xmlns:configurator="http://cocoon.apache.org/schema/configurator"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd
- http://cocoon.apache.org/schema/servlet http://cocoon.apache.org/schema/servlet/cocoon-servlet-1.0.xsd">
-
+ http://cocoon.apache.org/schema/servlet http://cocoon.apache.org/schema/servlet/cocoon-servlet-1.0.xsd
+ http://cocoon.apache.org/schema/configurator file:///O:/os/cocoon/trunk/subprojects/cocoon-configuration/cocoon-spring-configurator/src/main/resources/org/apache/cocoon/spring/configurator/schema/cocoon-configurator-2.1.0.xsd">
+
+ <!-- A Cocoon-Sitemap based servlet-service. -->
<bean id="org.apache.cocoon.sample.servlet" class="org.apache.cocoon.servlet.XMLSitemapServlet">
- <servlet:context mount-path="" context-path="blockcontext:/cocoon-sample/"/>
+ <servlet:context mount-path="" context-path="blockcontext:/cocoon-sample/">
+ </servlet:context>
+ </bean>
+
+ <!-- A servlet-service that exposes JAX-RS REST endpoints. -->
+ <bean id="org.apache.cocoon.sample.rest.servlet" class="org.apache.cocoon.rest.jaxrs.container.CocoonJAXRSServlet">
+ <servlet:context mount-path="/jax-rs" context-path="blockcontext:/cocoon-sample/">
+ <servlet:connections>
+ <entry key="sample" value-ref="org.apache.cocoon.sample.servlet" />
+ </servlet:connections>
+ </servlet:context>
+
+ <property name="restResourcesList">
+ <list>
+ <ref bean="org.apache.cocoon.sample.rest.resource.one" />
+ <ref bean="org.apache.cocoon.sample.rest.resource.two" />
+ </list>
+ </property>
</bean>
-
</beans>
Modified: cocoon/cocoon3/trunk/cocoon-sample/src/main/resources/META-INF/cocoon/spring/cocoon-sample-sitemap-components.xml
URL: http://svn.apache.org/viewvc/cocoon/cocoon3/trunk/cocoon-sample/src/main/resources/META-INF/cocoon/spring/cocoon-sample-sitemap-components.xml?rev=769137&r1=769136&r2=769137&view=diff
==============================================================================
--- cocoon/cocoon3/trunk/cocoon-sample/src/main/resources/META-INF/cocoon/spring/cocoon-sample-sitemap-components.xml (original)
+++ cocoon/cocoon3/trunk/cocoon-sample/src/main/resources/META-INF/cocoon/spring/cocoon-sample-sitemap-components.xml Mon Apr 27 20:06:16 2009
@@ -23,7 +23,7 @@
<bean name="action:error-throwing" class="org.apache.cocoon.sample.action.ErrorThrowingAction" scope="prototype" />
- <bean name="generator:timestamp-caching" class="org.apache.cocoon.sample.generation.CachingTimestampGenerator" scope="prototype" />
+ <bean name="generator:timestamp-caching" class="org.apache.cocoon.sample.generation.CachingTimestampGenerator" />
<bean name="generator:timestamp-noncaching" class="org.apache.cocoon.sample.generation.TimestampGenerator" scope="prototype" />
</beans>
Modified: cocoon/cocoon3/trunk/cocoon-sample/src/test/java/org/apache/cocoon/sitemap/SitemapBuilderTest.java
URL: http://svn.apache.org/viewvc/cocoon/cocoon3/trunk/cocoon-sample/src/test/java/org/apache/cocoon/sitemap/SitemapBuilderTest.java?rev=769137&r1=769136&r2=769137&view=diff
==============================================================================
--- cocoon/cocoon3/trunk/cocoon-sample/src/test/java/org/apache/cocoon/sitemap/SitemapBuilderTest.java (original)
+++ cocoon/cocoon3/trunk/cocoon-sample/src/test/java/org/apache/cocoon/sitemap/SitemapBuilderTest.java Mon Apr 27 20:06:16 2009
@@ -30,14 +30,14 @@
import org.apache.cocoon.servlet.node.StatusCodeCollector;
import org.apache.cocoon.servlet.util.HttpContextHelper;
import org.apache.cocoon.sitemap.node.InvocationResult;
-import org.apache.cocoon.sitemap.node.Sitemap;
+import org.apache.cocoon.sitemap.node.SitemapNode;
import org.apache.cocoon.sitemap.objectmodel.ObjectModel;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
public class SitemapBuilderTest extends TestCase {
- private Sitemap sitemap;
+ private SitemapNode sitemap;
private SitemapBuilder sitemapBuilder;
private ComponentProvider componentProvider;
Modified: cocoon/cocoon3/trunk/cocoon-servlet/src/main/java/org/apache/cocoon/servlet/XMLSitemapServlet.java
URL: http://svn.apache.org/viewvc/cocoon/cocoon3/trunk/cocoon-servlet/src/main/java/org/apache/cocoon/servlet/XMLSitemapServlet.java?rev=769137&r1=769136&r2=769137&view=diff
==============================================================================
--- cocoon/cocoon3/trunk/cocoon-servlet/src/main/java/org/apache/cocoon/servlet/XMLSitemapServlet.java (original)
+++ cocoon/cocoon3/trunk/cocoon-servlet/src/main/java/org/apache/cocoon/servlet/XMLSitemapServlet.java Mon Apr 27 20:06:16 2009
@@ -60,7 +60,7 @@
private boolean initialized;
private final Log logger = LogFactory.getLog(this.getClass());
private ServletConfig servletConfig;
- private SitemapNode sitemap;
+ private SitemapNode sitemapNode;
private String version = "";
@Override
@@ -80,7 +80,7 @@
invocation.setOutputStream(outputStream);
invocation.setObjectModel(ObjectModelProvider.provide(parameters));
- this.sitemap.invoke(invocation);
+ this.sitemapNode.invoke(invocation);
}
public void setBeanFactory(BeanFactory beanFactory) throws BeansException {
@@ -242,7 +242,7 @@
SitemapBuilder sitemapBuilder = (SitemapBuilder) this.beanFactory.getBean(SitemapBuilder.class
.getName());
URL url = this.servletConfig.getServletContext().getResource(this.getSitemapPath());
- this.sitemap = sitemapBuilder.build(url);
+ this.sitemapNode = sitemapBuilder.build(url);
} catch (Exception e) {
throw this.wrapException(e, "An exception occurred while building the sitemap.");
}
Modified: cocoon/cocoon3/trunk/cocoon-sitemap/src/main/java/org/apache/cocoon/sitemap/SitemapBuilder.java
URL: http://svn.apache.org/viewvc/cocoon/cocoon3/trunk/cocoon-sitemap/src/main/java/org/apache/cocoon/sitemap/SitemapBuilder.java?rev=769137&r1=769136&r2=769137&view=diff
==============================================================================
--- cocoon/cocoon3/trunk/cocoon-sitemap/src/main/java/org/apache/cocoon/sitemap/SitemapBuilder.java (original)
+++ cocoon/cocoon3/trunk/cocoon-sitemap/src/main/java/org/apache/cocoon/sitemap/SitemapBuilder.java Mon Apr 27 20:06:16 2009
@@ -26,7 +26,6 @@
import javax.xml.parsers.SAXParser;
import javax.xml.parsers.SAXParserFactory;
-import org.apache.cocoon.sitemap.node.Sitemap;
import org.apache.cocoon.sitemap.node.SitemapNode;
import org.apache.cocoon.sitemap.node.SitemapNodeFactory;
import org.xml.sax.Attributes;
@@ -38,7 +37,7 @@
private SitemapNodeFactory sitemapNodeFactory;
- public Sitemap build(URL sitemap) throws Exception {
+ public SitemapNode build(URL sitemap) throws Exception {
SAXParserFactory saxParserFactory = SAXParserFactory.newInstance();
saxParserFactory.setNamespaceAware(true);
// saxParserFactory.setSchema(SchemaFactory.newInstance("http://www.w3.org/2001/XMLSchema").newSchema());
@@ -64,7 +63,7 @@
class SitemapHandler extends DefaultHandler {
private SitemapNode currentNode;
- private Sitemap sitemap;
+ private SitemapNode sitemap;
@Override
public void endElement(String uri, String localName, String name) {
@@ -80,7 +79,7 @@
throw e;
}
- public Sitemap getSitemap() {
+ public SitemapNode getSitemap() {
return this.sitemap;
}
@@ -88,7 +87,7 @@
public void startElement(String uri, String localName, String name, Attributes attributes) {
if (this.currentNode == null) {
if (localName.equals("sitemap")) {
- this.sitemap = (Sitemap) SitemapBuilder.this.createSitemapNode(localName, null);
+ this.sitemap = SitemapBuilder.this.createSitemapNode(localName, null);
this.currentNode = this.sitemap;
return;
}