Metro堆栈java web服务编写自己的序列化程序/反序列化程序

Metro堆栈java web服务编写自己的序列化程序/反序列化程序,java,web-services,java-metro-framework,Java,Web Services,Java Metro Framework,从web服务返回数据时,我遇到了一些问题 我正在使用Metro stack。 问题: 问题是我的数据包含一些控制字符。我不想加密我的数据,因为这也会涉及客户端代码的更改 更好的方法是删除控制字符,但逐字符扫描和删除/替换所有字符会对性能产生一些影响 可能的解决方案: 我要做的是在metro将SOAP消息发送到客户端之前拦截它并检查控制字符。然后在返回之前替换XML的所有控制字符 这里有人知道我如何在返回前截取响应吗?或 如何编写自己的序列化程序/反序列化程序,在其中替换控制字符 谢谢。我想你可以

从web服务返回数据时,我遇到了一些问题
我正在使用Metro stack。

问题:
问题是我的数据包含一些控制字符。我不想加密我的数据,因为这也会涉及客户端代码的更改
更好的方法是删除控制字符,但逐字符扫描和删除/替换所有字符会对性能产生一些影响

可能的解决方案:
我要做的是在metro将SOAP消息发送到客户端之前拦截它并检查控制字符。然后在返回之前替换XML的所有控制字符

这里有人知道我如何在返回前截取响应吗?或
如何编写自己的序列化程序/反序列化程序,在其中替换控制字符


谢谢。

我想你可以用这个界面来做这件事。将调用提供者的实现,而不是实际的web服务。然后解析XML并将调用转发给服务实现


我觉得使用它有点麻烦,但如果它能工作,我发现XMLAdapter在我的例子中非常有用。 添加信息,以防任何好友发现它有用
参考:

XMLAdapter包含抽象方法封送和解组。所以我在封送/解组方法中使用了适当的编码器