You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@xalan.apache.org by "Brian Minchau (JIRA)" <xa...@xml.apache.org> on 2006/04/04 22:12:53 UTC

[jira] Assigned: (XALANJ-2288) XSLTC redirect has problem with relative filenames

     [ http://issues.apache.org/jira/browse/XALANJ-2288?page=all ]

Brian Minchau reassigned XALANJ-2288:
-------------------------------------

    Assign To: Brian Minchau

> XSLTC redirect has problem with relative filenames
> --------------------------------------------------
>
>          Key: XALANJ-2288
>          URL: http://issues.apache.org/jira/browse/XALANJ-2288
>      Project: XalanJ2
>         Type: Bug

>   Components: XSLTC
>     Reporter: Stephen Suen
>     Assignee: Brian Minchau

>
> According the javadoc of class Redirect:
>  
> Filenames can be relative or absolute. If they are relative, the base directory will be the same as the base directory for the output document.
>  
> With Xalan interpretive processor, this works fine. But with XSLTC, the output seems to be written
> into the directory relative to the current working directory.
>  
> Here's the stylesheet showing the problem (styles/writer.xsl):
>  
> <?xml version="1.0" encoding="UTF-8" ?>
> <xsl:stylesheet
>   xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
>   xmlns:xalan=" http://xml.apache.org/xalan "
>   xmlns:redirect=" http://xml.apache.org/xalan/redirect"
>   extension-element-prefixes="xalan redirect"
>   version="1.0"> 
>   <xsl:template name="checkExtensions">
>     <xsl:if test="not(element-available('redirect:write'))">
>       <xsl:message terminate="yes">
>         <xsl:text>Extension element redirect:write NOT available.</xsl:text> 
>         <xsl:text>XSL vendor: </xsl:text>
>         <xsl:value-of select="system-property('xsl:vendor')"/>
>       </xsl:message>
>     </xsl:if>
>     <xsl:if test="not(function-available('xalan:nodeset'))"> 
>       <xsl:message terminate="yes">
>         <xsl:text>Extension function xalan:nodeset NOT available.</xsl:text>
>         <xsl:text>XSL vendor: </xsl:text>
>         <xsl:value-of select="system-property('xsl:vendor')"/> 
>       </xsl:message>
>     </xsl:if>
>   </xsl:template>
>   <!-- =================================================================== -->
>   <xsl:template name="write">
>     <xsl:param name="filename"/>
>     <xsl:param name="content"/>
>     <xsl:param name="quiet" select="'0'"/> 
>     <xsl:call-template name="checkExtensions"/>
>     <xsl:if test="$quiet = '0'">
>       <xsl:message>
>         <xsl:text>Writing output to file: </xsl:text>
>         <xsl:value-of select="$filename"/>
>       </xsl:message> 
>     </xsl:if>
>     <redirect:write file="{$filename}">
>       <xsl:copy-of select="xalan:nodeset($content)"/>
>     </redirect:write>
>   </xsl:template>
>   <!-- =================================================================== -->
>   <!-- testcase
>   -->
>   <xsl:template match="/">
>     <xsl:message>
>       <xsl:text>XSL Vendor: </xsl:text>
>       <xsl:value-of select="system-property('xsl:vendor')"/> 
>     </xsl:message>
>     <xsl:call-template name="write">
>       <xsl:with-param name="filename" select="'testout.xml'"/>
>       <xsl:with-param name="content" select="/"/> 
>     </xsl:call-template>
>   </xsl:template>
>   
> </xsl:stylesheet>
> I process input document against this stylesheet with the following script:
>  
> SETLOCAL
> SET CLASSPATH=E:\apache\xalan-j_2_7_0\serializer.jar;E:\apache\xalan-j_2_7_0\xalan.jar;E:\apache\xalan-j_2_7_0\xercesImpl.jar;E:\apache\xalan-j_2_7_0\xml-apis.jar
> rm -r build
> mkdir build
> java -Duser.language=en org.apache.xalan.xslt.Process -xsltc -in src/index.xml -xsl styles/writer.xsl -out build/main.xml
> ENDLOCAL
> The another output file named "testout.xml" is written out into current working directory.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira


---------------------------------------------------------------------
To unsubscribe, e-mail: xalan-dev-unsubscribe@xml.apache.org
For additional commands, e-mail: xalan-dev-help@xml.apache.org