You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@servicemix.apache.org by gn...@apache.org on 2007/12/14 21:07:28 UTC

svn commit: r604284 - in /servicemix/smx4/nmr/trunk: ./ jbi/itests/ jbi/itests/src/test/java/org/apache/servicemix/jbi/ jbi/itests/src/test/resources/org/apache/servicemix/ jbi/offline/ jbi/offline/src/main/java/org/apache/servicemix/jbi/offline/ jbi/o...

Author: gnodet
Date: Fri Dec 14 12:07:26 2007
New Revision: 604284

URL: http://svn.apache.org/viewvc?rev=604284&view=rev
Log:
Clean offline tool, fix tests

Removed:
    servicemix/smx4/nmr/trunk/jbi/offline/src/main/java/org/apache/servicemix/jbi/offline/JarUtil.java
    servicemix/smx4/nmr/trunk/jbi/offline/src/test/java/org/apache/servicemix/jbi/offline/JarUtilTest.java
Modified:
    servicemix/smx4/nmr/trunk/jbi/itests/pom.xml
    servicemix/smx4/nmr/trunk/jbi/itests/src/test/java/org/apache/servicemix/jbi/IntegrationTest.java
    servicemix/smx4/nmr/trunk/jbi/itests/src/test/resources/org/apache/servicemix/MANIFEST.MF
    servicemix/smx4/nmr/trunk/jbi/offline/pom.xml
    servicemix/smx4/nmr/trunk/pom.xml

Modified: servicemix/smx4/nmr/trunk/jbi/itests/pom.xml
URL: http://svn.apache.org/viewvc/servicemix/smx4/nmr/trunk/jbi/itests/pom.xml?rev=604284&r1=604283&r2=604284&view=diff
==============================================================================
--- servicemix/smx4/nmr/trunk/jbi/itests/pom.xml (original)
+++ servicemix/smx4/nmr/trunk/jbi/itests/pom.xml Fri Dec 14 12:07:26 2007
@@ -34,47 +34,17 @@
     <name>ServiceMix JBI Integration Tests</name>
 
     <properties>
-        <osgi.test.platform>org.springframework.osgi.test.platform.EquinoxPlatform</osgi.test.platform>
+        <osgi.test.platform>org.springframework.osgi.internal.test.platform.FelixPlatform</osgi.test.platform>
     </properties>
 
     <dependencies>
         <dependency>
-            <groupId>org.apache.servicemix.bundles</groupId>
-            <artifactId>org.apache.servicemix.bundles.aopalliance</artifactId>
+            <groupId>org.apache.servicemix.runtime.testing</groupId>
+            <artifactId>org.apache.servicemix.runtime.testing.support</artifactId>
 		    <version>0.1-SNAPSHOT</version>
             <scope>test</scope>
         </dependency>
         <dependency>
-            <groupId>org.apache.servicemix.bundles</groupId>
-            <artifactId>org.apache.servicemix.bundles.asm</artifactId>
-		    <version>0.1-SNAPSHOT</version>
-            <scope>test</scope>
-        </dependency>
-        <dependency>
-            <groupId>org.apache.servicemix.bundles</groupId>
-            <artifactId>org.apache.servicemix.bundles.junit</artifactId>
-		    <version>0.1-SNAPSHOT</version>
-            <scope>test</scope>
-        </dependency>
-        <dependency>
-            <groupId>org.apache.servicemix.bundles</groupId>
-            <artifactId>org.apache.servicemix.bundles.jaxb-api</artifactId>
-            <version>${project.version}</version>
-            <scope>test</scope>
-        </dependency>
-        <dependency>
-            <groupId>org.apache.servicemix.bundles</groupId>
-            <artifactId>org.apache.servicemix.bundles.jaxb-impl</artifactId>
-            <version>${project.version}</version>
-            <scope>test</scope>
-        </dependency>
-        <dependency>
-            <groupId>org.apache.servicemix.bundles</groupId>
-            <artifactId>org.apache.servicemix.bundles.httpcore</artifactId>
-            <version>${project.version}</version>
-            <scope>test</scope>
-        </dependency>
-        <dependency>
             <groupId>org.apache.servicemix.nmr</groupId>
             <artifactId>org.apache.servicemix.nmr.api</artifactId>
             <version>${project.version}</version>
@@ -129,154 +99,28 @@
             <scope>test</scope>
         </dependency>
         <dependency>
-            <groupId>org.springframework</groupId>
-            <artifactId>spring-beans</artifactId>
-            <version>${spring.version}</version>
-            <scope>test</scope>
-        </dependency>
-        <dependency>
-            <groupId>org.springframework</groupId>
-            <artifactId>spring-core</artifactId>
-            <version>${spring.version}</version>
-            <scope>test</scope>
-        </dependency>
-        <dependency>
-            <groupId>org.springframework</groupId>
-            <artifactId>spring-context</artifactId>
-            <version>${spring.version}</version>
-            <scope>test</scope>
-        </dependency>
-        <dependency>
-            <groupId>org.springframework</groupId>
-            <artifactId>spring-aop</artifactId>
-            <version>${spring.version}</version>
-            <scope>test</scope>
-        </dependency>
-        <dependency>
-            <groupId>org.springframework</groupId>
-            <artifactId>spring-test</artifactId>
-            <version>${spring.version}</version>
-            <scope>test</scope>
-        </dependency>
-        <dependency>
-            <groupId>org.springframework.osgi</groupId>
-            <artifactId>spring-osgi-core</artifactId>
-            <version>${spring.osgi.version}</version>
-            <scope>test</scope>
-        </dependency>
-        <dependency>
-            <groupId>org.springframework.osgi</groupId>
-            <artifactId>spring-osgi-io</artifactId>
-            <version>${spring.osgi.version}</version>
-            <scope>test</scope>
-        </dependency>
-        <dependency>
-            <groupId>org.springframework.osgi</groupId>
-            <artifactId>spring-osgi-extender</artifactId>
-            <version>${spring.osgi.version}</version>
-            <scope>test</scope>
-        </dependency>
-        <dependency>
-            <groupId>org.springframework.osgi</groupId>
-            <artifactId>spring-osgi-test</artifactId>
-            <version>${spring.osgi.version}</version>
-            <scope>test</scope>
-        </dependency>
-        <dependency>
-            <groupId>org.springframework.osgi</groupId>
-            <artifactId>spring-osgi-annotation</artifactId>
-            <version>${spring.osgi.version}</version>
-            <scope>test</scope>
-        </dependency>
-<!--
-        <dependency>
-            <groupId>org.springframework</groupId>
-            <artifactId>spring-tx</artifactId>
-            <scope>test</scope>
-        </dependency>
-        <dependency>
-            <groupId>org.springframework</groupId>
-            <artifactId>spring-jms</artifactId>
-            <scope>test</scope>
-        </dependency>
-        <dependency>
-            <groupId>org.apache.geronimo.specs</groupId>
-            <artifactId>geronimo-jms_1.1_spec</artifactId>
-            <scope>test</scope>
-        </dependency>
-        <dependency>
-            <groupId>org.apache.geronimo.specs</groupId>
-            <artifactId>geronimo-j2ee-management_1.1_spec</artifactId>
-            <scope>test</scope>
-        </dependency>
-        <dependency>
-            <groupId>org.apache.geronimo.specs</groupId>
-            <artifactId>geronimo-stax-api_1.0_spec</artifactId>
-            <scope>test</scope>
-        </dependency>
-        <dependency>
-            <groupId>org.apache.geronimo.specs</groupId>
-            <artifactId>geronimo-servlet_2.5_spec</artifactId>
-            <scope>test</scope>
-        </dependency>
-        <dependency>
-            <groupId>org.apache.geronimo.specs</groupId>
-            <artifactId>geronimo-jms_1.1_spec</artifactId>
-            <scope>test</scope>
-        </dependency>
-        <dependency>
-            <groupId>org.apache.geronimo.specs</groupId>
-            <artifactId>geronimo-activation_1.1_spec</artifactId>
-            <scope>test</scope>
-        </dependency>
-        <dependency>
-            <groupId>org.apache.activemq</groupId>
-            <artifactId>activemq-core</artifactId>
-            <version>${activemq.version}</version>
-            <scope>test</scope>
-        </dependency>
-        <dependency>
-            <groupId>org.eclipse.osgi</groupId>
-            <artifactId>org.eclipse.osgi</artifactId>
-            <version>3.2.2</version>
-            <scope>test</scope>
-        </dependency>
-        <dependency>
-            <groupId>org.apache.felix</groupId>
-            <artifactId>org.osgi.compendium</artifactId>
-        </dependency>
-        <dependency>
-            <groupId>org.ops4j.pax.logging</groupId>
-            <artifactId>pax-logging-api</artifactId>
+            <groupId>org.apache.servicemix</groupId>
+            <artifactId>servicemix-shared-compat</artifactId>
+            <version>${smx3.version}</version>
+            <classifier>installer</classifier>
+            <type>zip</type>
         </dependency>
         <dependency>
-            <groupId>org.ops4j.pax.logging</groupId>
-            <artifactId>pax-logging-service</artifactId>
+            <groupId>org.apache.servicemix</groupId>
+            <artifactId>servicemix-eip</artifactId>
+            <version>${smx3.version}</version>
+            <classifier>installer</classifier>
+            <type>zip</type>
         </dependency>
--->
-<dependency>
-    <groupId>org.apache.servicemix</groupId>
-    <artifactId>servicemix-shared-compat</artifactId>
-    <version>${smx3.version}</version>
-    <classifier>installer</classifier>
-    <type>zip</type>
-</dependency>
-<dependency>
-    <groupId>org.apache.servicemix</groupId>
-    <artifactId>servicemix-eip</artifactId>
-    <version>${smx3.version}</version>
-    <classifier>installer</classifier>
-    <type>zip</type>
-</dependency>
     </dependencies>
 
     <build>
         <plugins>
             <!-- generate dependencies versions -->
             <plugin>
-                <groupId>org.apache.servicemix.tooling</groupId>
+                <groupId>org.apache.servicemix.runtime.testing</groupId>
                 <artifactId>depends-maven-plugin</artifactId>
-                <version>4.0-SNAPSHOT</version>
+                <version>0.1-SNAPSHOT</version>
                 <executions>
                     <execution>
                         <id>generate-depends-file</id>

Modified: servicemix/smx4/nmr/trunk/jbi/itests/src/test/java/org/apache/servicemix/jbi/IntegrationTest.java
URL: http://svn.apache.org/viewvc/servicemix/smx4/nmr/trunk/jbi/itests/src/test/java/org/apache/servicemix/jbi/IntegrationTest.java?rev=604284&r1=604283&r2=604284&view=diff
==============================================================================
--- servicemix/smx4/nmr/trunk/jbi/itests/src/test/java/org/apache/servicemix/jbi/IntegrationTest.java (original)
+++ servicemix/smx4/nmr/trunk/jbi/itests/src/test/java/org/apache/servicemix/jbi/IntegrationTest.java Fri Dec 14 12:07:26 2007
@@ -28,15 +28,15 @@
 
 import org.apache.servicemix.jbi.offline.Main;
 import org.apache.servicemix.nmr.api.NMR;
+import org.apache.servicemix.runtime.testing.support.AbstractIntegrationTest;
 import org.osgi.framework.Bundle;
 import org.osgi.framework.ServiceEvent;
 import org.osgi.framework.ServiceListener;
-import org.springframework.osgi.test.AbstractConfigurableBundleCreatorTests;
+import org.springframework.osgi.internal.util.concurrent.Counter;
 import org.springframework.osgi.util.OsgiFilterUtils;
 import org.springframework.osgi.util.OsgiListenerUtils;
-import org.springframework.osgi.internal.util.concurrent.Counter;
 
-public class IntegrationTest extends AbstractConfigurableBundleCreatorTests {
+public class IntegrationTest extends AbstractIntegrationTest {
 
     private Properties dependencies;
 
@@ -68,33 +68,8 @@
 	 */
 	protected String[] getTestBundlesNames() {
         return new String[] {
-            getBundle("org.apache.geronimo.specs", "geronimo-jms_1.1_spec"),
-            getBundle("org.apache.geronimo.specs", "geronimo-servlet_2.5_spec"),
-            getBundle("org.apache.geronimo.specs", "geronimo-j2ee-management_1.1_spec"),
             getBundle("org.apache.geronimo.specs", "geronimo-stax-api_1.0_spec"),
             getBundle("org.apache.geronimo.specs", "geronimo-activation_1.1_spec"),
-            getBundle("org.apache.felix", "org.osgi.compendium"),
-            getBundle("org.ops4j.pax.logging", "pax-logging-api"),
-            getBundle("org.ops4j.pax.logging", "pax-logging-service"),
-            getBundle("org.apache.servicemix.bundles", "org.apache.servicemix.bundles.aopalliance"),
-            getBundle("org.apache.servicemix.bundles", "org.apache.servicemix.bundles.jaxb-api"),
-            getBundle("org.apache.servicemix.bundles", "org.apache.servicemix.bundles.jaxb-impl"),
-            getBundle("org.apache.servicemix.bundles", "org.apache.servicemix.bundles.httpcore"),
-            getBundle("org.apache.activemq", "activemq-core"),
-            getBundle("org.springframework", "spring-beans"),
-            getBundle("org.springframework", "spring-core"),
-            getBundle("org.springframework", "spring-context"),
-            getBundle("org.springframework", "spring-aop"),
-            getBundle("org.springframework", "spring-test"),
-            getBundle("org.springframework", "spring-tx"),
-            getBundle("org.springframework", "spring-jms"),
-            getBundle("org.springframework.osgi", "spring-osgi-core"),
-            getBundle("org.springframework.osgi", "spring-osgi-io"),
-            getBundle("org.springframework.osgi", "spring-osgi-extender"),
-            getBundle("org.springframework.osgi", "spring-osgi-test"),
-            getBundle("org.springframework.osgi", "spring-osgi-annotation"),
-            getBundle("org.springframework.osgi", "junit.osgi"),
-            getBundle("org.springframework.osgi", "asm.osgi"),
             getBundle("org.apache.servicemix.nmr", "org.apache.servicemix.nmr.api"),
             getBundle("org.apache.servicemix.nmr", "org.apache.servicemix.nmr.core"),
 			getBundle("org.apache.servicemix.nmr", "org.apache.servicemix.nmr.spring"),
@@ -107,182 +82,15 @@
 		};
 	}
 
-    protected String getBundle(String groupId, String artifactId) {
-        return groupId + "," + artifactId + "," + getBundleVersion(groupId, artifactId);
-    }
-
-    protected String getBundleVersion(String groupId, String artifactId) {
-        if (dependencies == null) {
-            try {
-                File f = new File(System.getProperty("basedir"), "target/classes/META-INF/maven/dependencies.properties");
-                Properties prop = new Properties();
-                prop.load(new FileInputStream(f));
-                dependencies = prop;
-            } catch (IOException e) {
-                throw new IllegalStateException("Unable to load dependencies informations", e);
-            }
-        }
-        String version = dependencies.getProperty(groupId + "/" + artifactId + "/version");
-        if (version == null) {
-            throw new IllegalStateException("Unable to find dependency information for: " + groupId + "/" + artifactId + "/version");
-        }
-        return version;
-    }
-
-    protected String[] getTestFrameworkBundlesNames() {
-        return null;
-    }
-
     public void testJbiComponent() throws Exception {
         System.out.println("Waiting for NMR");
         NMR nmr = getOsgiService(NMR.class);
         assertNotNull(nmr);
-        installBundle(getArtifact("servicemix-shared-compat"));
-        installBundle(getArtifact("servicemix-eip"));
+        installBundle("org.apache.servicemix", "servicemix-shared-compat", "installer", "zip");
+        installBundle("org.apache.servicemix", "servicemix-eip", "installer", "zip");
         System.out.println("Waiting for JBI Component");
         Component cmp = (Component) getOsgiService(Component.class);
         assertNotNull(cmp);
-    }
-
-    protected File getArtifact(final String id) {
-        return new File("target/components/").listFiles(new FilenameFilter() {
-            public boolean accept(File dir, String name) {
-                return name.startsWith(id);
-            }
-        })[0];
-    }
-
-    protected void installArtifact(String groupId, String artifactId, String classifier, String type) throws Exception {
-        String version = getBundleVersion(groupId, artifactId);
-        File in = localMavenBundle(groupId, artifactId, version, classifier, type);
-        File out = File.createTempFile("smx", ".jar");
-        new Main().run(in.toString(), out.toString());
-        installBundle(out);
-    }
-
-    protected void installBundle(File file) throws Exception {
-        installBundle(file.getAbsoluteFile().toURI().toString());
-    }
-
-    protected void installBundle(String uri) throws Exception {
-        System.out.println("Installing bundle " + uri);
-        Bundle bundle = bundleContext.installBundle(uri);
-        bundle.start();
-    }
-
-    protected File localMavenBundle(String groupId, String artifact, String version, String classifier, String type) {
-        String defaultHome = new File(new File(System.getProperty("user.home")), ".m2/repository").getAbsolutePath();
-        File repositoryHome = new File(System.getProperty("localRepository", defaultHome));
-
-        StringBuffer location = new StringBuffer(groupId.replace('.', '/'));
-        location.append('/');
-        location.append(artifact);
-        location.append('/');
-        location.append(version);
-        location.append('/');
-        location.append(artifact);
-        location.append('-');
-        location.append(version);
-        if (classifier != null) {
-            location.append('-');
-            location.append(classifier);
-        }
-        location.append(".");
-        location.append(type);
-
-        return new File(repositoryHome, location.toString());
-    }
-
-    public <T> T getOsgiService(Class<T> type) {
-        return getOsgiService(type, DEFAULT_WAIT_TIME);
-    }
-
-    public <T> T getOsgiService(Class<T> type, long timeout) {
-        // translate from seconds to miliseconds
-        long time = timeout * 1000;
-
-        // use the counter to make sure the threads block
-        final Counter counter = new Counter("waitForOsgiService on bnd=" + type.getName());
-
-        counter.increment();
-
-        final List<T> services = new ArrayList<T>();
-
-        ServiceListener listener = new ServiceListener() {
-            public void serviceChanged(ServiceEvent event) {
-                if (event.getType() == ServiceEvent.REGISTERED) {
-                    services.add((T) bundleContext.getService(event.getServiceReference()));
-                    counter.decrement();
-                }
-            }
-        };
-
-        String filter = OsgiFilterUtils.unifyFilter(type.getName(), null);
-        OsgiListenerUtils.addServiceListener(bundleContext, listener, filter);
-
-        if (logger.isDebugEnabled())
-            logger.debug("start waiting for OSGi service=" + type.getName());
-
-        try {
-            if (counter.waitForZero(time)) {
-                logger.warn("waiting for OSGi service=" + type.getName() + " timed out");
-                throw new RuntimeException("Gave up waiting for OSGi service '" + type.getName() + "' to be created");
-            }
-            else if (logger.isDebugEnabled()) {
-                logger.debug("found OSGi service=" + type.getName());
-            }
-            return services.get(0);
-        }
-        finally {
-            // inform waiting thread
-            bundleContext.removeServiceListener(listener);
-        }
-    }
-
-    /**
-     * Place the current (test) thread to wait for the a Spring application
-     * context to be published under the given symbolic name. This method allows
-     * waiting for full initialization of Spring OSGi bundles before starting
-     * the actual test execution.
-     *
-     * @param interfaceName
-     * @param timeout
-     */
-    public void waitForOsgiService(String interfaceName, long timeout) {
-        // translate from seconds to miliseconds
-        long time = timeout * 1000;
-
-        // use the counter to make sure the threads block
-        final Counter counter = new Counter("waitForOsgiService on bnd=" + interfaceName);
-
-        counter.increment();
-
-        ServiceListener listener = new ServiceListener() {
-            public void serviceChanged(ServiceEvent event) {
-                if (event.getType() == ServiceEvent.REGISTERED)
-                    counter.decrement();
-            }
-        };
-
-        String filter = OsgiFilterUtils.unifyFilter(interfaceName, null);
-        OsgiListenerUtils.addServiceListener(bundleContext, listener, filter);
-
-        if (logger.isDebugEnabled())
-            logger.debug("start waiting for OSGi service=" + interfaceName);
-
-        try {
-            if (counter.waitForZero(time)) {
-                logger.warn("waiting for OSGi service=" + interfaceName + " timed out");
-                throw new RuntimeException("Gave up waiting for OSGi service '" + interfaceName + "' to be created");
-            }
-            else if (logger.isDebugEnabled()) {
-                logger.debug("found OSGi service=" + interfaceName);
-            }
-        }
-        finally {
-            // inform waiting thread
-            bundleContext.removeServiceListener(listener);
-        }
     }
 
 }

Modified: servicemix/smx4/nmr/trunk/jbi/itests/src/test/resources/org/apache/servicemix/MANIFEST.MF
URL: http://svn.apache.org/viewvc/servicemix/smx4/nmr/trunk/jbi/itests/src/test/resources/org/apache/servicemix/MANIFEST.MF?rev=604284&r1=604283&r2=604284&view=diff
==============================================================================
--- servicemix/smx4/nmr/trunk/jbi/itests/src/test/resources/org/apache/servicemix/MANIFEST.MF (original)
+++ servicemix/smx4/nmr/trunk/jbi/itests/src/test/resources/org/apache/servicemix/MANIFEST.MF Fri Dec 14 12:07:26 2007
@@ -28,5 +28,6 @@
  org.apache.servicemix.nmr.api,
  org.apache.servicemix.nmr.core,
  org.apache.servicemix.jbi.offline,
+ org.apache.servicemix.runtime.testing.support,
  org.springframework.osgi.util,
  javax.jbi.component

Modified: servicemix/smx4/nmr/trunk/jbi/offline/pom.xml
URL: http://svn.apache.org/viewvc/servicemix/smx4/nmr/trunk/jbi/offline/pom.xml?rev=604284&r1=604283&r2=604284&view=diff
==============================================================================
--- servicemix/smx4/nmr/trunk/jbi/offline/pom.xml (original)
+++ servicemix/smx4/nmr/trunk/jbi/offline/pom.xml Fri Dec 14 12:07:26 2007
@@ -34,43 +34,12 @@
 
 
   <dependencies>
-    <!--dependency>
-      <groupId>org.apache.servicemix</groupId>
-      <artifactId>org.apache.servicemix.core</artifactId>
-    </dependency>
-    <dependency>
-      <groupId>org.apache.servicemix.jbi</groupId>
-      <artifactId>org.apache.servicemix.jbi.api</artifactId>
-    </dependency>
-    <dependency>
-      <groupId>org.apache.servicemix</groupId>
-      <artifactId>servicemix-eip</artifactId>
-      <scope>test</scope>
-    </dependency-->
     <dependency>
         <groupId>org.apache.servicemix.jbi</groupId>
         <artifactId>org.apache.servicemix.jbi.deployer</artifactId>
         <version>${project.version}</version>
     </dependency>
     <dependency>
-        <groupId>org.apache.servicemix</groupId>
-        <artifactId>servicemix-eip</artifactId>
-        <classifier>installer</classifier>
-        <type>zip</type>
-	    <version>${smx3.version}</version>
-        <scope>provided</scope>
-    </dependency>
-    <dependency>
-      <groupId>org.springframework</groupId>
-      <artifactId>spring-core</artifactId>
-      <version>${spring.version}</version>
-    </dependency>
-    <dependency>
-      <groupId>org.springframework.osgi</groupId>
-      <artifactId>spring-osgi-test</artifactId>
-      <version>${spring.osgi.version}</version>
-    </dependency>
-    <dependency>
       <groupId>junit</groupId>
       <artifactId>junit</artifactId>
       <version>${junit.version}</version>
@@ -85,7 +54,6 @@
   </dependencies>
 
   <build>
-    <finalName>convert</finalName>
     <plugins>
       <plugin>
         <groupId>org.apache.felix</groupId>
@@ -93,8 +61,7 @@
         <configuration>
           <instructions>
             <Bundle-SymbolicName>${pom.artifactId}</Bundle-SymbolicName>
-            <Export-Package>${pom.artifactId}*</Export-Package>
-            <Private-Package>org.apache.servicemix.jbi.deployer*</Private-Package>
+            <Export-Package>${pom.artifactId}*;version=${project.version}</Export-Package>
             <Import-Package>org.springframework*;resolution:=optional,*</Import-Package>
           </instructions>
         </configuration>

Modified: servicemix/smx4/nmr/trunk/pom.xml
URL: http://svn.apache.org/viewvc/servicemix/smx4/nmr/trunk/pom.xml?rev=604284&r1=604283&r2=604284&view=diff
==============================================================================
--- servicemix/smx4/nmr/trunk/pom.xml (original)
+++ servicemix/smx4/nmr/trunk/pom.xml Fri Dec 14 12:07:26 2007
@@ -188,6 +188,16 @@
           <artifactId>commons-logging</artifactId>
           <version>${commons.logging.version}</version>
       </dependency>
+      <dependency>
+          <groupId>org.apache.geronimo.specs</groupId>
+          <artifactId>geronimo-servlet_2.5_spec</artifactId>
+          <version>${geronimo.servlet.version}</version>
+      </dependency>
+      <dependency>
+          <groupId>org.apache.geronimo.specs</groupId>
+          <artifactId>geronimo-stax-api_1.0_spec</artifactId>
+          <version>${geronimo.stax.version}</version>
+      </dependency>
     </dependencies>
   </dependencyManagement>