日期:2014-05-18  浏览次数:20636 次

如何解决XML和Web Service调用的&的问题
各位好,

我在调用一个Web Serivce。
在SOAPUIl的request里要对&等符号转换为&才是有效的XML格式。
请问有没有那个java类或者包可以实现该转换?
或者能否列出所有可能需要转换的情况。
谢谢

------解决方案--------------------
方法1 xml用CData把特殊符号部分包裹起来
方法2 找个escapeHtml或类似的方法做转换   这个在apache commons里面可以找到
------解决方案--------------------
引用:
Quote: 引用:

<node>
<![CDATA[
a&b
]]>
</node>

总共有哪些特殊字符呢?

有很多特殊字符呢
------解决方案--------------------
自己写个通用方法:

public static String encode(String text) {
        char c;
        StringBuffer n = new StringBuffer();
        for (int i = 0; i < text.length(); i++) {
            c = text.charAt(i);
            switch (c) {
                case '&':
                    {
                        n.append("&amp;");
                        break;
                    }
                case '<':
                    {
                        n.append("&lt;");
                        break;
                    }
                case '>':
                    {