public static String getRiceXML(Properties properties) { StringBuilder sb = new StringBuilder(); sb.append("<config>\n"); List<String> keys = getSortedKeys(properties); for (String key : keys) { String value = properties.getProperty(key); // Convert to CDATA if the value contains characters that would blow up an XML parser if (StringUtils.contains(value, "<") || StringUtils.contains(value, "&")) { value = Str.cdata(value); } sb.append(" <param name=" + Str.quote(key) + ">"); sb.append(value); sb.append("</param>\n"); } sb.append("</config>\n"); return sb.toString(); }