[
https://issues.apache.org/jira/browse/CURATOR-5?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14284151#comment-14284151
]
Roshan Ail commented on CURATOR-5:
----------------------------------
Can the serializer be changed to not use jackson?
There are incompatibilities between different versions of jackson.
We are using jackson 1.6.2 for our apis.
When I took it out to use the one included with the service provider it broke
the serialization for a lot of our rest apis.
To get around it I pulled the source for the curator project and modified
service discovery to take out jackson. I added a Gson serializer instead, built
it and added that into the project.
It would be great if the ServiceInstanceBuilder just took a byte[] for the
payload or allowed a custom serializer. That would avoid problems with jackson.
> Make JsonInstanceSerializer#deserialize leverage ServiceInstanceBuilder
> -----------------------------------------------------------------------
>
> Key: CURATOR-5
> URL: https://issues.apache.org/jira/browse/CURATOR-5
> Project: Apache Curator
> Issue Type: Improvement
> Components: Recipes
> Affects Versions: 2.0.0-incubating
> Reporter: Jordan Zimmerman
> Priority: Minor
> Fix For: TBD
>
>
> From https://github.com/Netflix/curator/pull/255
> Proposing a way to change JsonInstanceSerializer leverage ServiceInstance's
> builder pattern directly.
> See discussion and request to generate a patch here:
> https://groups.google.com/d/topic/curator-users/Ai9RsVoUdgU/discussion
> ===
> It's possible a lot of the lower-level JSON deserialization code in
> JsonInstanceSerializer#deserialize() could be passed off to Jackson if
> ServiceInstanceBuilder's setters also followed the bean patterns (e.g.
> setId() versus id()). If ServiceInstanceBuilder followed this pattern,
> Jackson's standard bean deserialization could, I believe, deserialize
> directly into the ServiceInstanceBuilder and
> JsonInstanceSerializer#deserialize() could use that higher-level pattern to
> eliminate a fair chunk of code here.
> ===
> So, why don't we make ServiceInstanceBuilder follow the bean API? Can you
> update this pull to reflect that? I suggest leaving the old builder-style
> methods and marking them as deprecated. This way it won't break existing
> users.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)