小编Eri*_*man的帖子

Groovy XML和"xml:"命名空间

我正在编写修改xml文件的几个脚本.有问题的文件使用xml:lang元素.Groovy(XmlSlurper)似乎正在插入一个tag0命名空间,我不介意过,但它似乎打破了以后使用XmlUtil处理.

一个例子:

import groovy.xml.StreamingMarkupBuilder
import groovy.xml.XmlUtil

String source = """<?xml version='1.0' encoding='UTF-8'?>
<root>
    <one xml:lang="en">First</one>
    <one xml:lang="de">Second</one>
</root>
"""

def root = new XmlSlurper().parseText(source).declareNamespace(xml: "http://www.w3.org/XML/1998/namespace")
println root
String xml = new StreamingMarkupBuilder().bind{ 
    mkp.xmlDeclaration() 
    out << root 
}
println xml
println XmlUtil.serialize(xml)
Run Code Online (Sandbox Code Playgroud)

结果是

[Fatal Error] :2:44: The value of the attribute "prefix="xmlns",localpart="tag0",rawname="xmlns:tag0"" is invalid. Prefixed namespace bindings may not be empty.
Run Code Online (Sandbox Code Playgroud)

默认情况下,xml:namespace应该存在,我尝试使用.declareNamespace()添加它,但它似乎没有帮助.我觉得我错过了一些明显的东西,但Google无法告诉我它是什么.

groovy xml-serialization xml-parsing

7
推荐指数
1
解决办法
5277
查看次数

依赖项的Maven项目变量

我有一个加载applet的html文件.html需要按名称引用jar,并且由于maven根据artifactid,version等命名它,html需要随着项目的发展而动态更新.似乎资源过滤是可行的方法,但我无法弄清楚要插入的变量应该是什么样子.我想要一些类似于$ {project.dependencies.myartifactid.version}的内容,但这似乎不是一种选择,而且我有一个糟糕的运气谷歌搜索.

java resources maven-2 filtering

3
推荐指数
1
解决办法
1万
查看次数