XSLT-获取子字符串并将其作为参数传递给java函数

XSLT-获取子字符串并将其作为参数传递给java函数,xslt,Xslt,在下面的代码片段中,我试图获取@imageMeta节点的子字符串,附加一些路径位置,并通过XSLT将其作为参数传递给java方法 <xsl:variable name="imagePathFrom" select="/config/assets/images/{substring-after(@imageMeta,'/')}" /> <xsl:variable name="imagePathTo" select="'/dev/svn_root/platform/system'"

在下面的代码片段中,我试图获取@imageMeta节点的子字符串,附加一些路径位置,并通过XSLT将其作为参数传递给java方法

<xsl:variable name="imagePathFrom" select="/config/assets/images/{substring-after(@imageMeta,'/')}" />
<xsl:variable name="imagePathTo" select="'/dev/svn_root/platform/system'" />
<xsl:value-of select="filecopy:copyFile($imagePathFrom, $imagePathTo)"/>

请提供帮助。

您的代码中有一个问题:

应该是。。

您的代码中有一个问题:

应该是。。

婴儿程序员的“Aravind”建议将解决您的解析错误

你还提到你想降低大写字母i的大小写。这里有两个选项:

  • 使用XSLT1.0,这个StackOverflow答案解释了如何使用。它不适用于Unicode字符,如“Í”,但您可能不需要它
  • XSLT2.0有一个
    小写
    函数,它将把整个字符串的小写,可能不是您想要的

    • 婴儿程序员“Aravind”建议将解决您的解析错误

      你还提到你想降低大写字母i的大小写。这里有两个选项:

      • 使用XSLT1.0,这个StackOverflow答案解释了如何使用。它不适用于Unicode字符,如“Í”,但您可能不需要它
      • XSLT2.0有一个
        小写
        函数,它将把整个字符串的小写,可能不是您想要的
      替代解决方案

      <xsl:variable name="imagePathFrom" select=
       "concat('/config/assets/images/', substring-after(@imageMeta,'/')" />
      
      <xsl:variable name="imagePathFrom" select=
       "concat('/config/assets/',
               translate(substring(@imageMeta, 1, 1),
                         $vUpper,
                         $vLower
                         ),
               substring(@imageMeta, 2)
               )" />
      

      替代解决方案

      <xsl:variable name="imagePathFrom" select=
       "concat('/config/assets/images/', substring-after(@imageMeta,'/')" />
      
      <xsl:variable name="imagePathFrom" select=
       "concat('/config/assets/',
               translate(substring(@imageMeta, 1, 1),
                         $vUpper,
                         $vLower
                         ),
               substring(@imageMeta, 2)
               )" />
      


      此建议修复了语法,但它不是正确的:
      /config/assets/images
      是磁盘路径,而不是源XML中的路径,Dimitre解决方案是正确的此建议修复了语法,但它不是正确的:
      /config/assets/images
      是磁盘路径,而不是源XML中的路径,Dimitre解决方案是正确的one@nishMaria当前位置我很高兴我的回答对你有用。请你考虑接受它(点击答案旁边的复选标记)?@尼希玛利亚:我很高兴我的回答对你有用。请你考虑接受它(点击答案旁边的复选标记)?
      'abcdefghijklmnopqrstuvwxyz'
      
      'ABCDEFGHIJKLMNOPQRSTUVWXYZ'