title: org.codehaus.jackson.map.JsonMappingException: Conflicting setter definitions for property "matchColumn": com.sun.rowset.JdbcRowSetImpl
body: <p>I am using Jackson to deserialize an object of class com.sun.rowset.JdbcRowSetImpl:</p>
  
  <pre><code>public class Main {
  
  static String jsonInput = "{\"@class\":\"com.sun.rowset.JdbcRowSetImpl\", \"dataSourceName\":\"ldap://localhost:10389/ldap://localhost:10389/cn=apartment16,dc=example,dc=com\", \"autoCommit\":true}";
  
  
        public static void main(String[] args) throws Exception{
            ObjectMapper mapper = new ObjectMapper();
            mapper.enableDefaultTyping();
            Object o = mapper.readValue(jsonInput, JdbcRowSetImpl.class);
            System.out.println(o.getClass());
        }
    }
  </code></pre>
  
  <p>But I'm getting the following exception:</p>
  
  <pre><code>Exception in thread "main" org.codehaus.jackson.map.JsonMappingException: Conflicting setter definitions for property "matchColumn": com.sun.rowset.JdbcRowSetImpl#setMatchColumn(1 params) vs com.sun.rowset.JdbcRowSetImpl#setMatchColumn(1 params)
  at org.codehaus.jackson.map.deser.StdDeserializerProvider._createAndCache2(StdDeserializerProvider.java:346)
  at org.codehaus.jackson.map.deser.StdDeserializerProvider._createAndCacheValueDeserializer(StdDeserializerProvider.java:321)
  at org.codehaus.jackson.map.deser.StdDeserializerProvider.findValueDeserializer(StdDeserializerProvider.java:167)
  at org.codehaus.jackson.map.deser.StdDeserializerProvider.findTypedValueDeserializer(StdDeserializerProvider.java:188)
  at org.codehaus.jackson.map.ObjectMapper._findRootDeserializer(ObjectMapper.java:2820)
  at org.codehaus.jackson.map.ObjectMapper._readMapAndClose(ObjectMapper.java:2719)
  at org.codehaus.jackson.map.ObjectMapper.readValue(ObjectMapper.java:1854)
  at test.Main.main(Main.java:25)
  Caused by: java.lang.IllegalArgumentException: Conflicting setter definitions for property "matchColumn": com.sun.rowset.JdbcRowSetImpl#setMatchColumn(1 params) vs com.sun.rowset.JdbcRowSetImpl#setMatchColumn(1 params)
  at org.codehaus.jackson.map.introspect.POJOPropertyBuilder.getSetter(POJOPropertyBuilder.java:198)
  at org.codehaus.jackson.map.deser.BeanDeserializerFactory.addBeanProps(BeanDeserializerFactory.java:1056)
  at org.codehaus.jackson.map.deser.BeanDeserializerFactory.buildBeanDeserializer(BeanDeserializerFactory.java:654)
  at org.codehaus.jackson.map.deser.BeanDeserializerFactory.createBeanDeserializer(BeanDeserializerFactory.java:583)
  at org.codehaus.jackson.map.deser.StdDeserializerProvider._createDeserializer(StdDeserializerProvider.java:432)
  at org.codehaus.jackson.map.deser.StdDeserializerProvider._createAndCache2(StdDeserializerProvider.java:341)
  ... 7 more
  </code></pre>
  
  <p>I guess it's because Jackson doesn't know which setter it should use for the field "matchColumn" (there are 4 of them). But I don't know why it's even trying to set that field because I'm not declaring any "matchColumn" property in the JSON...
  Any idea?</p>