我有这两个文件,在这个阶段我想直接输出到浏览器。当我回复第一个或第二个文档时,一切都很好,但是,当我尝试输出它们时,我收到了这个错误:
XML解析错误:文档元素之后的垃圾,在第一个XML文档结束(...</response></epp>
)和第二个元素开始的位置(<?xml version="1...
)。
如何将它们直接输出到浏览器?您可以看到源输出here。
答案 0 :(得分:2)
你不能直接输出两个XML
,因为XML format只需要一个根元素,在你的情况下你会回显两个根元素。除此之外,更重要的是,您输出<?xml version="1...
部分的两倍,这不允许多次,并且必须出现在文档的开头。
如果要在同一请求中返回两者,您可以做的是生成第三个XML,通过将它们作为子项添加到第3个XML的根来聚合这两个根。例如,如果您的xml看起来像
<?xml version="1.0"?>
<root1>
.....
</root1>
和
<?xml version="1.0"?>
<root2>
.....
</root2>
然后agregate xml看起来像这样:
<?xml version="1.0"?>
<root3>
<root1>
.....
</root1>
<root2>
.....
</root2>
</root3>
您可以使用xml parser/writer来实现此目的,或者您可以通过使用字符串操作来使用强力来组合两个xml根。