我正在使用Kotlin 1.3,Java 8和Spring 4.0+。
我只是想将名称空间仅附加到ERROR Error: Could not find module 'nativescript-socket-tcp"
,而不是其子级。
但是,当我使用<HELLO>
的@XmlRootElement定义名称空间时,<HELLO>
也会获得默认名称空间,即使我没有定义任何名称空间。
<HI>
然后
@XmlRootElement(name = "HELLO", namespace = "http://www.hello.net")
public class Hello {
@XmlElement(name = "HI")
protected Hi hi;
是否可以从 <HELLO xmlns="http://www.hello.net">
<HI xmlns=""></HI>
</HELLO>
中删除xmlns=""
(默认名称空间)?
仅供参考(回答完后):
我正在使用Kotlin 1.3进行开发。我需要使用生成的Java类 使用xjc(JAXB)从XML中提取数据,因为程序(API)规范由XML处理 来自将与API通信的外部客户端。
使用不带-npa选项的xjc时,有一个 package-info.java 在仅使用两个loc生成的所有类上应用相同的名称空间,然后将这些类导出到我的项目中。 (ref:https://docs.oracle.com/javase/8/docs/technotes/tools/unix/xjc.html)
我认为,当我在XmlMapper(使用JacksonXmlModule)中注册JaxbAnnotationModule()时,package-info.java 中的 @XmlSchema(namespace =“ namespace1”)可以很好地工作。但是,似乎Jackson XmlMapper不完全支持xml注释。
您可以通过以下答案或添加XmlMarshaller(将xmlns添加到XML)来解决此问题。
jackson-dataformat-xml不支持软件包级别的名称空间:https://github.com/FasterXML/jackson-dataformat-xml/issues/18
答案 0 :(得分:0)
如果要使其继承XML输出中的http://www.hello.net
,则需要为其指定该名称空间。