Author: veithen
Date: Sun Sep 29 11:47:34 2013
New Revision: 1527308
URL: http://svn.apache.org/r1527308
Log:
Ensure that Axiom works well when used on the Eclipse platform.
Added:
webservices/axiom/trunk/systests/eclipse-tests/ (with props)
webservices/axiom/trunk/systests/eclipse-tests/pom.xml (with props)
webservices/axiom/trunk/systests/eclipse-tests/src/
webservices/axiom/trunk/systests/eclipse-tests/src/it/
webservices/axiom/trunk/systests/eclipse-tests/src/it/project/ (with
props)
webservices/axiom/trunk/systests/eclipse-tests/src/it/project/.classpath
webservices/axiom/trunk/systests/eclipse-tests/src/it/project/.project
webservices/axiom/trunk/systests/eclipse-tests/src/it/project/.settings/
webservices/axiom/trunk/systests/eclipse-tests/src/it/project/.settings/org.eclipse.jdt.core.prefs
webservices/axiom/trunk/systests/eclipse-tests/src/it/project/META-INF/
webservices/axiom/trunk/systests/eclipse-tests/src/it/project/META-INF/MANIFEST.MF
webservices/axiom/trunk/systests/eclipse-tests/src/it/project/build.properties
webservices/axiom/trunk/systests/eclipse-tests/src/it/project/pom.xml
(with props)
webservices/axiom/trunk/systests/eclipse-tests/src/it/project/prebuild.groovy
webservices/axiom/trunk/systests/eclipse-tests/src/it/project/src/
webservices/axiom/trunk/systests/eclipse-tests/src/it/project/src/EclipseTest.java
(with props)
Modified:
webservices/axiom/trunk/modules/axiom-api/pom.xml
webservices/axiom/trunk/modules/axiom-api/src/main/java/org/apache/axiom/locator/Activator.java
webservices/axiom/trunk/modules/axiom-dom/pom.xml
webservices/axiom/trunk/modules/axiom-impl/pom.xml
webservices/axiom/trunk/pom.xml
webservices/axiom/trunk/systests/pom.xml
Modified: webservices/axiom/trunk/modules/axiom-api/pom.xml
URL:
http://svn.apache.org/viewvc/webservices/axiom/trunk/modules/axiom-api/pom.xml?rev=1527308&r1=1527307&r2=1527308&view=diff
==============================================================================
--- webservices/axiom/trunk/modules/axiom-api/pom.xml (original)
+++ webservices/axiom/trunk/modules/axiom-api/pom.xml Sun Sep 29 11:47:34 2013
@@ -213,6 +213,12 @@
*
</Import-Package>
<Bundle-Activator>org.apache.axiom.locator.Activator</Bundle-Activator>
+ <!-- On the Eclipse platform, bundles are initially
not started. However,
+ bundles with lazy activation are started
automatically when the first
+ class is loaded. Using this activation policy
ensures that Axiom can
+ be used out of the box with Eclipse plug-ins (for
the IDE or in an RCP
+ application). -->
+ <Bundle-ActivationPolicy>lazy</Bundle-ActivationPolicy>
</instructions>
</configuration>
</plugin>
Modified:
webservices/axiom/trunk/modules/axiom-api/src/main/java/org/apache/axiom/locator/Activator.java
URL:
http://svn.apache.org/viewvc/webservices/axiom/trunk/modules/axiom-api/src/main/java/org/apache/axiom/locator/Activator.java?rev=1527308&r1=1527307&r2=1527308&view=diff
==============================================================================
---
webservices/axiom/trunk/modules/axiom-api/src/main/java/org/apache/axiom/locator/Activator.java
(original)
+++
webservices/axiom/trunk/modules/axiom-api/src/main/java/org/apache/axiom/locator/Activator.java
Sun Sep 29 11:47:34 2013
@@ -37,7 +37,9 @@ public class Activator implements Bundle
public void start(BundleContext context) throws Exception {
OSGiOMMetaFactoryLocator locator = new
OSGiOMMetaFactoryLocator(context);
OMAbstractFactory.setMetaFactoryLocator(locator);
- tracker = new BundleTracker(context, Bundle.ACTIVE, locator);
+ // Bundle.STARTING covers the case where the implementation bundle has
+ // "Bundle-ActivationPolicy: lazy".
+ tracker = new BundleTracker(context, Bundle.STARTING | Bundle.ACTIVE,
locator);
tracker.open();
// In an OSGi environment, the thread context class loader is
generally not set in a meaningful way.
// Therefore we should use singleton factories. Note that if the StAX
API is provided by Geronimo's or
Modified: webservices/axiom/trunk/modules/axiom-dom/pom.xml
URL:
http://svn.apache.org/viewvc/webservices/axiom/trunk/modules/axiom-dom/pom.xml?rev=1527308&r1=1527307&r2=1527308&view=diff
==============================================================================
--- webservices/axiom/trunk/modules/axiom-dom/pom.xml (original)
+++ webservices/axiom/trunk/modules/axiom-dom/pom.xml Sun Sep 29 11:47:34 2013
@@ -119,6 +119,7 @@
<instructions>
<_nouses>true</_nouses>
<Private-Package>org.apache.axiom.*</Private-Package>
+ <Bundle-ActivationPolicy>lazy</Bundle-ActivationPolicy>
</instructions>
</configuration>
</plugin>
Modified: webservices/axiom/trunk/modules/axiom-impl/pom.xml
URL:
http://svn.apache.org/viewvc/webservices/axiom/trunk/modules/axiom-impl/pom.xml?rev=1527308&r1=1527307&r2=1527308&view=diff
==============================================================================
--- webservices/axiom/trunk/modules/axiom-impl/pom.xml (original)
+++ webservices/axiom/trunk/modules/axiom-impl/pom.xml Sun Sep 29 11:47:34 2013
@@ -113,6 +113,7 @@
<instructions>
<_nouses>true</_nouses>
<Private-Package>org.apache.axiom.*</Private-Package>
+ <Bundle-ActivationPolicy>lazy</Bundle-ActivationPolicy>
</instructions>
</configuration>
</plugin>
Modified: webservices/axiom/trunk/pom.xml
URL:
http://svn.apache.org/viewvc/webservices/axiom/trunk/pom.xml?rev=1527308&r1=1527307&r2=1527308&view=diff
==============================================================================
--- webservices/axiom/trunk/pom.xml (original)
+++ webservices/axiom/trunk/pom.xml Sun Sep 29 11:47:34 2013
@@ -517,24 +517,24 @@
<goals>
<goal>enforce</goal>
</goals>
- <configuration>
- <rules>
- <requireJavaVersion>
- <!-- We require Java 6 for the build, but
we enforce Java 5 compatibility using Animal Sniffer -->
- <version>1.6.0</version>
- </requireJavaVersion>
- <requireNoRepositories>
- <message>The POM must not include
repository definitions since non Apache repositories threaten the build
stability.</message>
- <banRepositories>true</banRepositories>
-
<banPluginRepositories>true</banPluginRepositories>
- <!-- We still need to allow the Apache
snapshot repository -->
-
<allowSnapshotRepositories>true</allowSnapshotRepositories>
-
<allowSnapshotPluginRepositories>true</allowSnapshotPluginRepositories>
- </requireNoRepositories>
- </rules>
- </configuration>
</execution>
</executions>
+ <configuration>
+ <rules>
+ <requireJavaVersion>
+ <!-- We require Java 6 for the build, but we
enforce Java 5 compatibility using Animal Sniffer -->
+ <version>1.6.0</version>
+ </requireJavaVersion>
+ <requireNoRepositories>
+ <message>The POM must not include repository
definitions since non Apache repositories threaten the build
stability.</message>
+ <banRepositories>true</banRepositories>
+ <banPluginRepositories>true</banPluginRepositories>
+ <!-- We still need to allow the Apache snapshot
repository -->
+
<allowSnapshotRepositories>true</allowSnapshotRepositories>
+
<allowSnapshotPluginRepositories>true</allowSnapshotPluginRepositories>
+ </requireNoRepositories>
+ </rules>
+ </configuration>
</plugin>
<plugin>
<groupId>org.codehaus.gmaven</groupId>
Propchange: webservices/axiom/trunk/systests/eclipse-tests/
------------------------------------------------------------------------------
--- svn:ignore (added)
+++ svn:ignore Sun Sep 29 11:47:34 2013
@@ -0,0 +1 @@
+target
Added: webservices/axiom/trunk/systests/eclipse-tests/pom.xml
URL:
http://svn.apache.org/viewvc/webservices/axiom/trunk/systests/eclipse-tests/pom.xml?rev=1527308&view=auto
==============================================================================
--- webservices/axiom/trunk/systests/eclipse-tests/pom.xml (added)
+++ webservices/axiom/trunk/systests/eclipse-tests/pom.xml Sun Sep 29 11:47:34
2013
@@ -0,0 +1,138 @@
+<?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">
+ <modelVersion>4.0.0</modelVersion>
+ <parent>
+ <groupId>org.apache.ws.commons.axiom</groupId>
+ <artifactId>systests</artifactId>
+ <version>1.2.15-SNAPSHOT</version>
+ </parent>
+ <artifactId>eclipse-tests</artifactId>
+ <name>Eclipse Tests</name>
+ <description>Contains test cases that verify that the Axiom OSGi bundles
are usable out of the box by Eclipse plug-ins.</description>
+ <packaging>pom</packaging>
+ <properties>
+ <tycho-version>0.18.1</tycho-version>
+ </properties>
+ <dependencies>
+ <!-- We declare dependencies here to guarantee that the build order is
correct.
+ The dependencies will be inherited by the test project
(src/it/project). -->
+ <dependency>
+ <groupId>${project.groupId}</groupId>
+ <artifactId>axiom-api</artifactId>
+ <version>${project.version}</version>
+ <exclusions>
+ <exclusion>
+ <groupId>org.apache.geronimo.specs</groupId>
+ <artifactId>geronimo-activation_1.1_spec</artifactId>
+ </exclusion>
+ </exclusions>
+ </dependency>
+ <dependency>
+ <groupId>${project.groupId}</groupId>
+ <artifactId>axiom-impl</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>${project.groupId}</groupId>
+ <artifactId>axiom-dom</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ </dependencies>
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>org.codehaus.gmaven</groupId>
+ <artifactId>gmaven-plugin</artifactId>
+ <executions>
+ <execution>
+ <!-- Need this to pass information to the hook
scripts. Once maven-invoker-plugin 1.9 is released,
+ we no longer need this; see MINVOKER-119. -->
+ <id>generate-invoker-script-properties</id>
+ <phase>pre-integration-test</phase>
+ <goals>
+ <goal>execute</goal>
+ </goals>
+ <configuration>
+ <source>
+ import java.io.*
+ import java.util.*
+
+ dir = new File(project.build.directory, "it")
+ dir.mkdirs()
+ props = new Properties()
+ props.setProperty("version", project.version)
+ stream = new FileOutputStream(new File(dir,
"script.properties"))
+ props.store(stream, null)
+ stream.close()
+ </source>
+ </configuration>
+ </execution>
+ </executions>
+ </plugin>
+ <plugin>
+ <artifactId>maven-invoker-plugin</artifactId>
+ <version>1.8</version>
+ <inherited>false</inherited>
+ <executions>
+ <execution>
+ <!-- Instead of executing the Tycho
eclipse-test-plugin project directly, we use the invoker plugin.
+ There are multiple reasons for that:
+ * The test project depends on axiom-api,
axiom-impl and axiom-dom. If they are executed
+ in the same reactor, then Tycho will fail
because axiom-api, axiom-impl and axiom-dom are
+ plain Maven projects. The reason is that the
P2 resolver has no way to know the packages
+ exported by these projects.
+ * In a Tycho project, the Bundle-Version in the
manifest must match the POM version.
+ On the other hand, maven-release-plugin only
updates the POM. That would break
+ the automated release process.
+ * It prevents maven-eclipse-plugin from messing
with the test project.
+ -->
+ <id>integration-test</id>
+ <goals>
+ <goal>run</goal>
+ </goals>
+ <configuration>
+ <streamLogs>true</streamLogs>
+
<cloneProjectsTo>${project.build.directory}/it</cloneProjectsTo>
+ <goals>
+ <goal>test</goal>
+ </goals>
+ </configuration>
+ </execution>
+ </executions>
+ </plugin>
+ <plugin>
+ <groupId>org.apache.rat</groupId>
+ <artifactId>apache-rat-plugin</artifactId>
+ <configuration>
+ <excludes>
+ <!-- Don't need license headers for Eclipse
project files -->
+ <exclude>src/it/*/.project</exclude>
+ <exclude>src/it/*/.classpath</exclude>
+ <exclude>src/it/*/.settings/**</exclude>
+ <exclude>src/it/*/build.properties</exclude>
+ <!-- Manifests can't contain comments -->
+ <exclude>src/it/*/META-INF/MANIFEST.MF</exclude>
+ </excludes>
+ </configuration>
+ </plugin>
+ </plugins>
+ </build>
+</project>
Propchange: webservices/axiom/trunk/systests/eclipse-tests/pom.xml
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: webservices/axiom/trunk/systests/eclipse-tests/src/it/project/
------------------------------------------------------------------------------
--- svn:ignore (added)
+++ svn:ignore Sun Sep 29 11:47:34 2013
@@ -0,0 +1 @@
+bin
Added: webservices/axiom/trunk/systests/eclipse-tests/src/it/project/.classpath
URL:
http://svn.apache.org/viewvc/webservices/axiom/trunk/systests/eclipse-tests/src/it/project/.classpath?rev=1527308&view=auto
==============================================================================
--- webservices/axiom/trunk/systests/eclipse-tests/src/it/project/.classpath
(added)
+++ webservices/axiom/trunk/systests/eclipse-tests/src/it/project/.classpath
Sun Sep 29 11:47:34 2013
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+ <classpathentry kind="con"
path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.6"/>
+ <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
+ <classpathentry kind="src" path="src"/>
+ <classpathentry kind="output" path="bin"/>
+</classpath>
Added: webservices/axiom/trunk/systests/eclipse-tests/src/it/project/.project
URL:
http://svn.apache.org/viewvc/webservices/axiom/trunk/systests/eclipse-tests/src/it/project/.project?rev=1527308&view=auto
==============================================================================
--- webservices/axiom/trunk/systests/eclipse-tests/src/it/project/.project
(added)
+++ webservices/axiom/trunk/systests/eclipse-tests/src/it/project/.project Sun
Sep 29 11:47:34 2013
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>eclipse-tests-project</name>
+ <comment></comment>
+ <projects>
+ </projects>
+ <buildSpec>
+ <buildCommand>
+ <name>org.eclipse.jdt.core.javabuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ <buildCommand>
+ <name>org.eclipse.pde.ManifestBuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ <buildCommand>
+ <name>org.eclipse.pde.SchemaBuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ </buildSpec>
+ <natures>
+ <nature>org.eclipse.pde.PluginNature</nature>
+ <nature>org.eclipse.jdt.core.javanature</nature>
+ </natures>
+</projectDescription>
Added:
webservices/axiom/trunk/systests/eclipse-tests/src/it/project/.settings/org.eclipse.jdt.core.prefs
URL:
http://svn.apache.org/viewvc/webservices/axiom/trunk/systests/eclipse-tests/src/it/project/.settings/org.eclipse.jdt.core.prefs?rev=1527308&view=auto
==============================================================================
---
webservices/axiom/trunk/systests/eclipse-tests/src/it/project/.settings/org.eclipse.jdt.core.prefs
(added)
+++
webservices/axiom/trunk/systests/eclipse-tests/src/it/project/.settings/org.eclipse.jdt.core.prefs
Sun Sep 29 11:47:34 2013
@@ -0,0 +1,8 @@
+#Sun Sep 22 11:46:26 CEST 2013
+eclipse.preferences.version=1
+org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.6
+org.eclipse.jdt.core.compiler.compliance=1.6
+org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
+org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
+org.eclipse.jdt.core.compiler.source=1.6
Added:
webservices/axiom/trunk/systests/eclipse-tests/src/it/project/META-INF/MANIFEST.MF
URL:
http://svn.apache.org/viewvc/webservices/axiom/trunk/systests/eclipse-tests/src/it/project/META-INF/MANIFEST.MF?rev=1527308&view=auto
==============================================================================
---
webservices/axiom/trunk/systests/eclipse-tests/src/it/project/META-INF/MANIFEST.MF
(added)
+++
webservices/axiom/trunk/systests/eclipse-tests/src/it/project/META-INF/MANIFEST.MF
Sun Sep 29 11:47:34 2013
@@ -0,0 +1,8 @@
+Manifest-Version: 1.0
+Bundle-ManifestVersion: 2
+Bundle-SymbolicName: eclipse-tests-project
+Bundle-Version: 0.0.0
+Bundle-RequiredExecutionEnvironment: JavaSE-1.6
+Import-Package: org.apache.axiom.om,
+ org.apache.axiom.om.dom
+Require-Bundle: org.junit;bundle-version="[4.0.0,5.0.0)"
Added:
webservices/axiom/trunk/systests/eclipse-tests/src/it/project/build.properties
URL:
http://svn.apache.org/viewvc/webservices/axiom/trunk/systests/eclipse-tests/src/it/project/build.properties?rev=1527308&view=auto
==============================================================================
---
webservices/axiom/trunk/systests/eclipse-tests/src/it/project/build.properties
(added)
+++
webservices/axiom/trunk/systests/eclipse-tests/src/it/project/build.properties
Sun Sep 29 11:47:34 2013
@@ -0,0 +1,4 @@
+source.. = src/
+output.. = bin/
+bin.includes = META-INF/,\
+ .
Added: webservices/axiom/trunk/systests/eclipse-tests/src/it/project/pom.xml
URL:
http://svn.apache.org/viewvc/webservices/axiom/trunk/systests/eclipse-tests/src/it/project/pom.xml?rev=1527308&view=auto
==============================================================================
--- webservices/axiom/trunk/systests/eclipse-tests/src/it/project/pom.xml
(added)
+++ webservices/axiom/trunk/systests/eclipse-tests/src/it/project/pom.xml Sun
Sep 29 11:47:34 2013
@@ -0,0 +1,89 @@
+<?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">
+ <modelVersion>4.0.0</modelVersion>
+ <parent>
+ <groupId>@project.groupId@</groupId>
+ <artifactId>eclipse-tests</artifactId>
+ <version>@project.version@</version>
+ <relativePath>../../../pom.xml</relativePath>
+ </parent>
+ <artifactId>eclipse-tests-project</artifactId>
+ <packaging>eclipse-test-plugin</packaging>
+ <repositories>
+ <repository>
+ <id>kepler</id>
+ <layout>p2</layout>
+ <!-- Note that http://download.eclipse.org/releases/kepler is a
combined repository that
+ also contains the services releases. It is therefore not
stable, i.e. its content
+ may change over time. To avoid that, we use the repository
that contains the
+ original release artifacts. -->
+ <url>http://download.eclipse.org/releases/kepler/201306260900</url>
+ </repository>
+ </repositories>
+ <build>
+ <plugins>
+ <plugin>
+ <artifactId>maven-enforcer-plugin</artifactId>
+ <configuration>
+ <rules>
+ <requireNoRepositories>
+ <!-- We need the Eclipse P2 repository for one of
the Eclipse releases. If we select the
+ repository carefully, then it is reasonable
to assume that this doesn't threaten
+ the build stability. -->
+ <banRepositories>false</banRepositories>
+ </requireNoRepositories>
+ </rules>
+ </configuration>
+ </plugin>
+ <plugin>
+ <groupId>org.eclipse.tycho</groupId>
+ <artifactId>tycho-maven-plugin</artifactId>
+ <version>${tycho-version}</version>
+ <extensions>true</extensions>
+ </plugin>
+ <plugin>
+ <groupId>org.eclipse.tycho</groupId>
+ <artifactId>target-platform-configuration</artifactId>
+ <version>${tycho-version}</version>
+ <configuration>
+ <pomDependencies>consider</pomDependencies>
+ </configuration>
+ </plugin>
+ <plugin>
+ <groupId>org.eclipse.tycho</groupId>
+ <artifactId>tycho-surefire-plugin</artifactId>
+ <version>${tycho-version}</version>
+ <configuration>
+ <dependencies>
+ <dependency>
+ <type>eclipse-plugin</type>
+
<artifactId>org.apache.ws.commons.axiom.axiom-impl</artifactId>
+ </dependency>
+ <dependency>
+ <type>eclipse-plugin</type>
+
<artifactId>org.apache.ws.commons.axiom.axiom-dom</artifactId>
+ </dependency>
+ </dependencies>
+ </configuration>
+ </plugin>
+ </plugins>
+ </build>
+</project>
Propchange:
webservices/axiom/trunk/systests/eclipse-tests/src/it/project/pom.xml
------------------------------------------------------------------------------
svn:eol-style = native
Added:
webservices/axiom/trunk/systests/eclipse-tests/src/it/project/prebuild.groovy
URL:
http://svn.apache.org/viewvc/webservices/axiom/trunk/systests/eclipse-tests/src/it/project/prebuild.groovy?rev=1527308&view=auto
==============================================================================
---
webservices/axiom/trunk/systests/eclipse-tests/src/it/project/prebuild.groovy
(added)
+++
webservices/axiom/trunk/systests/eclipse-tests/src/it/project/prebuild.groovy
Sun Sep 29 11:47:34 2013
@@ -0,0 +1,48 @@
+/*
+ * 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.
+ */
+
+// This script adjusts the Bundle-Version in META-INF/MANIFEST.MF. It is
needed because:
+// * Filtering is only supported for POM files (see MINVOKER-117).
+// * Tycho complains if there is a version mismatch between the POM and the
manifest.
+// * The test project must have the same version as the main project. The
reason is that
+// we want the main project to be the parent of the test project. If the
versions don't
+// match, then ${project.version} will be substituted by the wrong value.
+
+import java.io.*
+import java.util.*
+import java.util.jar.*
+
+stream = new FileInputStream(new File(basedir, "../script.properties"))
+props = new Properties()
+props.load(stream)
+stream.close()
+
+version = props.getProperty("version").replace("-SNAPSHOT", ".qualifier")
+
+manifestFile = new File(basedir, "META-INF/MANIFEST.MF")
+
+stream = new FileInputStream(manifestFile)
+manifest = new Manifest(stream)
+stream.close()
+
+manifest.mainAttributes.putValue("Bundle-Version", version)
+
+stream = new FileOutputStream(manifestFile)
+manifest.write(stream)
+stream.close()
Added:
webservices/axiom/trunk/systests/eclipse-tests/src/it/project/src/EclipseTest.java
URL:
http://svn.apache.org/viewvc/webservices/axiom/trunk/systests/eclipse-tests/src/it/project/src/EclipseTest.java?rev=1527308&view=auto
==============================================================================
---
webservices/axiom/trunk/systests/eclipse-tests/src/it/project/src/EclipseTest.java
(added)
+++
webservices/axiom/trunk/systests/eclipse-tests/src/it/project/src/EclipseTest.java
Sun Sep 29 11:47:34 2013
@@ -0,0 +1,50 @@
+/*
+ * 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.
+ */
+import static org.junit.Assert.assertEquals;
+
+import java.io.StringReader;
+
+import javax.xml.namespace.QName;
+
+import org.apache.axiom.om.OMAbstractFactory;
+import org.apache.axiom.om.OMElement;
+import org.apache.axiom.om.OMXMLBuilderFactory;
+import org.apache.axiom.om.dom.DOMMetaFactory;
+import org.junit.Test;
+import org.w3c.dom.Document;
+import org.w3c.dom.Element;
+
+/**
+ * Tests that Axiom works out of the box in an Eclipse platform.
+ */
+public class EclipseTest {
+ @Test
+ public void testLLOM() {
+ OMElement element = OMXMLBuilderFactory.createOMBuilder(new
StringReader("<ns:test xmlns:ns='urn:ns'>test</ns:test>")).getDocumentElement();
+ assertEquals(new QName("urn:ns", "test"), element.getQName());
+ }
+
+ @Test
+ public void testDOOM() throws Exception {
+ DOMMetaFactory metaFactory =
(DOMMetaFactory)OMAbstractFactory.getMetaFactory(OMAbstractFactory.FEATURE_DOM);
+ Document document =
metaFactory.newDocumentBuilderFactory().newDocumentBuilder().newDocument();
+ Element element = document.createElementNS("urn:test", "p:root");
+ assertEquals(new QName("urn:test", "root"),
((OMElement)element).getQName());
+ }
+}
Propchange:
webservices/axiom/trunk/systests/eclipse-tests/src/it/project/src/EclipseTest.java
------------------------------------------------------------------------------
svn:eol-style = native
Modified: webservices/axiom/trunk/systests/pom.xml
URL:
http://svn.apache.org/viewvc/webservices/axiom/trunk/systests/pom.xml?rev=1527308&r1=1527307&r2=1527308&view=diff
==============================================================================
--- webservices/axiom/trunk/systests/pom.xml (original)
+++ webservices/axiom/trunk/systests/pom.xml Sun Sep 29 11:47:34 2013
@@ -46,6 +46,7 @@
</plugins>
</build>
<modules>
+ <module>eclipse-tests</module>
<module>jboss-tests</module>
<module>osgi-tests</module>
<module>spring-ws-tests</module>