问题标签 [exi]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
xml - 如何从一个 XML 和几个 XSD 文件中创建一个 EXI 文件?
我正在使用EXIficient将 XML 数据转换为 EXI。它适用于 XML 和 XSD 对,但当我尝试使用由 2 个其他 XSD ( <xs:import namespace=...
) 组成的 XSD 时不起作用,这些 XSD 本身由其他 XSD 组成。
我可以手动展平这些 XSD 吗?(这里的 XSD 新手,我读到使用<xs:import...
flatten 应用程序不起作用。)
如果有人知道 EXIficient,是否可以使用多个 XSD?
java - 使用 EXIficient 在 XML 文件中缺少名称空间信息
我正在使用EXIficient将 XML 数据转换为 EXI 并返回 XML。在这里,我使用他们的EXIficientDemo 类。示例代码:
首先它将 xml 文件转换为 EXI,然后再转换回 XML,当它从先前生成的 EXI 文件生成 XML 时,它会丢失一些有关 Namespace 的信息。
实际 XML 文件:
EXIficient 生成的 XML 文件
在生成的 XML 文件中,缺少xmlns:tts="http://www.w3.org/ns/ttml#styling"
如何解决这个问题?如果可以,请帮助我。
c# - 在 C#/.NET 中使用 OpenEXI 的 EXI 解码器
我不知道如何使用 C#/.NET 创建 EXI 解码器,它接受包含 EXI 有效代码的 MemoryStream 并简单地输出另一个包含 XML 代码的 MemoryStream。稍后我将使用自定义方法解析 XML 代码;我只使用 EXI 来实现最佳压缩性能和低内存占用。到目前为止,我已经找到了一些 Java 实现作为示例,但没有找到 C#/.NET 对应的实现;任何形式的提示都非常感谢。
java - EXI 获取 JAXB 解组器
我想知道 JAXB 解组器的 EXI 等价物。
我查看了EXI示例,其中我成功获得了EXIFactory,设置了语法,获得了XMLReader。
然后该示例创建一个转换器来将 EXI 流转换为 XML 流。
但是,我不需要输出流。我只需要将未编组的结果保留为内存中的 POJO。我需要将结果直接解组 EXI。我正在使用 EXI marshall/unmarshall 作为文本 XML 的更快替代方案。
忘了说我使用的是哪个库。这里是:
javascript - 使用 javascript 解压缩 .exi 文件,反之亦然
我们如何使用 javascript 解压缩笔记本电脑中的 .exi 文件?你能告诉我怎么做吗?(也欢迎对任何具有相同示例的链接提出建议。)
详细问题:我有一个 .exi 文件(我从互联网下载了一个示例 .exi 文件)。我需要使用 javascript 将文件解压缩/解码为 XML 文件格式或 XML 字符串。我尝试使用https://github.com/EXIficient/exificient-for-javascript实现相同的功能。在此链接中,有一个演示应用程序http://exificient.github.io/javascript/demo/processXML.html ,我在其中提供了一个 .exi 文件来解析它并尝试对其进行解码。当我点击解码按钮时,它会返回一条消息 它要求扩展名为“.xsd.grs”的 json 语法文件,我猜这似乎是模式文件。如果是这样,我们如何创建语法文件?我不知道该怎么做。我也需要学习如何使用 javascript 将 xml 文件转换为 .exi 文件。我希望这可以使怀疑更加清楚。请帮忙。
提前致谢。
xml - 使用 EXI:如何保存评论?
我尝试使用exificient-gui对 XML 文件进行编码/解码,但未保留原始 XML 文件中包含的注释。我使用了这些设置:
生成的 XML 文件(编码/解码后)不再包含 XML 注释。
然后我尝试对OpenExi做同样的事情,结果相同(= 没有评论)。
我也尝试过为 Exificient 和 OpenExi 提供的 Java 示例;再次没有评论。
- Exificient(或 OpenExi)GUI 保留评论的正确选项是什么?
xml - 使用 EXI:如何处理大型 XML 文件(~ 20 GB)?
我目前正在评估 EXI 以压缩大型 XML 文件。大是指 20 GB(二十)的 XML 文件。
EXI 压缩编解码器和非 EXI 压缩编解码器 (gzip/lzma) 都集成在 Java 虚拟机上运行的 Scala 应用程序中。GZIP 和 LZMA 由 commons-compress 提供。所有编解码器都在这些 3rd 方库中用 Java 实现。
在具有 8 GB(JVM 为 6 GB)的 64 位 Linux 系统上,当原始 XML 文件约为 10 GB 时,Exificient 和 OpenExi 都可以编码,但无法解码。
- Exificient 因 OutOfMemory 而失败
- OpenExi 失败并出现 ArrayIndexOutOfBoundsException: 1000000
GZIP/LZMA 没有问题
甲骨文 JDK:1.8-8u40
JVM参数:
-Xmx6g -XX:+UseG1GC -XX:+UseStringDeduplication
生成的 EXI 编码 XML 文件的大小约为 70 MB
我的问题:
- EXI 是否暗示(由于它的底层算法)内存使用量随着 XML 输入文件的大小而增加?如果是这样,是否有一个简单的公式来计算所需的内存?
- 有什么办法可以让它工作(除了分配更多的内存)?
java - 在 SOAP UI 中拦截 SOAP 响应
网络服务返回
Base64 编码的字符串实际上是一个 EXI 编码的 XML。我知道如何解码 base 64,然后将 EXI 转换为 XML。让我们称之为 MyEXIEncoder.class(Java 类)
但是,我们目前有很多基于 XML 响应的 SOAP UI 测试用例。
目前唯一的方法似乎是添加一个可以调用我的 java 类类的 groovy 脚本,但这是一个额外的测试步骤,这意味着我必须编写一些脚本来更新我的 SOAP UI 测试用例。此外,我不确定我的断言将如何工作以及我的测试用例会有多少变化(我有数百个测试用例)
我需要一个方法
从我的测试步骤中截取 SOAP 响应,使用我的自定义类进行解码并将响应返回 SOAP UI,以便现有的断言可以工作。
任何帮助将不胜感激!
提前致谢。
xml - 在 Loadrunner 中拦截 SOAP 响应
网络服务返回
Base64 编码的字符串实际上是一个 EXI 编码的 XML。我知道如何解码 base 64,然后将 EXI 转换为 XML。让我们称之为 MyEXIEncoder.class(Java 类) 但是,我们目前有很多基于 XML 响应的 Loadrunner 测试用例(它们动态使用有效负载中的值传递给后续请求)
我需要一种方法来从我的测试步骤中拦截 SOAP 响应,使用我的自定义类进行解码并返回响应,以便后续步骤可以在现有脚本中工作。
任何帮助将不胜感激!
提前致谢。
exi - 找不到将 EXI 压缩作为有效负载的 http 客户端/服务器的代码示例
经过几天的研究,我找不到一个很好的例子来发送带有使用 EXI 压缩的数据的 http 请求的客户端。我试图在nodejs中自己做,但没有成功。我采取了以下示例: https ://github.com/EXIficient/exificient.js
但我没有成功执行这段代码,“EXIEncoder 不是构造函数”。有人可能会帮助我并向我展示一个基于 EXI 压缩 xml 并通过 HTTP 将其发送到服务器的客户端示例。请指教。