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 2008/03/21 14:55:20 UTC

svn commit: r639645 [7/7] - in /cocoon/whiteboard/corona/trunk: ./ corona-core/ corona-core/src/ corona-core/src/main/ corona-core/src/main/java/ corona-core/src/main/java/org/ corona-core/src/main/java/org/apache/ corona-core/src/main/java/org/apache/...

Added: cocoon/whiteboard/corona/trunk/corona-servlet/src/main/resources/sax-pipeline/unauthorized.xml
URL: http://svn.apache.org/viewvc/cocoon/whiteboard/corona/trunk/corona-servlet/src/main/resources/sax-pipeline/unauthorized.xml?rev=639645&view=auto
==============================================================================
--- cocoon/whiteboard/corona/trunk/corona-servlet/src/main/resources/sax-pipeline/unauthorized.xml (added)
+++ cocoon/whiteboard/corona/trunk/corona-servlet/src/main/resources/sax-pipeline/unauthorized.xml Fri Mar 21 06:54:32 2008
@@ -0,0 +1,23 @@
+<?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.
+-->
+<html>
+  <head>
+    <title>Unauthorized</title>
+  </head>
+  <body>Unauthorized</body>
+</html>

Propchange: cocoon/whiteboard/corona/trunk/corona-servlet/src/main/resources/sax-pipeline/unauthorized.xml
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: cocoon/whiteboard/corona/trunk/corona-servlet/src/main/resources/sax-pipeline/unauthorized.xml
------------------------------------------------------------------------------
    svn:keywords = Id

Propchange: cocoon/whiteboard/corona/trunk/corona-servlet/src/main/resources/sax-pipeline/unauthorized.xml
------------------------------------------------------------------------------
    svn:mime-type = text/xml

Added: cocoon/whiteboard/corona/trunk/corona-servlet/src/test/java/org/apache/cocoon/corona/sitemap/MockHttpServletRequest.java
URL: http://svn.apache.org/viewvc/cocoon/whiteboard/corona/trunk/corona-servlet/src/test/java/org/apache/cocoon/corona/sitemap/MockHttpServletRequest.java?rev=639645&view=auto
==============================================================================
--- cocoon/whiteboard/corona/trunk/corona-servlet/src/test/java/org/apache/cocoon/corona/sitemap/MockHttpServletRequest.java (added)
+++ cocoon/whiteboard/corona/trunk/corona-servlet/src/test/java/org/apache/cocoon/corona/sitemap/MockHttpServletRequest.java Fri Mar 21 06:54:32 2008
@@ -0,0 +1,256 @@
+/*
+ * 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.cocoon.corona.sitemap;
+
+import java.io.BufferedReader;
+import java.io.IOException;
+import java.io.UnsupportedEncodingException;
+import java.security.Principal;
+import java.util.Collections;
+import java.util.Enumeration;
+import java.util.Locale;
+import java.util.Map;
+
+import javax.servlet.RequestDispatcher;
+import javax.servlet.ServletInputStream;
+import javax.servlet.http.Cookie;
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpSession;
+
+public class MockHttpServletRequest implements HttpServletRequest {
+
+    private Map<String, String> parameters;
+
+    public MockHttpServletRequest(Map<String, String> parameters) {
+        this.parameters = parameters;
+    }
+
+    public Object getAttribute(String name) {
+        return null;
+    }
+
+    public Enumeration getAttributeNames() {
+        return null;
+    }
+
+    public String getAuthType() {
+        return null;
+    }
+
+    public String getCharacterEncoding() {
+        return null;
+    }
+
+    public int getContentLength() {
+        return 0;
+    }
+
+    public String getContentType() {
+        return null;
+    }
+
+    public String getContextPath() {
+        return null;
+    }
+
+    public Cookie[] getCookies() {
+        return null;
+    }
+
+    public long getDateHeader(String name) {
+        return 0;
+    }
+
+    public String getHeader(String name) {
+        return null;
+    }
+
+    public Enumeration getHeaderNames() {
+        return null;
+    }
+
+    public Enumeration getHeaders(String name) {
+        return null;
+    }
+
+    public ServletInputStream getInputStream() throws IOException {
+        return null;
+    }
+
+    public int getIntHeader(String name) {
+        return 0;
+    }
+
+    public String getLocalAddr() {
+        return null;
+    }
+
+    public Locale getLocale() {
+        return null;
+    }
+
+    public Enumeration getLocales() {
+        return null;
+    }
+
+    public String getLocalName() {
+        return null;
+    }
+
+    public int getLocalPort() {
+        return 0;
+    }
+
+    public String getMethod() {
+        return null;
+    }
+
+    public String getParameter(String name) {
+        return this.parameters.get(name);
+    }
+
+    public Map getParameterMap() {
+        return this.parameters;
+    }
+
+    public Enumeration getParameterNames() {
+        return Collections.enumeration(this.parameters.keySet());
+    }
+
+    public String[] getParameterValues(String name) {
+        return new String[] { this.getParameter(name) };
+    }
+
+    public String getPathInfo() {
+        return null;
+    }
+
+    public String getPathTranslated() {
+        return null;
+    }
+
+    public String getProtocol() {
+        return null;
+    }
+
+    public String getQueryString() {
+        return null;
+    }
+
+    public BufferedReader getReader() throws IOException {
+        return null;
+    }
+
+    public String getRealPath(String path) {
+        return null;
+    }
+
+    public String getRemoteAddr() {
+        return null;
+    }
+
+    public String getRemoteHost() {
+        return null;
+    }
+
+    public int getRemotePort() {
+        return 0;
+    }
+
+    public String getRemoteUser() {
+        return null;
+    }
+
+    public RequestDispatcher getRequestDispatcher(String path) {
+        return null;
+    }
+
+    public String getRequestedSessionId() {
+        return null;
+    }
+
+    public String getRequestURI() {
+        return null;
+    }
+
+    public StringBuffer getRequestURL() {
+        return null;
+    }
+
+    public String getScheme() {
+        return null;
+    }
+
+    public String getServerName() {
+        return null;
+    }
+
+    public int getServerPort() {
+        return 0;
+    }
+
+    public String getServletPath() {
+        return null;
+    }
+
+    public HttpSession getSession() {
+        return null;
+    }
+
+    public HttpSession getSession(boolean create) {
+        return null;
+    }
+
+    public Principal getUserPrincipal() {
+        return null;
+    }
+
+    public boolean isRequestedSessionIdFromCookie() {
+        return false;
+    }
+
+    public boolean isRequestedSessionIdFromUrl() {
+        return false;
+    }
+
+    public boolean isRequestedSessionIdFromURL() {
+        return false;
+    }
+
+    public boolean isRequestedSessionIdValid() {
+        return false;
+    }
+
+    public boolean isSecure() {
+        return false;
+    }
+
+    public boolean isUserInRole(String role) {
+        return false;
+    }
+
+    public void removeAttribute(String name) {
+    }
+
+    public void setAttribute(String name, Object o) {
+    }
+
+    public void setCharacterEncoding(String env) throws UnsupportedEncodingException {
+    }
+}

Propchange: cocoon/whiteboard/corona/trunk/corona-servlet/src/test/java/org/apache/cocoon/corona/sitemap/MockHttpServletRequest.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: cocoon/whiteboard/corona/trunk/corona-servlet/src/test/java/org/apache/cocoon/corona/sitemap/MockHttpServletRequest.java
------------------------------------------------------------------------------
    svn:keywords = Id

Propchange: cocoon/whiteboard/corona/trunk/corona-servlet/src/test/java/org/apache/cocoon/corona/sitemap/MockHttpServletRequest.java
------------------------------------------------------------------------------
    svn:mime-type = text/plain

Added: cocoon/whiteboard/corona/trunk/corona-servlet/src/test/java/org/apache/cocoon/corona/sitemap/MockHttpServletResponse.java
URL: http://svn.apache.org/viewvc/cocoon/whiteboard/corona/trunk/corona-servlet/src/test/java/org/apache/cocoon/corona/sitemap/MockHttpServletResponse.java?rev=639645&view=auto
==============================================================================
--- cocoon/whiteboard/corona/trunk/corona-servlet/src/test/java/org/apache/cocoon/corona/sitemap/MockHttpServletResponse.java (added)
+++ cocoon/whiteboard/corona/trunk/corona-servlet/src/test/java/org/apache/cocoon/corona/sitemap/MockHttpServletResponse.java Fri Mar 21 06:54:32 2008
@@ -0,0 +1,156 @@
+/*
+ * 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.cocoon.corona.sitemap;
+
+import java.io.IOException;
+import java.io.PrintWriter;
+import java.util.Locale;
+
+import javax.servlet.ServletOutputStream;
+import javax.servlet.http.Cookie;
+import javax.servlet.http.HttpServletResponse;
+
+public class MockHttpServletResponse implements HttpServletResponse {
+
+    private String redirect;
+
+    private int statusCode;
+
+    public MockHttpServletResponse() {
+        super();
+    }
+
+    public void addCookie(Cookie cookie) {
+    }
+
+    public void addDateHeader(String name, long date) {
+    }
+
+    public void addHeader(String name, String value) {
+    }
+
+    public void addIntHeader(String name, int value) {
+    }
+
+    public boolean containsHeader(String name) {
+        return false;
+    }
+
+    public String encodeRedirectUrl(String url) {
+        return url;
+    }
+
+    public String encodeRedirectURL(String url) {
+        return url;
+    }
+
+    public String encodeUrl(String url) {
+        return null;
+    }
+
+    public String encodeURL(String url) {
+        return null;
+    }
+
+    public void flushBuffer() throws IOException {
+    }
+
+    public int getBufferSize() {
+        return 0;
+    }
+
+    public String getCharacterEncoding() {
+        return null;
+    }
+
+    public String getContentType() {
+        return null;
+    }
+
+    public Locale getLocale() {
+        return null;
+    }
+
+    public ServletOutputStream getOutputStream() throws IOException {
+        return null;
+    }
+
+    public PrintWriter getWriter() throws IOException {
+        return null;
+    }
+
+    public boolean hasRedirected() {
+        return this.redirect != null;
+    }
+
+    public boolean isCommitted() {
+        return false;
+    }
+
+    public void reset() {
+    }
+
+    public void resetBuffer() {
+    }
+
+    public void sendError(int sc) throws IOException {
+    }
+
+    public void sendError(int sc, String msg) throws IOException {
+    }
+
+    public void sendRedirect(String location) throws IOException {
+        this.redirect = location;
+    }
+
+    public void setBufferSize(int size) {
+    }
+
+    public void setCharacterEncoding(String charset) {
+    }
+
+    public void setContentLength(int len) {
+    }
+
+    public void setContentType(String type) {
+    }
+
+    public void setDateHeader(String name, long date) {
+    }
+
+    public void setHeader(String name, String value) {
+    }
+
+    public void setIntHeader(String name, int value) {
+    }
+
+    public void setLocale(Locale loc) {
+    }
+
+    public void setStatus(int sc) {
+        this.statusCode = sc;
+    }
+
+    public void setStatus(int sc, String sm) {
+    }
+
+    public int getStatusCode() {
+        return this.statusCode;
+    }
+}

Propchange: cocoon/whiteboard/corona/trunk/corona-servlet/src/test/java/org/apache/cocoon/corona/sitemap/MockHttpServletResponse.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: cocoon/whiteboard/corona/trunk/corona-servlet/src/test/java/org/apache/cocoon/corona/sitemap/MockHttpServletResponse.java
------------------------------------------------------------------------------
    svn:keywords = Id

Propchange: cocoon/whiteboard/corona/trunk/corona-servlet/src/test/java/org/apache/cocoon/corona/sitemap/MockHttpServletResponse.java
------------------------------------------------------------------------------
    svn:mime-type = text/plain

Added: cocoon/whiteboard/corona/trunk/corona-servlet/src/test/java/org/apache/cocoon/corona/sitemap/SitemapBuilderTest.java
URL: http://svn.apache.org/viewvc/cocoon/whiteboard/corona/trunk/corona-servlet/src/test/java/org/apache/cocoon/corona/sitemap/SitemapBuilderTest.java?rev=639645&view=auto
==============================================================================
--- cocoon/whiteboard/corona/trunk/corona-servlet/src/test/java/org/apache/cocoon/corona/sitemap/SitemapBuilderTest.java (added)
+++ cocoon/whiteboard/corona/trunk/corona-servlet/src/test/java/org/apache/cocoon/corona/sitemap/SitemapBuilderTest.java Fri Mar 21 06:54:32 2008
@@ -0,0 +1,196 @@
+/*
+ * 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.cocoon.corona.sitemap;
+
+import java.net.URL;
+import java.util.HashMap;
+import java.util.Map;
+
+import javax.servlet.http.HttpServletResponse;
+
+import junit.framework.TestCase;
+
+import org.apache.cocoon.corona.sitemap.node.InvocationResult;
+import org.apache.cocoon.corona.sitemap.node.Sitemap;
+import org.apache.cocoon.corona.sitemap.util.HttpContextHelper;
+import org.springframework.context.ApplicationContext;
+import org.springframework.context.support.ClassPathXmlApplicationContext;
+
+public class SitemapBuilderTest extends TestCase {
+
+    private Sitemap sitemap;
+
+    private SitemapBuilder sitemapBuilder;
+
+    private ComponentProvider componentProvider;
+
+    public void testErrorHandlingGlobal() {
+        // TODO: currently this cannot work since some components for error
+        // handling are still missing
+        // Invocation invocation =
+        // this.buildInvocation("error-handling/custom-error");
+        // InvocationResult invocationResult = this.sitemap.invoke(invocation);
+        // assertNotNull(invocationResult);
+        // assertSame(InvocationResult.COMPLETED, invocationResult);
+        //
+        // // invocation should be marked as error-invocation
+        // assertTrue(invocation.isErrorInvocation());
+        // // the throwable should be our exception
+        // assertTrue(invocation.getThrowable().toString(),
+        // invocation.getThrowable() instanceof CustomException);
+    }
+
+    public void testErrorHandlingPipeline() {
+        Invocation invocation = this.buildInvocation("error-handling/custom-error-per-pipeline-error-handling");
+        MockHttpServletResponse mockHttpServletResponse = new MockHttpServletResponse();
+        HttpContextHelper.storeResponse(mockHttpServletResponse, invocation);
+
+        this.sitemap.invoke(invocation);
+        // invocation should be marked as error-invocation
+        assertTrue(invocation.isErrorInvocation());
+        // the throwable should be our exception
+        assertTrue("Expected CustomException but received " + invocation.getThrowable(),
+                invocation.getThrowable() instanceof CustomException);
+
+        assertEquals(501, mockHttpServletResponse.getStatusCode());
+    }
+
+    public void testGenerator() {
+        Invocation invocation = this.buildInvocation("sax-pipeline/unauthorized");
+        MockHttpServletResponse mockHttpServletResponse = new MockHttpServletResponse();
+        HttpContextHelper.storeResponse(mockHttpServletResponse, invocation);
+
+        InvocationResult invocationResult = this.sitemap.invoke(invocation);
+        assertNotNull(invocationResult);
+        assertSame(InvocationResult.COMPLETED, invocationResult);
+
+        // invocation should not be marked as error-invocation
+        assertFalse(invocation.isErrorInvocation());
+        assertEquals(401, mockHttpServletResponse.getStatusCode());
+    }
+
+    public void testNoMatchingPipeline() {
+        try {
+            this.sitemap.invoke(this.buildInvocation("unknown"));
+            fail("NoMatchingPipelineException was expected");
+        } catch (NoMatchingPipelineException nmpex) {
+            // expected result
+        }
+    }
+
+    public void testObjectModelPipeline() {
+        Invocation invocation = this.buildInvocation("object-model/request-parameters");
+        Map<String, String> requestParameters = new HashMap<String, String>();
+        requestParameters.put("a", "1");
+        requestParameters.put("b", "2");
+        requestParameters.put("c", "3");
+        HttpContextHelper.storeRequest(new MockHttpServletRequest(requestParameters), invocation);
+        this.sitemap.invoke(invocation);
+        // invocation not should be marked as error-invocation
+        assertFalse(invocation.isErrorInvocation());
+    }
+
+    public void testExpressionLanguage() {
+        Invocation invocation = this.buildInvocation("expression-language/map/simple");
+        this.sitemap.invoke(invocation);
+        // invocation should not be marked as error-invocation
+        assertFalse("InvocationImpl is marked as erroneous", invocation.isErrorInvocation());
+    }
+
+    public void testExpressionLanguage2() {
+        Invocation invocation = this.buildInvocation("expression-language/nested/simple");
+        this.sitemap.invoke(invocation);
+        // invocation should not be marked as error-invocation
+        assertFalse("InvocationImpl is marked as erroneous", invocation.isErrorInvocation());
+    }
+
+    // TODO: steven.dolg [2008-02-21]: cannot work until expression-language is
+    // integrated correctly
+    // public void testExpressionLanguage2() {
+    // InvocationImpl invocation =
+    // this.buildInvocation("expression-language/nested2/test");
+    // this.sitemap.invoke(invocation);
+    // // invocation should not be marked as error-invocation
+    // assertFalse(invocation.isErrorInvocation());
+    // }
+
+    // TODO: steven.dolg [2008-02-21]: cannot work until expression-language is
+    // integrated correctly
+    // public void testExpressionLanguage3() {
+    // InvocationImpl invocation =
+    // this.buildInvocation("expression-language/nested3/test");
+    // this.sitemap.invoke(invocation);
+    // // invocation should not be marked as error-invocation
+    // assertFalse(invocation.isErrorInvocation());
+    // }
+
+    public void testReadPipelineExplicit() {
+        Invocation invocation = this.buildInvocation("read/javascript-resource-explicit");
+        assertTrue(this.sitemap.invoke(invocation).isCompleted());
+        // invocation should not be marked as error-invocation
+        assertFalse(invocation.isErrorInvocation());
+    }
+
+    public void testReadPipelineImplicit() {
+        Invocation invocation = this.buildInvocation("read/javascript-resource-implicit");
+        assertTrue(this.sitemap.invoke(invocation).isCompleted());
+        // invocation should not be marked as error-invocation
+        assertFalse(invocation.isErrorInvocation());
+    }
+
+    public void testRedirectPipeline() {
+        Invocation invocation = this.buildInvocation("redirect/www.orf.at");
+        MockHttpServletResponse response = new MockHttpServletResponse();
+        Map<String, Object> parameters = new HashMap<String, Object>();
+        parameters.put(HttpServletResponse.class.getName(), response);
+        invocation.setParameters(parameters);
+
+        assertTrue(this.sitemap.invoke(invocation).isCompleted());
+        // invocation should not be marked as error-invocation
+        assertFalse("InvocationImpl is marked as erroneous.", invocation.isErrorInvocation());
+        assertTrue(response.hasRedirected());
+    }
+
+    @Override
+    protected void setUp() throws Exception {
+        ApplicationContext applicationContext = new ClassPathXmlApplicationContext(new String[] {
+                "META-INF/cocoon/spring/applicationContext.xml", "META-INF/cocoon/spring/corona-pipeline-action.xml",
+                "META-INF/cocoon/spring/corona-pipeline-component.xml", "META-INF/cocoon/spring/corona-pipeline.xml",
+                "META-INF/cocoon/spring/corona-sitemap-node.xml",
+                "META-INF/cocoon/spring/corona-expression-language.xml" });
+
+        this.componentProvider = (ComponentProvider) applicationContext
+                .getBean("org.apache.cocoon.corona.sitemap.ComponentProvider");
+
+        URL sitemapURL = this.getClass().getResource("/COB-INF/sitemap.xmap");
+        this.sitemapBuilder = (SitemapBuilder) applicationContext
+                .getBean("org.apache.cocoon.corona.sitemap.SitemapBuilder");
+        this.sitemap = this.sitemapBuilder.build(sitemapURL);
+    }
+
+    private Invocation buildInvocation(String request) {
+        InvocationImpl invocation = new InvocationImpl();
+
+        invocation.setOutputStream(System.out);
+        invocation.setRequest(request);
+        invocation.setComponentProvider(this.componentProvider);
+
+        return invocation;
+    }
+}

Propchange: cocoon/whiteboard/corona/trunk/corona-servlet/src/test/java/org/apache/cocoon/corona/sitemap/SitemapBuilderTest.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: cocoon/whiteboard/corona/trunk/corona-servlet/src/test/java/org/apache/cocoon/corona/sitemap/SitemapBuilderTest.java
------------------------------------------------------------------------------
    svn:keywords = Id

Propchange: cocoon/whiteboard/corona/trunk/corona-servlet/src/test/java/org/apache/cocoon/corona/sitemap/SitemapBuilderTest.java
------------------------------------------------------------------------------
    svn:mime-type = text/plain

Added: cocoon/whiteboard/corona/trunk/parent/pom.xml
URL: http://svn.apache.org/viewvc/cocoon/whiteboard/corona/trunk/parent/pom.xml?rev=639645&view=auto
==============================================================================
--- cocoon/whiteboard/corona/trunk/parent/pom.xml (added)
+++ cocoon/whiteboard/corona/trunk/parent/pom.xml Fri Mar 21 06:54:32 2008
@@ -0,0 +1,186 @@
+<?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$ -->
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+
+  <modelVersion>4.0.0</modelVersion>
+  <packaging>pom</packaging>
+
+  <groupId>org.apache.cocoon</groupId>
+  <artifactId>corona-parent</artifactId>
+  <version>1-SNAPSHOT</version>
+  <name>Cocoon Corona: Parent [pom]</name>
+  <description>Cocoon Corona Parent POM module contains all basic configurations for the Maven 2 based build system.</description>
+  <inceptionYear>2008</inceptionYear>
+
+  <dependencyManagement>
+    <dependencies>
+      <dependency>
+        <groupId>org.apache.cocoon</groupId>
+        <artifactId>cocoon-servlet-service-impl</artifactId>
+        <version>1.0.0-RC2-SNAPSHOT</version>
+      </dependency>
+      <dependency>
+        <groupId>org.apache.cocoon</groupId>
+        <artifactId>cocoon-spring-configurator</artifactId>
+        <version>1.0.1</version>
+      </dependency>
+      <dependency>
+        <groupId>commons-lang</groupId>
+        <artifactId>commons-lang</artifactId>
+        <version>2.3</version>
+      </dependency>
+      <dependency>
+        <groupId>xml-apis</groupId>
+        <artifactId>xml-apis</artifactId>
+        <version>1.3.02</version>
+      </dependency>
+      <dependency>
+        <groupId>javax.servlet</groupId>
+        <artifactId>servlet-api</artifactId>
+        <version>2.4</version>
+      </dependency>
+      <dependency>
+        <groupId>org.springframework</groupId>
+        <artifactId>spring-beans</artifactId>
+        <version>2.5.1</version>
+      </dependency>
+      <dependency>
+        <groupId>org.springframework</groupId>
+        <artifactId>spring-core</artifactId>
+        <version>2.5.1</version>
+      </dependency>
+      <dependency>
+        <groupId>org.springframework</groupId>
+        <artifactId>spring-context</artifactId>
+        <version>2.5.1</version>
+      </dependency>
+      <dependency>
+        <groupId>org.springframework</groupId>
+        <artifactId>spring-dao</artifactId>
+        <version>2.5.1</version>
+      </dependency>
+      <dependency>
+        <groupId>org.springframework</groupId>
+        <artifactId>spring-aop</artifactId>
+        <version>2.5.1</version>
+      </dependency>
+      <dependency>
+        <groupId>org.springframework</groupId>
+        <artifactId>spring-web</artifactId>
+        <version>2.5.1</version>
+      </dependency>
+
+      <dependency>
+        <groupId>org.apache.cocoon</groupId>
+        <artifactId>corona-core</artifactId>
+        <version>1.0.0-SNAPSHOT</version>
+      </dependency>
+
+      <dependency>
+        <groupId>junit</groupId>
+        <artifactId>junit</artifactId>
+        <version>4.4</version>
+        <scope>test</scope>
+      </dependency>
+    </dependencies>
+  </dependencyManagement>
+
+  <build>
+    <plugins>
+      <plugin>
+        <artifactId>maven-enforcer-plugin</artifactId>
+        <executions>
+          <execution>
+            <id>enforce-maven</id>
+            <goals>
+              <goal>enforce-once</goal>
+            </goals>
+            <configuration>
+              <rules>
+                <requireMavenVersion>
+                  <version>[2.0.8,)</version>
+                </requireMavenVersion>
+              </rules>
+            </configuration>
+          </execution>
+        </executions>
+      </plugin>
+      <plugin>
+        <artifactId>maven-compiler-plugin</artifactId>
+        <configuration>
+          <source>1.5</source>
+          <target>1.5</target>
+        </configuration>
+      </plugin>
+    </plugins>
+    <pluginManagement>
+      <plugins>
+        <plugin>
+          <groupId>org.apache.cocoon</groupId>
+          <artifactId>cocoon-maven-plugin</artifactId>
+          <version>1.0.0-RC1-SNAPSHOT</version>
+        </plugin>
+        <plugin>
+          <artifactId>maven-eclipse-plugin</artifactId>
+          <version>2.4</version>
+        </plugin>
+        <plugin>
+          <artifactId>maven-war-plugin</artifactId>
+          <version>2.0.2</version>
+        </plugin>
+        <plugin>
+          <groupId>org.mortbay.jetty</groupId>
+          <artifactId>maven-jetty-plugin</artifactId>
+          <version>6.1.7</version>
+        </plugin>
+        <plugin>
+          <artifactId>maven-jar-plugin</artifactId>
+          <version>2.1</version>
+        </plugin>
+        <plugin>
+          <artifactId>maven-antrun-plugin</artifactId>
+          <version>1.1</version>
+        </plugin>
+        <plugin>
+          <artifactId>maven-site-plugin</artifactId>
+          <version>2.0-beta-5</version>
+        </plugin>
+        <plugin>
+          <artifactId>maven-surefire-plugin</artifactId>
+          <version>2.4</version>
+        </plugin>
+        <plugin>
+          <artifactId>maven-enforcer-plugin</artifactId>
+          <version>1.0-alpha-2</version>
+        </plugin>
+        <plugin>
+          <artifactId>maven-compiler-plugin</artifactId>
+          <version>2.0.2</version>
+        </plugin>
+        <plugin>
+          <artifactId>maven-dependency-plugin</artifactId>
+          <version>2.0-alpha-4</version>
+        </plugin>
+      </plugins>
+    </pluginManagement>
+  </build>
+
+</project>

Propchange: cocoon/whiteboard/corona/trunk/parent/pom.xml
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: cocoon/whiteboard/corona/trunk/parent/pom.xml
------------------------------------------------------------------------------
    svn:keywords = Id

Propchange: cocoon/whiteboard/corona/trunk/parent/pom.xml
------------------------------------------------------------------------------
    svn:mime-type = text/xml

Added: cocoon/whiteboard/corona/trunk/pom.xml
URL: http://svn.apache.org/viewvc/cocoon/whiteboard/corona/trunk/pom.xml?rev=639645&view=auto
==============================================================================
--- cocoon/whiteboard/corona/trunk/pom.xml (added)
+++ cocoon/whiteboard/corona/trunk/pom.xml Fri Mar 21 06:54:32 2008
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- $Id$ -->
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+
+  <modelVersion>4.0.0</modelVersion>
+  <packaging>pom</packaging>
+
+  <groupId>org.apache.cocoon</groupId>
+  <artifactId>corona-root</artifactId>
+  <version>1-SNAPSHOT</version>
+  <name>Cocoon Corona: Build Root [pom]</name>
+
+  <modules>
+    <module>parent</module>
+    <!-- core modules -->
+    <module>corona-core</module>
+    <module>corona-servlet</module>    
+  </modules>
+
+  <build>
+    <plugins>
+      <plugin>
+        <artifactId>maven-eclipse-plugin</artifactId>
+        <version>2.4</version>
+      </plugin>
+    </plugins>
+  </build>
+
+  <profiles>
+    <profile>
+      <id>reports</id>
+      <reporting>
+        <plugins>
+          <plugin>
+            <artifactId>maven-project-info-reports-plugin</artifactId>
+            <version>2.0.1</version>
+          </plugin>
+        </plugins>
+      </reporting>
+    </profile>       
+  </profiles>
+
+</project>

Propchange: cocoon/whiteboard/corona/trunk/pom.xml
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: cocoon/whiteboard/corona/trunk/pom.xml
------------------------------------------------------------------------------
    svn:keywords = Id

Propchange: cocoon/whiteboard/corona/trunk/pom.xml
------------------------------------------------------------------------------
    svn:mime-type = text/xml