title: Unrecognized field , not marked as ignorable ,when parsing json string
body: <p>I am working on a Jersey rest services. trying to pass a <strong>generic object(in my case AppObject)</strong> as post request and the response from the server is also the <strong>generic object(in my case AppObject)</strong> i am expecting a string <code>{"license":"12345","list":[{"alternateId":"AlternateID","classificati‌​on":"1"}] }</code> but insted of <strong>list</strong> i am getting <strong>dimRequirement</strong> as shown below. So when parsing the json am getting the exception. Is there a way to get it as list itself with out changing the code. Or any alternative could anybody help me.</p>
  
  <p><strong>Json string receiving at the client</strong></p>
  
  <pre><code>{"license":"12345","dimRequirement":[{"alternateId":"AlternateID","classificati‌​on":"1"}] }
  </code></pre>
  
  <p><strong>my client</strong></p>
  
  <pre><code>AppObject&lt;DimRequirement&gt; appObject = new AppObject&lt;DimRequirement&gt;();
          appObject.setClientKey(4L);
          Client client = Client.create();
          WebResource webResource = client
                     .resource("http://localhost:8080/myproject/");
  
          JSONObject json = new JSONObject(appObject);
          ClientResponse response = webResource.path("rest").path("requirement/getreq").type("application/json").accept("application/json")
                  .post(ClientResponse.class,json.toString());
          String output = response.getEntity(String.class);
          System.out.println(output);
          appObject= new ObjectMapper().readValue(
                  output, AppObject.class);
  </code></pre>
  
  <p><strong>error</strong></p>
  
  <pre><code>   Unrecognized field "dimRequirement" (Class com.vxl.AppObject), not marked as ignorable
  at [Source: java.io.StringReader@7be6f06c; line: 1, column: 49] (through reference chain: com.vxl.appanalytix.AppObject["dimRequirement"])
      at org.codehaus.jackson.map.exc.UnrecognizedPropertyException.from(UnrecognizedPropertyException.java:53)
      at org.codehaus.jackson.map.deser.StdDeserializationContext.unknownFieldException(StdDeserializationContext.java:244)
      at org.codehaus.jackson.map.deser.StdDeserializer.reportUnknownProperty(StdDeserializer.java:589)
      at org.codehaus.jackson.map.deser.StdDeserializer.handleUnknownProperty(StdDeserializer.java:575)
      at org.codehaus.jackson.map.deser.BeanDeserializer.handleUnknownProperty(BeanDeserializer.java:684)
      at org.codehaus.jackson.map.deser.BeanDeserializer.deserializeFromObject(BeanDeserializer.java:515)
      at org.codehaus.jackson.map.deser.BeanDeserializer.deserialize(BeanDeserializer.java:351)
      at org.codehaus.jackson.map.ObjectMapper._readMapAndClose(ObjectMapper.java:2131)
      at org.codehaus.jackson.map.ObjectMapper.readValue(ObjectMapper.java:1402)
      at com.vxl.CheckJersy.main(CheckJersy.java:56)
  </code></pre>
  
  <p><strong>Generic Class</strong></p>
  
  <pre><code>@XmlRootElement
  @XmlSeeAlso({DimRequirement.class })
  public class AppObject&lt;T&gt; implements Serializable {
  
      private List&lt;T&gt; list;
      private Long clientKey;
  
      public AppObject() {
          list = new ArrayList&lt;T&gt;();
  
      }
  
      public AppObject(List&lt;T&gt; list) {
          this.list = list;
      }
  
      @XmlAnyElement(lax = true)
      public List&lt;T&gt; getList() {
          return list;
      }
  
      public void setList(List&lt;T&gt; list) {
          this.list = list;
      }
  
      public Long getClientKey() {
      return clientKey;
  }
  
  public void setClientKey(Long clientKey) {
      this.clientKey = clientKey;
  }
  
  }
  </code></pre>
  
  <p><strong>service</strong></p>
  
  <pre><code>@Path("/requirement")
  public class DimRequirementManagerImpl {
  @POST
      @Consumes({ MediaType.APPLICATION_XML, MediaType.APPLICATION_JSON })
      @Produces({ MediaType.APPLICATION_XML, MediaType.APPLICATION_JSON })
      @Path("/getreq")
      @Override
      public AppObject getAllByClientNIsCurrent(
              AppObject&lt;DimRequirement&gt; appObj) {
          List&lt;DimRequirement&gt; dimreqlist = dimRequirementDao
                  .getAllByClientNIsCurrent(appObj.getClientKey());
          AppObject appObject = new AppObject();
          appObject.setList(dimreqlist);
          return appObject;
      }}
  </code></pre>
  
  <p><strong>DimRequirement which is setting to AppObject</strong></p>
  
  <pre><code>@XmlRootElement
  public class DimRequirement extends BaseObject implements Serializable {
  private Long requirementKey;
  private String description;
  private String priority;
  @Id
      @GeneratedValue(strategy=GenerationType.AUTO)
      @Column(name="requirementKey")
      public Long getRequirementKey() {
          return this.requirementKey;
      }    
      public void setRequirementKey(Long requirementKey) {
          this.requirementKey = requirementKey;
      }
   @Column(name="Description") 
      public String getDescription() {
          return this.description;
      }    
      public void setDescription(String description) {
          this.description = description;
      }
   @Column(name="Priority") 
      public String getPriority() {
          return this.priority;
      }    
      public void setPriority(String priority) {
          this.priority = priority;
      }
  }
  </code></pre>