【问题标题】:Spring Jaxb2Marshaller not call CharacterEscapeHandlerSpring Jaxb2Marshaller 不调用 CharacterEscapeHandler
【发布时间】:2017-03-23 14:35:22
【问题描述】:

我尽了最大的努力去弄清楚,但失败了。 Spring Jaxb2Marshaller 似乎忽略了 CharacterEscapeHandler ! :-(

这是我的代码:

<bean id="aisWsMarshaller" class="org.springframework.oxm.jaxb.Jaxb2Marshaller">
    <property name="contextPath" value="com.capgemini.manulife.integration.generated.ais.ws.oneshot"/>
    <property name="marshallerProperties">
        <map>
            <entry key="com.sun.xml.bind.characterEscapeHandler" value-ref="noEscapeCharacterHandler">
            </entry>
        </map>
    </property>
</bean>

<bean id="noEscapeCharacterHandler" class="com.capgemini.manulife.integration.NoEscapeCharacterHandler">

</bean>


public class NoEscapeCharacterHandler implements CharacterEscapeHandler {

@Override
public void escape(char[] ch, int start, int length, boolean isAttVal, Writer out) throws IOException {
     out.write(ch, start, length);
    System.out.println("AAAA");
}

} 真的很累:-(

【问题讨论】:

  • 我想我会尝试 WebServiceMessageCallback 来取消请求,但不幸的是,MarshallingRequestMessageCallback 是私有的 final :-(
  • WebServiceMessageCallback 是不可能的,因为它只能添加标题、元素....而不是 unescape。

标签: spring-ws spring-oxm


【解决方案1】:

这是 Spring 集成 Jaxb2Marshaller 错误!

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-02-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-11-06
    • 1970-01-01
    相关资源
    最近更新 更多