[Aerogear-users] Jackson Dependency Conflict with Aerogear 1.1.0
I have been successfully using Aerogear 1.0.0 in my product for a while now. I am making some additions (primarily using contentAvailable to prompt apps I haven't heard from lately to check in once in a while) and thought it would be a opportunity to upgrade to 1.1.0. I upgraded the Aerogear server as well as my Android and iOS apps without any problems. However, my jboss web server, used by administrators to initiate messages, is proving problematic.
After upgrading the unifiedpush-java-client to 1.1.0.Final on my jboss web server, I cannot get it to play nicely with the resteasy-jackson2-provider implementation (3.0.16.Final) I use for custom RESTful communication between my apps and the web server.
It appears that including the unifiedpush-java-client 1.1.0 causes my RESTful services to use the codehaus jackson implementation in the unifiedpush-java-client. Therefore, all of my fasterxml jackson annotations (@JsonIgnore and @JsonFormat) are ignored causing my RESTful services to fail.
If I exclude both jackson-jaxrs and jackson-databind from the unifiedpush-java-client in my pom.xml then everything compiles and my RESTful services work. However, when attempting to send a push notification from the server I get a "java.lang.NoClassDefFoundError: org/codehaus/jackson/map/ObjectMapper" from UnifiedPushMessage for obvious reasons.
I tried going back to the 1.0.0 version of the unifiedpush-java-client, but that just results in status code 400 responses from the aerogear 1.1.0 server.
Do you have any suggestions for resolving this conflict, or should I just roll everything back to the 1.0.0 version until further notice?