2013-10-25 82 views
0

我有一個使用fasterxml jackson進行序列化的應用程序。使用fasterxml.jackson序列化器增強apache CXF中的wadl

我想提高WADL展現表示標籤內的模型領域,如

<representation mediaType="application/json"> 
    <doc>...</doc> 
    <param name="myField" type="xs:string"/> 
    ... 
</representation> 

代替的香草說明:

<representation mediaType="application/json"> 
    <doc>...</doc> 
</representation> 

我想增加對WadlGeneration豆是我所需要做的...

<bean id="jacksonProvider" class="com.fasterxml.jackson.jaxrs.json.JacksonJsonProvider"> 
    <constructor-arg><ref bean="customObjectMapper"/></constructor-arg> 
</bean> 

<bean id="wadlGenerator" class="org.apache.cxf.jaxrs.model.wadl.WadlGenerator"> 
    <property name="linkJsonToXmlSchema" value="true" /> 
    <property name="supportCollections" value="true"/> 
    <property name="ignoreMessageWriters" value="false"/> 
    <property name="useJaxbContextForQnames" value="false"/> 
</bean> 

<jaxrs:server id="restContainer" address="/"> 
    <jaxrs:serviceBeans> 
     ... 
    </jaxrs:serviceBeans> 
    <jaxrs:extensionMappings> 
     <entry key="xml" value="application/xml"/> 
     <entry key="json" value="application/json"/> 
    </jaxrs:extensionMappings> 
    <jaxrs:providers> 
     <ref bean="jacksonProvider" /> 
     <ref bean="wadlGenerator" /> 
    </jaxrs:providers> 

</jaxrs:server> 

..但顯然有mor e做。我已經在jaxb和codehaus jackson中看到了一些例子,但是有關如何使用這個快速xml傑克遜工作的想法?

+0

您是否評價過JAXRS:提供者默認爲傑克遜提供者cxf提供拋棄 –

+0

是的,使用jackson作爲提供者,如上面的xml代碼片段所示。除非我錯過了一些東西。我正在使用maven,並且最初沒有將引用作爲依賴關係引用。雖然,我注意到wadlGenerator的一些屬性確實需要拋棄依賴。 – Tim

回答