我正在向webbrowser发送带有grails的xml文档,并希望显示部分内容。 但是我得到一个错误。 我调试了错误是因为像ü,öa.s.o这样的特殊字符 在Firefox中我没有任何问题,它的工作原理。 但是,Internet Explorer 8不会加载xml。 我看着响应,看到它无法正确地获得ü,öa.s.o。 它得到矩形而不是它......
这是xml文件:
<?xml version="1.0" encoding="ISO-8859-1" standalone="yes"?>
<IOX_Commands>
<IOX_Device>
<cmd num="4" name="Delete" value="msg" desc="Meldungen len"/>
</IOX_Device>
<IOX_Commands>
这是grails部分:
def get_Commands={
//aus xml datei lesen:conf/IOX_commands.xml
def file = "/conf/IOX_commands2.xml"
def xmlfile = new File(file).text
def xmlrecords = new XmlParser().parseText(xmlfile)
response.contentType = "text/xml";
render(xmlfile)
}
这里是javascript部分:
if (window.DOMParser)
{
parser=new DOMParser();
msrctl_steuerworte_var.ioxCommands=parser.parseFromString(response.responseText,"text/xml")
}
else // Internet Explorer
{
msrctl_steuerworte_var.ioxCommands=new ActiveXObject("Microsoft.XMLDOM");
msrctl_steuerworte_var.ioxCommands.async="false";
msrctl_steuerworte_var.ioxCommands.load(response.responseText);
}
//....
当我尝试在http://www.w3schools.com/XML/xml_validator.asp验证xml文件时出现错误。
有人可以说如何解决问题吗? 我已经尝试制作文件和编码UTF-8,但它没有帮助。 我认为它要么是IE配置,要么我必须向grails控制器添加一些内容。
答案 0 :(得分:0)
我已经尝试制作文件和编码UTF-8,但它没有帮助。
但它应该。只需确保将实际内容转换为UTF-8 - 只更改标题将无济于事。
答案 1 :(得分:0)
好吧我想我用以下方法解决了部分问题:
def get_Commands={ //aus xml datei lesen:
conf/IOX_commands.xml def file =
"/conf/IOX_commands2.xml" def xmlfile = new File(file).text
def xmlrecords = new XmlParser().parseText(xmlfile)
response.contentType = "text/xml";
render(text:xmlfile,contentType:"text/xml",encoding:"ISO-8859-1")}