首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >xslt调用java实例方法

xslt调用java实例方法
EN

Stack Overflow用户
提问于 2012-10-30 17:41:12
回答 1查看 7.4K关注 0票数 6

我的xsl如下所示:

代码语言:javascript
运行
复制
<?xml version="1.0"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0" 
xmlns:SimpleDateFormat="java.text.SimpleDateFormat"
xmlns:Date="java.util.Date" exclude-result-prefixes="SimpleDateFormat Date">

<xsl:variable name="s" select="SimpleDateFormat:new(MMM/dd/yyyy-HH/mm/ss/SSS)"/>
<xsl:variable name="date" select="Date:new(number($beginTime))"/>

那么现在如何调用实例's‘的方法format(Date date)呢?

如果我使用<xsl:value-of select="s:format($date)" />,那么错误是: prefix必须解析为一个名称空间: s。

但是,如果我像这样添加名称空间:xmlns:s="java.text.SimpleDateFormat"<xsl:value-of select="s:format($date)" />将返回默认格式,而不是指定的格式。

那么如何获取指定的格式,如MM/dd/yyyy-HH/mm/ss/SSS?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-10-31 00:47:13

您需要使用的命名空间是引用对象类型的命名空间,并将变量本身作为调用中的第一个参数传递:

顺便说一句:你需要把格式参数放在撇号之间:

代码语言:javascript
运行
复制
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0" xmlns:SimpleDateFormat="java.text.SimpleDateFormat" xmlns:Date="java.util.Date" exclude-result-prefixes="SimpleDateFormat Date">
    <xsl:variable name="s" select="SimpleDateFormat:new('MMM/dd/yyyy-HH/mm/ss/SSS')"/>
    <xsl:variable name="date" select="Date:new()"/>
    <!-- +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -->
    <xsl:template match="*">
        <Test>
            <xsl:value-of select="SimpleDateFormat:format($s,$date)" />
        </Test>
    </xsl:template>
</xsl:stylesheet>

我希望这能帮到你!

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

https://stackoverflow.com/questions/13136229

复制
相关文章

相似问题

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