gpt4 book ai didi

java - Child 和 Sub Child 中的相同命名空间 (JDOM2)

转载 作者:行者123 更新时间:2023-12-01 04:48:00 25 4
gpt4 key购买 nike

我需要在子项及其子项中设置命名空间,但是,当我赋予相同的命名空间时,子子项没有命名空间。

我需要这样的东西:

<?xml version="1.0" encoding="UTF-8"?>
<nfeProc xmlns="http://www.portalfiscal.inf.br/nfe" versao="2.00">
<NFe xmlns="http://www.portalfiscal.inf.br/nfe">
<infNFe versao="2.00" Id="NFe35120810609770000190550010000011151000011155">
...

但是我的代码只生成这个:

<?xml version="1.0" encoding="UTF-8"?>
<nfeProc xmlns="http://www.portalfiscal.inf.br/nfe" versao="2.00">
<NFe>
<infNFe versao="2.00" Id="NFe35120810609770000190550010000011151000011155">
...

生成这部分 XML 的代码是:

Document doc = new Document();
Namespace portal = Namespace.getNamespace( "http://www.portalfiscal.inf.br/nfe" );

Element tagNfeProc = new Element( "nfeProc", portal );
tagNfeProc.setAttribute( "versao", "2.00" );

Element tagNFe = new Element( "NFe", portal );

...

tagNfeProc.getChildren().add( tagNFe );

doc.setRootElement( tagNfeProc );

最佳答案

如果你真的想添加它,你必须手动完成,使用我之前提到的“setAttribute”方法。

否则:
“NFe”标签不再需要 namespace 属性,因为该 namespace 已经在更高级别(示例中的顶级)上声明,并且它将在您声明它的整个 block 中使用(继承)。

经过一番搜索,简单描述一下 XML namespaces :)

关于java - Child 和 Sub Child 中的相同命名空间 (JDOM2),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15502207/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com