killbill-uncached

Details

diff --git a/jaxrs/src/main/java/org/killbill/billing/jaxrs/resources/JaxRsResourceBase.java b/jaxrs/src/main/java/org/killbill/billing/jaxrs/resources/JaxRsResourceBase.java
index b46b836..2545701 100644
--- a/jaxrs/src/main/java/org/killbill/billing/jaxrs/resources/JaxRsResourceBase.java
+++ b/jaxrs/src/main/java/org/killbill/billing/jaxrs/resources/JaxRsResourceBase.java
@@ -367,9 +367,14 @@ public abstract class JaxRsResourceBase implements JaxrsResource {
 
         for (final String pluginProperty : pluginProperties) {
             final List<String> property = ImmutableList.<String>copyOf(pluginProperty.split("="));
+            // Skip entries for which there is no value
+            if (property.size() == 1) {
+                continue;
+            }
+
             final String key = property.get(0);
             // Should we URL decode the value?
-            String value = property.size() == 1 ? null : Joiner.on("=").join(property.subList(1, property.size()));
+            String value = Joiner.on("=").join(property.subList(1, property.size()));
             if (pluginProperty.endsWith("=")) {
                 value += "=";
             }
diff --git a/jaxrs/src/test/java/org/killbill/billing/jaxrs/resources/TestJaxRsResourceBase.java b/jaxrs/src/test/java/org/killbill/billing/jaxrs/resources/TestJaxRsResourceBase.java
index 01885d8..ecf1d44 100644
--- a/jaxrs/src/test/java/org/killbill/billing/jaxrs/resources/TestJaxRsResourceBase.java
+++ b/jaxrs/src/test/java/org/killbill/billing/jaxrs/resources/TestJaxRsResourceBase.java
@@ -51,7 +51,17 @@ public class TestJaxRsResourceBase extends JaxrsTestSuiteNoDB {
         Assert.assertEquals(pluginProperties.get(4).getValue(), "2020");
     }
 
-    private static final class JaxRsResourceBaseTest extends JaxRsResourceBase {
+    @Test(groups = "fast")
+    public void testExtractPluginPropertiesWithNullProperty() throws Exception {
+        final List<String> pluginPropertiesString = ImmutableList.<String>of("foo=",
+                                                                             "bar=ttt");
+        final List<PluginProperty> pluginProperties = ImmutableList.<PluginProperty>copyOf(base.extractPluginProperties(pluginPropertiesString));
+        Assert.assertEquals(pluginProperties.size(), 1);
+        Assert.assertEquals(pluginProperties.get(0).getKey(), "bar");
+        Assert.assertEquals(pluginProperties.get(0).getValue(), "ttt");
+    }
+
+        private static final class JaxRsResourceBaseTest extends JaxRsResourceBase {
 
         public JaxRsResourceBaseTest() {
             super(null, null, null, null, null, null, null, null);