我有一个基于浏览器的InfoPath 2010表单。我在一个环境中打开表单时出错。它至少在其他三个环境中工作。错误是:
表单模板无法加载...类型:XmlException,异常消息:出于安全原因,此XML文档中禁止使用DTD。要启用DTD处理,请将XmlReaderSettings上的ProhibitDtd属性设置为false,并将设置传递给XmlReader.Create方法。
我已经在Web上发布了这个问题,但答案含糊不清,并且以InfoPath之外的产品为中心。我们还有其他形式在此表单失败的环境中工作,因此它在此特定环境中与此特定表单相关。
答案 0 :(得分:1)
问题解决了。该错误消息具有误导性,但事实证明其中一个数据连接的URL指向错误的SharePoint场。它应该指向本地表单库。跨平台呼叫往往不起作用。
答案 1 :(得分:0)
基本上确保连接文件中的域名与您发布表单的域名相匹配。
例如,如果您的InfoPath表单位于:
https://extranet.MySiteName.com/The-Rest-Of-Your-Domain-Name
然后确保所有域(在此示例中为extranet.MySiteName.com/
)
在您的数据连接文件中匹配。连接文件行可能类似于:
<udc:Query>
https://extranet.MySiteName.com/_vti_bin/My-WCF-Services/My-Data-ServiceName.svc/
</udc:Query>