[wildfly-dev] Configurable implicit module imports
Stuart Douglas
stuart.w.douglas at gmail.com
Thu Sep 12 14:53:29 EDT 2013
You can, you can just use jboss-deployment-structure.xml to exclude any hard coded dependency, and then add the one you want via the same file.
Sent from my iPhone
On 12/09/2013, at 16:07, Bill Burke <bburke at redhat.com> wrote:
>
>
> On 9/12/2013 10:54 AM, David M. Lloyd wrote:
>> On 09/12/2013 09:45 AM, Bill Burke wrote:
>>>
>>>
>>> On 9/12/2013 10:10 AM, David M. Lloyd wrote:
>>>> On 09/12/2013 08:11 AM, Bill Burke wrote:
>>>>> The whole JSON-JAXRS support is a *bleepin* mess....
>>>>>
>>>>> * You have old users that want to use Jettison to generate JSON from JAXB.
>>>>> * You have new users that want to use Jackson to generate JSON from JAXB.
>>>>> * Jackson 1.x is a completely different Java package than Jackson 2.x.
>>>>> With that you have old users that want to use 1.x new users that want to
>>>>> use 2.x.
>>>>>
>>>>> Given that, it would be nice to have one place where they can set up the
>>>>> default implicit imports that come with Resteasy/JAX-RS subsystem.
>>>>> Someplace where they could configure this without it being hardcoded so
>>>>> we can support older apps that are migrating to Wildfly . Quite
>>>>> honestly I scratch my head trying to figure out why you guys decided it
>>>>> was a good idea to hardcode implicit module imports.
>>>>
>>>> Hey just be glad we don't have a flat class path :)
>>>>
>>>> Is there any reason why all three should not be imported by default? (I
>>>> am completely ignorant of JAX-RS so forgive me if that's a dumb question.)
>>>
>>> They conflict with one another as JAX-RS binds marshallers based on
>>> media type, target java class and target's annotations. Jettison and
>>> Jackson have different default JAXB->JSON mappings and there's no way to
>>> pick between the two without a special resteasy annotation. As for old
>>> vs. new Jackson, there's no way to determine which one to use if no
>>> Jackson annotations are being used. Its a cluster-bleep...
>>
>> So that leaves us two options that I can think of:
>>
>> 1. Add a switch to a per-deployment descriptor which indicates which (if
>> any) JSON strategy to use
>> 2. Add a switch to the jax-rs subsystem configuration which specifies
>> which to include by default
>>
>> We could also do both. Either way though the name should be specified
>> in english (i.e. "jackson1"/"jackson2"/"jettison"/"none").
>
> Argg....This is a very crappy approach. Why not just be able to
> configure the implicit imports of a subsystem. That makes much more
> sense than what you are suggesting.
>
>
>
> --
> Bill Burke
> JBoss, a division of Red Hat
> http://bill.burkecentral.com
> _______________________________________________
> wildfly-dev mailing list
> wildfly-dev at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/wildfly-dev
More information about the wildfly-dev
mailing list