问题标签 [xalan]

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.

0 投票
1 回答
354 浏览

variables - XSL:VARIABLE 是否有任何范围限制

此循环运行短迭代。但是当迭代增加时,整个 XSL 无法转换并引发错误。

系统 ID 未知;第 0 行;#0 列;java.lang.ArrayIndexOutOfBoundsException

XSL 中的变量数据有范围限制吗?有什么办法可以克服这个问题吗?

夏兰 2.7.0 . 有没有办法找到它的更多细节。
我们当前的编码是:

0 投票
2 回答
2735 浏览

xml - 复杂的 XML XSLT 查询,如 SQL 连接

我们有一个格式如下所示的 XML 文件。

我已经尝试了很多东西,但是对于 XSLT/XPath 来说是新手,我无法获得一个查询来表示如下所示的数据。

如您所见,我想检查 firstinner 标签的 inner1 序列,number 是否与 secondinner 标签的 inner2 序列匹配,然后将 secondinner 标签的 inner2 的 secondNumber 标记值拉到这些旁边。就像 SQL 中的两个表内连接一样。我们可以在 XSLT 中做到这一点吗?我正在尝试值匹配,但我不知道如何匹配同一个 XML 文件中的数据。请帮忙。提前致谢。我也在使用 Xalan-C。

更新:感谢 Kay 和 LarsH。我尝试了以下脚本。

它给出如下输出。

如何使这种格式如下所示,在记录之前没有前导空格以及数据行上方和下方的不必要行。

iamroot,001,321,189,

iamroot,002,345,998,

再次感谢。

0 投票
1 回答
109 浏览

java - 当我在输入和输出为 SAX 的上下文中解析 XSLT 时,是否在幕后创建了 DOM 树?

这是我指的示例代码:

http://xml.apache.org/xalan-j/usagepatterns.html#sax

首先,请注意,在这段代码中,所有可以基于 SAX 的东西都是基于 SAX 的:输入和输出。

另外,请注意,transformerHandler 对象是从“foo.xsl”创建的,并且该transformerHandler 用于执行从 SAX 输入到创建输出的 SAX ContentHandler 的转换。

我知道 XSLT 需要构建类似于 DOM 树的东西才能完成工作。

所以这是我的问题:我想知道 transformerHandler 是否真的在幕后构建了类似 DOM 树的东西?如果是的话,那不就是破坏了努力留在SAX-land的目的吗?

0 投票
1 回答
432 浏览

java - 有没有办法在 JAXP 或 Xalan XSLT 范围内绑定 Java 对象?

Xalan-J 允许我们使用它的扩展机制创建和操作 java 对象。我想要做的是从Java(从调用Xalan 的JVM)传递一个已经创建的对象,然后从xslt 操作这个对象。

例如,我想做这样的事情:

这可能吗?

0 投票
2 回答
512 浏览

c++ - 获取使用 Xalan 运行的 Eclipse C++ 环境

我一直在努力让 C++ IDE 在我的 64 位 Windows 7 机器上运行。这令人沮丧,主要是因为使用Eclipse IDE for C/C++ Developers的 32 位和 64 位程序不兼容

好吧,我终于编译了 HelloWorld,现在我想将 Xalan 添加到我的项目中。我已经下载了源代码和二进制文件。让源代码在 MinGW(我选择的编译器)中编译是不可能的,但我正在使用二进制目录中的 .lib 文件,如 xerces-c_2.lib。我可以将这些链接到我的 C++ 项目吗?如果可以,我该怎么做?

谢谢!

编辑更新 2011-08-30

我只是没有运气,但我想发布更新。我尝试在 Eclipse 之外构建它但没有成功。我正在尝试创建与 Xalan-C 捆绑在一起的 StreamTransform.cpp 示例。它位于与其关联的头文件的目录中:XalanMemoryManagerImpl.hpp

然后我创建了以下 Makefile:

基础目标 StreamTransform.o 成功运行并生成输出文件,但转换器死亡。我在这里遇到的错误与我在 Eclipse 中遇到的错误相同。一堆“未定义的参考错误:

C:\Users\x_walia\workspace\TCXMLTransformer\Debug/../StreamTransform.cpp:115: 未定义引用`xalanc_1_10::XSLTInputSource::XSLTInputSource(std::istream*, xercesc_2_7::MemoryManager&)'

StreamTransform.o:在函数main': C:/Libs/Xalan-C_1_10_0-win32-msvc_60/include/xalanc/XSLT/XSLTResultTarget.hpp:103: undefined reference toxalanc_1_10::XalanMemMgrs::getDefaultXercesMemMgr()'

对我来说,这看起来像是某种库链接错误,但是什么?我不应该有六个 .lib 文件与我正在使用的 Windows 二进制发行版捆绑在一起。其中一半具有后缀:_d,如 xerces-c_2* d * 中代表调试库。我已经尝试包括和省略这些但无济于事。

我听说这个项目被放弃了,我想知道我是否只是因为我在 Windows 7 64 位机器上编译而遇到问题......

0 投票
1 回答
979 浏览

c++ - 哪个 XSLT 处理器用于 C++?

我从 C++ 的 Xalan 开始,但对于这个项目来说,这似乎有点矫枉过正。我将在内存中有一个 XML 文件,有一个样式表可以运行它……就是这样。

输入 XML 和样式表都是内部的,并且在它到达我的代码之前验证了完整性,所以我真的只想要最简单的方法来进行这种转换。我查看了libxslt,但它是基于 C 的。主页向我推荐了 xmlwrapp,我开始使用它只是发现这个项目已经有一段时间没有得到支持了。

您认为 xmlwrapp 是否适合我的需求,或者您会推荐其他库吗?

0 投票
1 回答
6834 浏览

java - Xalan+ XSLT+ JAVA

我的 xsl 文件

……

创建验证器并设置为 xsl 的 Java 代码

非静态 Java 函数“validateGood”的第一个参数不是有效的对象引用。无法将数据类型“void”转换为“boolean”。

你能解释一下有什么问题吗?

升级版:

ValidatorXslGood.java 代码:


我尝试在 XSL 中创建验证器

...........

但我有新错误,我无法理解路径中的错误

找不到类“com.epam.laba.validator.ValidatorXslGood”。找不到外部构造函数“com.epam.laba.validator.ValidatorXslGood”。

0 投票
3 回答
5897 浏览

java - 如何在java中捕获嵌套异常

我正在使用 Apache Xalan (v.2.7.1) 在 Apache Tomcat (v6.0.32) 中将 XML 转换为 XHTML。有时加载会被客户端取消并引发以下异常:

我想捕获 ClientAbortException 异常,以便它不会向日志发送垃圾邮件。但是,如何检查异常是否嵌套在 ClientAbortException 中?我试过这样的事情:

但它只给了我一个空指针异常,因为第一个 getCause 没有 getCause。有任何想法吗?

0 投票
1 回答
4196 浏览

xslt - 如何在 XSLT/XPATH 1.0 中执行 str:replace?

在 XPATH 2.0 中有一个函数允许我用另一个字符串替换字符串中的子字符串。我想使用 xalan 来做到这一点。不幸的是,它不支持 EXSLT 方法 str:replace 并且只使用 XSLT 1.0 样式表。包括来自 exslt.org 的功能似乎不起作用。如果我尝试使用函数样式,它会抱怨找不到 str:replace。如果我尝试使用模板样式,它会抱怨它找不到节点集,即使它受支持。translate 没用,因为它只是字符交换。有任何想法吗?

0 投票
2 回答
4584 浏览

xml - 使用基于 XSD 的 XSLT 将 XML 转换为 XML

我正在使用 XSLT/Xalan 将一个 XML 文件转换为另一个。这样做时,我发现当我创建我的 XSLT 样式表时,我正在硬编码我想要生成的目标文件的节点。这看起来很奇怪。

反正有没有使用 XSD 以编程方式生成目标文件?我想基本上使用我拥有的 XSD 创建文件的骨架,然后针对源文件运行我的样式表。然后,我可以将我从那里找到的值插入生成文件中的适当位置。

有没有办法做到这一点?或者 XQuery 是否可能提供类似的功能?