SLING-4757 - fix .war bundle support - all Sling integration tests pass now

git-svn-id: https://svn.apache.org/repos/asf/sling/trunk@1686226 13f79535-47bb-0310-9956-ffa450edef68
diff --git a/src/main/java/org/apache/sling/crankstart/launcher/BundlesInstaller.java b/src/main/java/org/apache/sling/crankstart/launcher/BundlesInstaller.java
index 89a2d5a..bf7b33b 100644
--- a/src/main/java/org/apache/sling/crankstart/launcher/BundlesInstaller.java
+++ b/src/main/java/org/apache/sling/crankstart/launcher/BundlesInstaller.java
@@ -44,14 +44,18 @@
         this.rmFilter = rmFilter;
     }
     
+    private boolean isBundle(Artifact a) {
+        final String aType = a.getType();
+        return "jar".equals(aType) || "war".equals(aType);
+    }
+    
     public void installBundles(final BundleContext ctx, final FeatureFilter filter) throws Exception {
-        final String JAR_TYPE = "jar";
         
         final ArtifactsVisitor v = new ArtifactsVisitor(model) {
 
             @Override
             protected void visitArtifact(Feature f, RunMode rm, ArtifactGroup g, Artifact a) throws Exception {
-                if(JAR_TYPE.equals(a.getType())) {
+                if(isBundle(a)) {
                     installBundle(ctx, a, g.getStartLevel());
                 } else {
                     log.info("Ignoring Artifact, not a bundle: {}", a);
@@ -81,7 +85,7 @@
     }
     
     public void installBundle(BundleContext ctx, Artifact a, int startLevel) throws IOException, BundleException {
-        final String bundleUrl = "mvn:" + a.getGroupId() + "/" + a.getArtifactId() + "/" + a.getVersion();
+        final String bundleUrl = "mvn:" + a.getGroupId() + "/" + a.getArtifactId() + "/" + a.getVersion() + "/" + a.getType();
         final URL url = new URL(bundleUrl);
         final InputStream bundleStream = url.openStream();
         try {
diff --git a/src/test/resources/sling-launchpad.txt b/src/test/resources/sling-launchpad.txt
index c2cc7dd..e3f360c 100644
--- a/src/test/resources/sling-launchpad.txt
+++ b/src/test/resources/sling-launchpad.txt
@@ -20,8 +20,7 @@
 # Start the Sling Launchpad including whatever is required to
 # run the Sling integration tests.
 #
-# Currently those tests pass with 2 failures (WarSelectorServletTest)
-# out of 529 tests, if started with
+# Currently all those 529 tests pass if started with
 #  java  -Xmx1G  -XX:MaxPermSize=256m \
 #   -Dsling.run.modes=:standalone,jackrabbit -Dsling.home=CRANKSTART \
 #   -jar target/org.apache.sling.crankstart.launcher-1.9.9-SNAPSHOT.jar \