- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
假设我有两个项目,A 和 B。Java 项目,以防这很重要。
项目 A 包含一堆表示核心类型和元素的 XSD 文件。它们都放在一个名为“定义”的包中。这被内置到 project-a.jar
中。
项目 B 代表一个扩展项目,它可以定义自己的类型和元素。我创建了一个新模式并将其放在“definition.extension”包中。这被内置到 project-b.jar
中。
现在,对于项目 B 中的 XSD,我究竟应该将什么作为 include
的 schemaLocation
?
schemaLocation="../core-types.xsd"
不太奏效(我知道,它需要一个 URI),但是正确或标准的方法到底是什么? Google 发现有更多人问我这个问题,关于什么是真正正确的处理方法的明确、标准的方法。
我不可能在运行时以编程方式调整 schemaLocation
...或者我需要一个构建步骤/脚本来动态替换 schemaLocation
在编译过程中……对吗?
我不是在寻找“将它们放在共享位置”之类的答案。我正在寻找更符合使用相对引用而不是硬编码引用的开发环境的东西。
仅供引用,我正在使用 IntelliJ IDEA,以防有特定于 IDE 的方法。
最佳答案
如果您只是希望 IntelliJ 停止以红色显示您的包含,您可以在您的包含中使用一些自定义 URI。然后转到项目设置 -> 架构和 DTD,您可以在其中将此 URI 映射到本地文件。
如果您需要在运行时进行架构验证,那就另当别论了。您可能需要使用 XML 目录。如果您使用的是 JAXB,您应该看看这个问题:jaxb - how to map xsd files to URL to find them
关于java - 跨项目指定 XSD schemaLocation 的正确或正确方法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15379071/
我想生成这个 xml header : 问题是 xsi:schemaLocation 属性中的 namespace 。 这是我的代码: XNamespace mynamespace = "http
我正在使用 Jersey 创建一个安静的 Web 服务编码 XML。 我将如何设置 xsi:schemaLocation? 此 answer展示如何直接在 Marshaller 上设置 Marshal
我发现我们有多个 url 作为此属性的值,就像在 spring 中一样: 为什么需要它以及它的用途是什么? Spring 是否会访问 url 并进行验证?xmlns 和 xsi:schemaLoca
我必须将我的应用程序部署到没有互联网连接的计算机上。并且某些 Spring xsd 文件的 URL 无法访问我正在使用 spring 4.0.3 和 JDK7 和 maven。我的应用程序上下文:
我正在通过以...开头的 maven pom.xml 为什么我需要在这里使用 xsi:schemaLocation?我理解它是一种发现具有目标 namespace 的 XSD 的方法。但是当我使用
xml 架构位置包含 http://www.springframework.org/schema/beans ,它已经是架构全局命名空间。那么为什么它总是在 xsi:schemaLocation 元素
反序列化 XML 消息时遇到此错误: Unrecognized field "schemaLocation" (class com.example.RefreshTokenType), not mar
假设我有两个项目,A 和 B。Java 项目,以防这很重要。 项目 A 包含一堆表示核心类型和元素的 XSD 文件。它们都放在一个名为“定义”的包中。这被内置到 project-a.jar 中。 项目
如何将以下 xsi:schemaLocation 添加到序列化类中? 这是我到目前为止所做的: public class NewReleaseMessage { [XmlAttribute]
我正在使用 Spring 并且在 application-context.xml 我有以下定义: ..... 当我的互联网连接中断时,我无法通过 tomcat 或 jetty 运行我的应用程序。
例如,我不想像这样引用在线 XSD: 要像这样引用类路径 XSD: 最佳答案 没有标准化的方法可以做到这一点。某些产品可能支持类路径 URI:classpath:org/hibernat
我正在使用 xmllint检查一些工具 XML 反对他们的文件 XSD 模式。该工具似乎被调用为 xmllint --noout --schema foo.xsd bar.xml ...并且不包括检索
我尝试验证包含多个 XSD 的 XML,验证正常,但事实不应该如此。 例如,我的 XML 是 TEST_TEXT TEST_N
我用 C# 开发了一个 WCF 服务。我们的客户已经拥有一个用 Java 编写的客户端软件。他们说当他们尝试添加我们的 wcf 服务引用时,他们得到一个错误。他们认为关于命名空间的问题。 我不太了解
我正在尝试进行转换,但我遇到了 xsi:schemaLocation 未显示在 XML 结果上的问题。我已经搜索了为什么会发生这种情况,但我似乎无法找到它。请帮忙 输入 XML
请查看以下 XML 命名空间和架构位置。 我已经通过以下方式添加了 namespace ,这似乎工作正常: XmlSerializerNamespaces ns = new XmlSerializ
几天前,我开始学习 libxml2,用于在 Linux(Ubuntu 14.04)上解析 xml 文档。但不幸的是我有很多问题。 首先,当我使用函数 xmlParseDoc() 时出现错误消息: do
我正在尝试使用 groovy 将节点简单地添加到特定位置的 a 中。我的源模式如下所示 我想简单地添加一个与其他子节点内联的新子节点来生成输出
我有一个 WSDL,它的“类型”元素中包含 3 个模式。架构不是在外部 XSD 中定义的,而是在 types 元素中定义的。 我想在模式号 2 中自定义一个元素并更改它的名称以避免冲突。 那么在 sc
我使用 JAXP 创建一个 xml 文档并搜索插入 schemalocation 的方法。目前我的应用程序生成: ... 但我需要: ... 我的代码: StreamResult resu
我是一名优秀的程序员,十分优秀!