首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >schemagen.exe生成tns前缀

schemagen.exe生成tns前缀
EN

Stack Overflow用户
提问于 2009-09-28 14:25:10
回答 3查看 872关注 0票数 1

工具schemagen.exe从类生成xsd定义,例如,结果为

代码语言:javascript
复制
<xs:schema elementFormDefault="qualified" version="1.0" targetNamespace="aa/bb" xmlns:a="aa/bbb" xmlns:tns="aa/bb" xmlns:xs="http://www.w3.org/2001/XMLSchema">

当我在包级别放入package-info.class时:

代码语言:javascript
复制
@XmlSchema(namespace = "aa/bb", 
           elementFormDefault = XmlNsForm.QUALIFIED,
           xmlns = {@XmlNs(prefix="a", namespaceURI="aa/bb"),
                    @XmlNs(prefix="xs",namespaceURI="http://www.w3.org/2001/XMLSchema")})

package aa.bb;
import javax.xml.bind.annotation.*;

关键是现在有两个前缀:我更喜欢的短前缀:a和schemagen.exe自动生成的tns前缀。这很糟糕,因为所有生成的类型都使用tns前缀,如果我自己的前缀在没有tns前缀的生成中使用,我会很高兴。我该怎么做?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2009-09-28 14:32:15

这技术含量低且容易出错,但为什么不在文本编辑器中打开XSD文档,并使用一些精心选择的全局搜索和替换命令呢?

票数 1
EN

Stack Overflow用户

发布于 2009-09-28 14:33:49

学着喜欢tns?毕竟,使用它来表示XML模式中的目标名称空间是一种惯例。

票数 1
EN

Stack Overflow用户

发布于 2009-09-29 07:53:58

在运行时,您可以使用JAXB NamespacePrefixMapper为您选择的前缀更改生成的前缀。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1487330

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档