@DefaultValue for a list
<p>In JAX-RS, I can define a query parameter to populate a list:</p>

<pre><code> @GET
 @Path("/foo")
 public String myService(
      @DefaultValue("default") @QueryParam("p") List&lt;String&gt; items
 ) {
     return items.toString();
 }
</code></pre>

<p>For a request like <code>.../foo?p=1&amp;p=2</code>, items is <code>["1","2"]</code>.</p>

<p><code>@DefaultValue</code> sets a default, but this always creates a collection with a single entry containing that default: for a request like <code>.../foo</code>, items is <code>["default"]</code>.</p>

<p>I would like a default which contains two entries. A fantasy approach that doesn't work is:</p>

<pre><code> @DefaultValue("foo","bar") List&lt;String&gt; items
</code></pre>

<p>The working code I have instead omits DefaultValue and instead has:</p>

<pre><code> if(items.isEmpty()) {
      items = asList("foo","bar");
 }
</code></pre>

<p>Is there a clean JAX-RS way to achieve the same thing?</p>