我需要在Document Element上添加属性xml:lang =“eng”。 我正在使用此代码:
element.setAttributeNS("http://www.w3.org/XML/1998/namespace", "xml:lang", "eng");
执行上述方法时,我遇到以下异常:
org.w3c.dom.DOMException:NAMESPACE_ERR:尝试是 以不正确的方式创建或更改对象 关于命名空间。
我不确定我做错了什么,是否有另一种设置此属性的方法?
堆栈跟踪
org.w3c.dom.DOMException: NAMESPACE_ERR: An attempt is made to create or change an object in a way which is incorrect with regard to namespaces.
org.apache.xerces.dom.CoreDocumentImpl.checkDOMNSErr(Unknown Source)
org.apache.xerces.dom.AttrNSImpl.setName(Unknown Source)
org.apache.xerces.dom.AttrNSImpl.<init>(Unknown Source)
org.apache.xerces.dom.CoreDocumentImpl.createAttributeNS(Unknown Source)
org.apache.xerces.dom.ElementImpl.setAttributeNS(Unknown Source)
答案 0 :(得分:0)
将其更改为&#34; xml:lang =&#39; zh&#39;&#34; ..不会在我的调试器中抛出错误。
答案 1 :(得分:0)
事实证明解决方案非常简单,我所要做的就是调用element.setAttribute()而不设置命名空间。发生这种情况是因为XML是默认命名空间,无法重新定义/覆盖。