| <?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. |
| --> |
| <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"> |
| |
| <parent> |
| <artifactId>components</artifactId> |
| <groupId>org.apache.camel</groupId> |
| <version>2.0-M2</version> |
| </parent> |
| <modelVersion>4.0.0</modelVersion> |
| <artifactId>camel-web</artifactId> |
| |
| <name>Camel :: Web</name> |
| <description>Camel Web Application with REST support</description> |
| <packaging>war</packaging> |
| |
| <properties> |
| <camel.osgi.export.pkg>org.apache.camel.web.*</camel.osgi.export.pkg> |
| <jersey-version>1.0.3</jersey-version> |
| <jetty-port>8080</jetty-port> |
| <webdriver-version>685</webdriver-version> |
| </properties> |
| |
| <repositories> |
| <repository> |
| <id>java.net.m2</id> |
| <name>java.net Maven 2 Repo</name> |
| <url>http://download.java.net/maven/2</url> |
| </repository> |
| <repository> |
| <id>release.openqa.org</id> |
| <name>OpenQA Releases</name> |
| <url>http://archiva.openqa.org/repository/releases</url> |
| <releases> |
| <enabled>true</enabled> |
| </releases> |
| <snapshots> |
| <enabled>false</enabled> |
| </snapshots> |
| </repository> |
| </repositories> |
| |
| <pluginRepositories> |
| <pluginRepository> |
| <id>java.net.m2</id> |
| <name>java.net Maven 2 Repo</name> |
| <url>http://download.java.net/maven/2</url> |
| </pluginRepository> |
| </pluginRepositories> |
| |
| <dependencies> |
| <dependency> |
| <groupId>org.apache.camel</groupId> |
| <artifactId>camel-core</artifactId> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.camel</groupId> |
| <artifactId>camel-spring</artifactId> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.camel</groupId> |
| <artifactId>camel-groovy</artifactId> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.camel</groupId> |
| <artifactId>camel-ruby</artifactId> |
| </dependency> |
| <dependency> |
| <groupId>com.sun.jersey.contribs</groupId> |
| <artifactId>jersey-spring</artifactId> |
| <version>${jersey-version}</version> |
| </dependency> |
| <dependency> |
| <groupId>com.sun.jersey</groupId> |
| <artifactId>jersey-json</artifactId> |
| <version>${jersey-version}</version> |
| </dependency> |
| <dependency> |
| <groupId>com.sun.jersey</groupId> |
| <artifactId>jersey-atom</artifactId> |
| <version>${jersey-version}</version> |
| </dependency> |
| <dependency> |
| <groupId>opensymphony</groupId> |
| <artifactId>sitemesh</artifactId> |
| <version>2.3</version> |
| </dependency> |
| <dependency> |
| <groupId>javax.annotation</groupId> |
| <artifactId>jsr250-api</artifactId> |
| <optional>true</optional> |
| </dependency> |
| |
| <!-- testing web framework --> |
| <!-- |
| <dependency> |
| <groupId>com.google</groupId> |
| <artifactId>jetty</artifactId> |
| <version>${webdriver-version}</version> |
| <scope>test</scope> |
| </dependency> |
| --> |
| <!-- |
| <dependency> |
| <groupId>net.sourceforge.htmlunit</groupId> |
| <artifactId>htmlunit</artifactId> |
| <version>2.4</version> |
| </dependency> |
| <dependency> |
| <groupId>net.sourceforge.htmlunit</groupId> |
| <artifactId>htmlunit-core-js</artifactId> |
| <version>2.4</version> |
| </dependency> |
| --> |
| <dependency> |
| <groupId>org.openqa.selenium.webdriver</groupId> |
| <artifactId>webdriver-htmlunit</artifactId> |
| <version>0.6.685</version> |
| <scope>test</scope> |
| </dependency> |
| <dependency> |
| <groupId>org.openqa.selenium.webdriver</groupId> |
| <artifactId>webdriver-support</artifactId> |
| <version>0.6.685</version> |
| <scope>test</scope> |
| </dependency> |
| |
| <!-- testing web container --> |
| <dependency> |
| <groupId>org.mortbay.jetty</groupId> |
| <artifactId>jetty</artifactId> |
| <version>${jetty-version}</version> |
| <scope>test</scope> |
| </dependency> |
| <dependency> |
| <groupId>org.mortbay.jetty</groupId> |
| <artifactId>jetty-util</artifactId> |
| <version>${jetty-version}</version> |
| <scope>test</scope> |
| </dependency> |
| <dependency> |
| <groupId>org.mortbay.jetty</groupId> |
| <artifactId>jsp-2.1</artifactId> |
| <!-- a newer release of jsp-2.1 was not found in mvn repo --> |
| <version>6.1.14</version> |
| <scope>test</scope> |
| </dependency> |
| <dependency> |
| <groupId>javax.servlet</groupId> |
| <artifactId>jstl</artifactId> |
| <version>1.1.2</version> |
| <scope>compile</scope> |
| </dependency> |
| <dependency> |
| <groupId>taglibs</groupId> |
| <artifactId>standard</artifactId> |
| <version>1.1.2</version> |
| </dependency> |
| <dependency> |
| <groupId>org.slf4j</groupId> |
| <artifactId>slf4j-api</artifactId> |
| </dependency> |
| <dependency> |
| <groupId>org.slf4j</groupId> |
| <artifactId>slf4j-log4j12</artifactId> |
| </dependency> |
| |
| <!-- testing --> |
| <dependency> |
| <groupId>com.sun.jersey</groupId> |
| <artifactId>jersey-client</artifactId> |
| <version>${jersey-version}</version> |
| <scope>test</scope> |
| </dependency> |
| <dependency> |
| <groupId>org.springframework</groupId> |
| <artifactId>spring-test</artifactId> |
| <scope>test</scope> |
| </dependency> |
| <dependency> |
| <groupId>junit</groupId> |
| <artifactId>junit</artifactId> |
| <scope>test</scope> |
| </dependency> |
| <dependency> |
| <groupId>commons-logging</groupId> |
| <artifactId>commons-logging</artifactId> |
| <scope>test</scope> |
| </dependency> |
| <dependency> |
| <groupId>log4j</groupId> |
| <artifactId>log4j</artifactId> |
| <scope>test</scope> |
| </dependency> |
| </dependencies> |
| |
| <build> |
| <resources> |
| <resource> |
| <directory>src/main/resources</directory> |
| <filtering>false</filtering> |
| </resource> |
| </resources> |
| |
| <plugins> |
| <plugin> |
| <artifactId>maven-surefire-plugin</artifactId> |
| <version>2.4.3</version> |
| <configuration> |
| <forkMode>once</forkMode> |
| <!-- these settings are mandatory to avoid SureFire giving a bogus system property to the web container --> |
| <useSystemClassLoader>false</useSystemClassLoader> |
| <useManifestOnlyJar>false</useManifestOnlyJar> |
| <includes> |
| <include>**/*Test.*</include> |
| </includes> |
| </configuration> |
| </plugin> |
| |
| |
| <plugin> |
| <artifactId>maven-war-plugin</artifactId> |
| <version>2.1-alpha-2</version> |
| <configuration> |
| <attachClasses>true</attachClasses> |
| </configuration> |
| </plugin> |
| |
| |
| <plugin> |
| <groupId>org.mortbay.jetty</groupId> |
| <artifactId>maven-jetty-plugin</artifactId> |
| <version>${jetty-version}</version> |
| |
| <configuration> |
| <!-- |
| <connectors> |
| <connector implementation="org.mortbay.jetty.nio.SelectChannelConnector"> |
| <port>${jetty.port}</port> |
| <maxIdleTime>60000</maxIdleTime> |
| </connector> |
| </connectors> |
| --> |
| |
| <webAppConfig> |
| <contextPath>/</contextPath> |
| </webAppConfig> |
| |
| <systemProperties> |
| <!-- enable easy JMX connection to JConsole --> |
| <systemProperty> |
| <name>com.sun.management.jmxremote</name> |
| <value /> |
| </systemProperty> |
| </systemProperties> |
| <scanIntervalSeconds>10</scanIntervalSeconds> |
| </configuration> |
| </plugin> |
| |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-javadoc-plugin</artifactId> |
| <executions> |
| <execution> |
| <goals> |
| <goal>javadoc</goal> |
| </goals> |
| <phase>compile</phase> |
| <!--<phase>package</phase>--> |
| </execution> |
| </executions> |
| |
| <configuration> |
| |
| <encoding>UTF-8</encoding> |
| <verbose>false</verbose> |
| <show>public</show> |
| <subpackages>org.apache.camel.web.resources</subpackages> |
| |
| <doclet>com.sun.jersey.wadl.resourcedoc.ResourceDoclet</doclet> |
| <docletArtifacts> |
| <docletArtifact> |
| <groupId>com.sun.jersey.contribs</groupId> |
| <artifactId>maven-wadl-plugin</artifactId> |
| <version>${jersey-version}</version> |
| </docletArtifact> |
| <docletArtifact> |
| <groupId>com.sun.jersey.contribs</groupId> |
| <artifactId>wadl-resourcedoc-doclet</artifactId> |
| <version>${jersey-version}</version> |
| </docletArtifact> |
| <!-- |
| Also specify jersey and xerces as doclet artifacts as the ResourceDoclet |
| uses classes provided by them to generate the resourcedoc. |
| --> |
| <docletArtifact> |
| <groupId>com.sun.jersey</groupId> |
| <artifactId>jersey-server</artifactId> |
| <version>${jersey-version}</version> |
| </docletArtifact> |
| <docletArtifact> |
| <groupId>xerces</groupId> |
| <artifactId>xercesImpl</artifactId> |
| <version>2.6.1</version> |
| </docletArtifact> |
| <!-- |
| <docletArtifact> |
| <groupId>javax.xml.bind</groupId> |
| <artifactId>jaxb-api</artifactId> |
| <version>${jaxb-api-version}</version> |
| </docletArtifact> |
| <docletArtifact> |
| <groupId>javax.xml</groupId> |
| <artifactId>jaxb-impl</artifactId> |
| <version>${jaxb-version}</version> |
| </docletArtifact> |
| --> |
| <docletArtifact> |
| <groupId>javax.xml.bind</groupId> |
| <artifactId>jaxb-api</artifactId> |
| <version>${jaxb-api-version}</version> |
| </docletArtifact> |
| <docletArtifact> |
| <groupId>com.sun.xml.bind</groupId> |
| <artifactId>jaxb-impl</artifactId> |
| <version>${jaxb-version}</version> |
| </docletArtifact> |
| <docletArtifact> |
| <groupId>javax.activation</groupId> |
| <artifactId>activation</artifactId> |
| <version>1.1</version> |
| </docletArtifact> |
| <docletArtifact> |
| <groupId>stax</groupId> |
| <artifactId>stax-api</artifactId> |
| <version>${stax-api-version}</version> |
| </docletArtifact> |
| <!-- |
| <docletArtifact> |
| <groupId>javax.xml.stream</groupId> |
| <artifactId>stax-api</artifactId> |
| <version>${stax-api-version}</version> |
| </docletArtifact> |
| --> |
| </docletArtifacts> |
| <additionalparam>-output ${project.build.outputDirectory}/resourcedoc.xml</additionalparam> |
| </configuration> |
| </plugin> |
| |
| |
| <plugin> |
| <groupId>com.sun.jersey.contribs</groupId> |
| <artifactId>maven-wadl-plugin</artifactId> |
| <version>${jersey-version}</version> |
| <executions> |
| <execution> |
| <id>generate</id> |
| <goals> |
| <goal>generate</goal> |
| </goals> |
| <phase>compile</phase> |
| </execution> |
| </executions> |
| <configuration> |
| <wadlFile>${project.build.outputDirectory}/application.wadl</wadlFile> |
| <formatWadlFile>true</formatWadlFile> |
| <baseUri>http://www.example.com/api</baseUri> |
| <packagesResourceConfig> |
| <param>org.apache.camel.web.resources</param> |
| </packagesResourceConfig> |
| <wadlGenerators> |
| <wadlGeneratorDescription> |
| <className>com.sun.jersey.server.wadl.generators.WadlGeneratorApplicationDoc</className> |
| <properties> |
| <property> |
| <name>applicationDocsFile</name> |
| <value>${basedir}/src/main/resources/application-doc.xml</value> |
| </property> |
| </properties> |
| </wadlGeneratorDescription> |
| <wadlGeneratorDescription> |
| <className>com.sun.jersey.server.wadl.generators.WadlGeneratorGrammarsSupport</className> |
| <properties> |
| <property> |
| <name>grammarsFile</name> |
| <value>${basedir}/src/main/resources/application-grammars.xml</value> |
| </property> |
| </properties> |
| </wadlGeneratorDescription> |
| <wadlGeneratorDescription> |
| <className>com.sun.jersey.server.wadl.generators.resourcedoc.WadlGeneratorResourceDocSupport</className> |
| <properties> |
| <property> |
| <name>resourceDocFile</name> |
| <value>${project.build.outputDirectory}/resourcedoc.xml</value> |
| </property> |
| </properties> |
| </wadlGeneratorDescription> |
| <!-- |
| <wadlGeneratorDescription> |
| <className>com.sun.jersey.samples.generatewadl.util.ExampleWadlGenerator</className> |
| <properties> |
| <property> |
| <name>resourceDocFile</name> |
| <value>${project.build.outputDirectory}/resourcedoc.xml</value> |
| </property> |
| </properties> |
| </wadlGeneratorDescription> |
| --> |
| </wadlGenerators> |
| </configuration> |
| |
| </plugin> |
| |
| |
| <plugin> |
| <groupId>org.codehaus.mojo</groupId> |
| <artifactId>build-helper-maven-plugin</artifactId> |
| <executions> |
| <execution> |
| <id>attach-artifacts</id> |
| <phase>package</phase> |
| <goals> |
| <goal>attach-artifact</goal> |
| </goals> |
| <configuration> |
| <artifacts> |
| <artifact> |
| <file>${project.build.directory}/schema/camel-web.xsd</file> |
| <type>xsd</type> |
| </artifact> |
| </artifacts> |
| </configuration> |
| </execution> |
| </executions> |
| </plugin> |
| </plugins> |
| |
| <pluginManagement> |
| <plugins> |
| <plugin> |
| <groupId>com.sun.tools.jxc.maven2</groupId> |
| <artifactId>maven-jaxb-schemagen-plugin</artifactId> |
| <executions> |
| <execution> |
| <phase>process-sources</phase> |
| <configuration> |
| <destdir>${project.build.directory}/schema</destdir> |
| <srcdir>src/main/java/org/apache/camel/web/model</srcdir> |
| <schemas> |
| <schema> |
| <namespace>http://camel.apache.org/schema/web</namespace> |
| <file>camel-web.xsd</file> |
| </schema> |
| </schemas> |
| <!--<verbose>false</verbose>--> |
| </configuration> |
| </execution> |
| </executions> |
| </plugin> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-dependency-plugin</artifactId> |
| <configuration> |
| <artifactItems> |
| <artifactItem> |
| <groupId>org.apache.camel</groupId> |
| <artifactId>camel-web</artifactId> |
| <version>${pom.version}</version> |
| <type>xsd</type> |
| <overWrite>false</overWrite> |
| <outputDirectory>${project.build.directory}/schema</outputDirectory> |
| <destFileName>camel-web.xsd</destFileName> |
| </artifactItem> |
| </artifactItems> |
| </configuration> |
| </plugin> |
| </plugins> |
| </pluginManagement> |
| </build> |
| |
| <profiles> |
| <!-- The next three profiles are used to bypass the schemagen plugin on HP and IBM JDKs. |
| |
| TODO: Whenever Maven supports profile activations based on multiple properties, we |
| should combine the on-ibmjdk and on-hpjdk profiles as they do exactly the same thing. --> |
| <profile> |
| <id>enable-schemagen</id> |
| <activation> |
| <activeByDefault>true</activeByDefault> |
| </activation> |
| <build> |
| <plugins> |
| <plugin> |
| <groupId>com.sun.tools.jxc.maven2</groupId> |
| <artifactId>maven-jaxb-schemagen-plugin</artifactId> |
| <executions> |
| <execution> |
| <phase>process-sources</phase> |
| <goals> |
| <goal>generate</goal> |
| </goals> |
| </execution> |
| </executions> |
| </plugin> |
| </plugins> |
| </build> |
| </profile> |
| <profile> |
| <id>on-ibmjdk</id> |
| <activation> |
| <property> |
| <name>java.vendor</name> |
| <value>IBM Corporation</value> |
| </property> |
| </activation> |
| <build> |
| <plugins> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-dependency-plugin</artifactId> |
| <executions> |
| <execution> |
| <id>copy</id> |
| <phase>generate-sources</phase> |
| <goals> |
| <goal>copy</goal> |
| </goals> |
| </execution> |
| </executions> |
| </plugin> |
| <plugin> |
| <groupId>com.sun.tools.jxc.maven2</groupId> |
| <artifactId>maven-jaxb-schemagen-plugin</artifactId> |
| </plugin> |
| </plugins> |
| </build> |
| </profile> |
| <profile> |
| <id>on-hpjdk</id> |
| <activation> |
| <property> |
| <name>java.vendor</name> |
| <value>Hewlett-Packard Co.</value> |
| </property> |
| </activation> |
| <build> |
| <plugins> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-dependency-plugin</artifactId> |
| <executions> |
| <execution> |
| <id>copy</id> |
| <phase>generate-sources</phase> |
| <goals> |
| <goal>copy</goal> |
| </goals> |
| </execution> |
| </executions> |
| </plugin> |
| <plugin> |
| <groupId>com.sun.tools.jxc.maven2</groupId> |
| <artifactId>maven-jaxb-schemagen-plugin</artifactId> |
| </plugin> |
| </plugins> |
| </build> |
| </profile> |
| </profiles> |
| </project> |