java xlst读取日期_使用参数从Java执行XSLT转换 - java

本文讨论了在Java Web应用程序中执行XSLT转换时,如何从Java代码传递参数到XSLT样式表,以便动态地从RESTful Web服务获取数据。通过在XSLT中声明参数并在Java代码中设置参数值,可以实现这一目标。同时,文章还提及了Java中的位操作符、Java Applet与PHP的通信问题、Struts验证的触发时机以及Spring JDBC的相关组件的作用。
摘要由CSDN通过智能技术生成

我正在从Java Web应用程序内部执行XSLT转换,没有任何问题,如下所示:

Transformer transformer = TransformerFactory.newInstance().newTransformer(xslSource);

transformer.transform(xmlInput, xmlOutput);

现在,在我的XSLT转换中,我向document()函数添加了一个调用,以从RESTful Web服务加载响应:

http://server/service?id=

好酷,没问题。但是现在,我想从Java中的utils类读取基本URL,并将其传递给样式表。

//java

String baseUrl = myUtils.getBaseUrl();

/service?id=

关于如何做到这一点的任何建议?我的Java utils类从类路径上的myApp.properties文件中加载值,但是我不确定是否可以从XSLT中利用它。

参考方案

在样式表中声明一个 xsl:param ,以便可以在调用时传递baseUrl值:

在Transformer对象上设置参数:

Transformer transformer = TransformerFactory.newInstance().newTransformer(xslSource);

transformer.setParameter('baseUrl', myUtils.getBaseUrl());

transformer.transform(xmlInput, xmlOutput);

如果使用的是XSLT 2.0,则在构造resolve-uri()变量值时可以考虑使用 url 函数:

select="resolve-uri(concat('/service?id=', @id), $baseUrl)" />

resolve-uri()可以通过简单地将baseUrl与片段和$baseUrl连接在一起,来帮助补偿@id中的尾部斜杠,井号和其他东西,否则可能导致构造无效的URL。

Java中的<>>是什么意思? - java

This question already has answers here: Closed 7 years ago. Possible Duplicate: What does >> and >>> mean in Java?我在一些Java代码中遇到了一些陌生的符号,尽管代码可以正确编译和运行,但对于括号在此代码中的作用却感…Java Applet的URLConnection与PHP无效 - java

我已经研究了Oracle文档和示例,但仍然无法正常工作。我有一个Java Applet,它只是尝试使用URLConnection和OutputStreamWriter通过POST将文本字段发送到PHP脚本。 Java方面似乎工作正常,没有引发异常,但是PHP在我的页面上未显示任何输出。我是PHP新手,因此请耐心等待。这是相关的Java部分: try { UR…页面加载而不是提交时发生struts验证 - java

请原谅我;我对Struts有点陌生。我遇到一个问题,即页面加载而不是我实际提交表单时发生了验证。我整天都在论坛上搜寻和搜寻,没有任何运气。我显然做错了一些事情,应该很容易确定,但是我还没有发现问题所在。这是我的struts.xml的片段:是否等于 - java

我在util.TreeSet类中发现,其中一个构造函数正在使用具有空泛型类型的新TreeMap调用另一个构造函数。 public TreeSet(Comparator super E> comparator) { this(new TreeMap<>(comparator)); } new TreeMap<>是什么意思…DataSourceTransactionManager和JndiObjectFactoryBean和JdbcTemplate的用途是什么? - java

以下的用途是什么:org.springframework.jdbc.core.JdbcTemplate org.springframework.jdbc.datasource.DataSourceTransactionManager org.springframework.jndi.JndiObjectFactoryBean

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值