title: Java - Jackson array mapping
body: <p>Given the following JSON</p>
  
  <pre><code>{
      "obj" : {
          "f1" : "blah",
          "f2" : "blah",
          "f3" : [{"z1" : "blah", "arr" : [{"m1" : "blah", "m2" : "blah"}]}]
      }
  }
  </code></pre>
  
  <p>I have tired using <code>@JsonProperty</code> and <code>@JsonCreator</code> in order to map <code>"m1"</code> and <code>"m2"</code> values, but with no luck. </p>
  
  <p>With <code>@JsonCreator public Card(Map&lt;String,Object&gt; props) { }</code> i get the following error:</p>
  
  <pre><code>Argument #0 of constructor [constructor for MyObj$Obj$Card, annotations: {interface com.fasterxml.jackson.annotation.JsonCreator=@com.fasterxml.jackson.annotation.JsonCreator()}] has no property name annotation; must have name when multiple-paramater constructor annotated as Creator
  </code></pre>
  
  <p>With <code>@JsonCreator public Card(@JsonProperty("m1") String m1, @JsonProperty("m2") String m2,){}</code> I get the following error:</p>
  
  <pre><code>Argument #0 of constructor [constructor for MyObj$Obj$Card, annotations: {interface com.fasterxml.jackson.annotation.JsonCreator=@com.fasterxml.jackson.annotation.JsonCreator()}] has no property name annotation; must have name when multiple-paramater constructor annotated as Creator
  </code></pre>
  
  <p>How can the fields of <code>"arr"</code> be mapped using Jackson annotation?
  Thanks.</p>
  
  <p><strong>UPDATE</strong></p>
  
  <p>I also tried to include <code>@JsonProperty("arr") private Card[] cards;</code> on <code>f3</code> class, but it did not help either.</p>
  
  <p><strong>UPDATE 2</strong></p>
  
  <p>I have changed the array type in the update above, and now I do not get the error but it does not behaves as I wish (I would like to handle the mapping).</p>
  
  <p>Is there any chance one could explain the error in a way that I could correct them.</p>