2011-06-25 56 views
0

我在使用ColdFusion解析XML文件时遇到了一些麻烦。 我已经双倍,三重检查了BOM的文件,其中不存在存在。ColdFusion“序言中不允许的内容”XML与NO Bom

扭曲,代码只发生在我使用<cfinvoke>。 因此,在index.cfm

<cfinvoke component='controller.me' method='ADQuery'> 
</cfinvoke> 

控制器/ Me.cfc

<cffunction name='ADQuery' output='true'> 
<cfset netinfoxml = XMLParse(ExpandPath('conf/netinfo.xml'))> 

然后一切都错了。 但是,如果我直接从index.cfm中完成并转储它。那很好。

任何想法?

对不起,这可能是一些令人难以置信的小事

+1

(编辑)是否'ExpandPath( '的conf/netinfo.xml')'评估里面index.cfm和控制器/ Me.cfc相同的路径? – Leigh

+0

即如果文件路径无效,XMLParse可能最终会认为xml实际上是字符串“c:/path/to/FileThatDoesNotExist.xml”。因此,*内容是不允许在序言*错误。 – Leigh

+0

@Leigh Yeah afaik。在index.cfm中,该行是'ExpandPath('controller/conf/network.xml')',而jn me.cfc是'ExpandPath('conf/network.xml')'。我明白你的意思。 (编辑)我也已经将这个xml放在与'Me.cfc'相同的文件夹中。 nope x-(。我希望我没有在这里吃过甜甜圈... –

回答

0

也许这将帮助,似乎是在深入说明和解决方案!]你的问题很....

http://www.bennadel.com/blog/1206-Content-Is-Not-Allowed-In-Prolog-ColdFusion-XML-And-The-Byte-Order-Mark-BOM-.htm

如果不,你可以发布的XML?

-Sean

+0

嗨Sean。谢谢你的提高。我读过这篇文章的次数是疯了,但我从来没有想过实际上'cfhttp'这个xml文件,更像是,我忘了如何(woops ...)链接到xml文件,即使它是静态的。回到我原来的功能。我删除了ExpandPath部分,它现在可以正常工作(除了LDAP认证,但那是因为我还没有写过),谢谢你的帮助! 所以我做到了。 ,解析。它的工作。 –

+0

好消息,然后......很高兴你解决了它。 –

相关问题