{"action":"created","issue":{"url":"https://api.github.com/repos/FasterXML/jackson-databind/issues/729","labels_url":"https://api.github.com/repos/FasterXML/jackson-databind/issues/729/labels{/name}","comments_url":"https://api.github.com/repos/FasterXML/jackson-databind/issues/729/comments","events_url":"https://api.github.com/repos/FasterXML/jackson-databind/issues/729/events","html_url":"https://github.com/FasterXML/jackson-databind/issues/729","id":63434860,"number":729,"title":"Duplicate property produced","user":{"login":"simopete","id":1461419,"avatar_url":"https://avatars.githubusercontent.com/u/1461419?v=3","gravatar_id":"","url":"https://api.github.com/users/simopete","html_url":"https://github.com/simopete","followers_url":"https://api.github.com/users/simopete/followers","following_url":"https://api.github.com/users/simopete/following{/other_user}","gists_url":"https://api.github.com/users/simopete/gists{/gist_id}","starred_url":"https://api.github.com/users/simopete/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/simopete/subscriptions","organizations_url":"https://api.github.com/users/simopete/orgs","repos_url":"https://api.github.com/users/simopete/repos","events_url":"https://api.github.com/users/simopete/events{/privacy}","received_events_url":"https://api.github.com/users/simopete/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":1,"created_at":"2015-03-21T17:50:04Z","updated_at":"2015-03-23T02:40:22Z","closed_at":null,"body":"Hi there, \r\nI made a simple class with a `@JsonProperty` annotated private field named eSenseValues. The field has getter method named getESenseValues(). \r\nWhen I have serialized this class the json output had this field/property twice.\r\nI think, it's a bug.\r\n\r\nHere is my class and the json output:\r\n```java\r\nimport com.fasterxml.jackson.annotation.JsonProperty;\r\nimport java.io.Serializable;\r\n\r\npublic class WaveValues implements Serializable {\r\n\r\n    @JsonProperty(value = \"ESenseValues\")\r\n    private ESenseValues eSenseValues;\r\n\r\n    public WaveValues() {\r\n    }\r\n\r\n    public ESenseValues getESenseValues() {\r\n        return eSenseValues;\r\n    }\r\n}\r\n```\r\n\r\n```json\r\n{\r\n  \"WaveValues\" : {\r\n    \"esenseValues\" : {\r\n      \"attention\" : 0,\r\n      \"meditation\" : 0\r\n    },\r\n    \"ESenseValues\" : {\r\n      \"attention\" : 0,\r\n      \"meditation\" : 0\r\n    }\r\n  }\r\n}\r\n```"},"comment":{"url":"https://api.github.com/repos/FasterXML/jackson-databind/issues/comments/84761480","html_url":"https://github.com/FasterXML/jackson-databind/issues/729#issuecomment-84761480","issue_url":"https://api.github.com/repos/FasterXML/jackson-databind/issues/729","id":84761480,"user":{"login":"cowtowncoder","id":55065,"avatar_url":"https://avatars.githubusercontent.com/u/55065?v=3","gravatar_id":"","url":"https://api.github.com/users/cowtowncoder","html_url":"https://github.com/cowtowncoder","followers_url":"https://api.github.com/users/cowtowncoder/followers","following_url":"https://api.github.com/users/cowtowncoder/following{/other_user}","gists_url":"https://api.github.com/users/cowtowncoder/gists{/gist_id}","starred_url":"https://api.github.com/users/cowtowncoder/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/cowtowncoder/subscriptions","organizations_url":"https://api.github.com/users/cowtowncoder/orgs","repos_url":"https://api.github.com/users/cowtowncoder/repos","events_url":"https://api.github.com/users/cowtowncoder/events{/privacy}","received_events_url":"https://api.github.com/users/cowtowncoder/received_events","type":"User","site_admin":false},"created_at":"2015-03-23T02:40:22Z","updated_at":"2015-03-23T02:40:22Z","body":"Ok. This is caused by Jackson's name discovery, which by default considers `getESenseValues()` to mean existence of property `esenseValues`. This is different from Java Bean introspection which would instead infer `ESenseValues`. With Java Bean name handling, you would only get a single property as you expect.\r\n\r\nJackson 2.5 did add `MapperFeature.USE_STD_BEAN_NAMING`, enabling of which gets handling you want. It is disabled by default for backwards-compatibility reasons.\r\n\r\nAnother alternative (and only choice if you are using an earlier version) would be to annotate getter with `@JsonProperty` as well; if so, field and getter would be properly coupled.\r\n\r\n"}}