haul 2002/07/14 07:49:03 Modified: src/java/org/apache/cocoon/components/language/markup/xsp/java util.xsl logicsheet-util.xsl Log: fix util.xsl Revision Changes Path 1.6 +16 -77 xml-cocoon2/src/java/org/apache/cocoon/components/language/markup/xsp/java/util.xsl Index: util.xsl =================================================================== RCS file: /home/cvs/xml-cocoon2/src/java/org/apache/cocoon/components/language/markup/xsp/java/util.xsl,v retrieving revision 1.5 retrieving revision 1.6 diff -u -r1.5 -r1.6 --- util.xsl 22 May 2002 16:03:08 -0000 1.5 +++ util.xsl 14 Jul 2002 14:49:03 -0000 1.6 @@ -143,22 +143,19 @@ <xsl:with-param name="name">uri</xsl:with-param> </xsl:call-template> </xsl:variable> + <xsl:variable name="source-base"> + <xsl:call-template name="get-string-parameter"> + <xsl:with-param name="name">base</xsl:with-param> + </xsl:call-template> + </xsl:variable> <xsp:logic> - { - org.apache.cocoon.components.parser.Parser newParser = null; - try { - newParser = (org.apache.cocoon.components.parser.Parser) this.manager.lookup(org.apache.cocoon.components.parser.Parser.ROLE); - XSPUtil.include(this.resolver.resolve(<xsl:copy-of select="$source-uri"/>).getInputSource(), this.contentHandler, newParser); - } catch (Exception e) { - getLogger().error("Could not include source", e); - } finally { - if (newParser != null) this.manager.release((Component) newParser); - } - } + XSPUtil.includeSource(<xsl:copy-of select="$source-uri"/>, <xsl:copy-of select="$source-base"/>, this.resolver, this.contentHandler); </xsp:logic> </xsl:template> + + <!-- Include URL contents as SAX --> <xsl:template match="util:include-uri"> <xsl:variable name="href"> @@ -171,31 +168,12 @@ </xsl:when> </xsl:choose> </xsl:variable> - - <xsp:logic> { - String __name = String.valueOf(<xsl:copy-of select="$href"/>); - { - org.apache.cocoon.components.parser.Parser newParser = null; - org.apache.cocoon.components.url.URLFactory factory = null; - - try { - newParser = (org.apache.cocoon.components.parser.Parser) this.manager.lookup(org.apache.cocoon.components.parser.Parser.ROLE); - factory = (org.apache.cocoon.components.url.URLFactory) this.manager.lookup(org.apache.cocoon.components.url.URLFactory.ROLE); - URL __url = factory.getURL(__name); - InputSource __is = new InputSource(__url.openStream()); - __is.setSystemId(__url.toString()); - - XSPUtil.include(__is, this.contentHandler, newParser); - } catch (Exception e) { - getLogger().error("Could not include page", e); - } finally { - if (factory != null) this.manager.release((Component) factory); - if (newParser != null) this.manager.release((Component) newParser); - } - } - } </xsp:logic> + <xsp:logic> + XSPUtil.includeSource(<xsl:copy-of select="$href"/>, null, this.resolver, this.contentHandler); + </xsp:logic> </xsl:template> + <!-- Include file contents as SAX --> <xsl:template match="util:include-file"> <xsl:variable name="name"> @@ -209,28 +187,7 @@ </xsl:choose> </xsl:variable> <xsp:logic> - { - org.apache.cocoon.components.parser.Parser newParser = null; - - try { - newParser = (org.apache.cocoon.components.parser.Parser) this.manager.lookup(org.apache.cocoon.components.parser.Parser.ROLE); - InputSource __is = new InputSource( - new FileReader( - XSPUtil.relativeFilename( - <xsl:copy-of select="$name"/>, - objectModel - ) - ) - ); - - - XSPUtil.include(__is, this.contentHandler, newParser); - } catch (Exception e) { - getLogger().error("Could not include page", e); - } finally { - if (newParser != null) this.manager.release((Component) newParser); - } - } + XSPUtil.includeFile(<xsl:copy-of select="$name"/>,this.manager, this.contentHandler, objectModel); </xsp:logic> </xsl:template> @@ -246,25 +203,7 @@ </xsl:variable> <xsp:logic> - { - org.apache.cocoon.components.parser.Parser newParser = null; - - try { - newParser = (org.apache.cocoon.components.parser.Parser) this.manager.lookup(org.apache.cocoon.components.parser.Parser.ROLE); - InputSource __is = new InputSource( - new StringReader( - String.valueOf(<xsl:copy-of select="$expr"/>) - ) - ); - - - XSPUtil.include(__is, this.contentHandler, newParser); - } catch (Exception e) { - getLogger().error("Could not include page", e); - } finally { - if (newParser != null) this.manager.release((Component) newParser); - } - } + XSPUtil.includeString(<xsl:copy-of select="$expr"/>,this.manager, this.contentHandler); </xsp:logic> </xsl:template> 1.5 +12 -2 xml-cocoon2/src/java/org/apache/cocoon/components/language/markup/xsp/java/logicsheet-util.xsl Index: logicsheet-util.xsl =================================================================== RCS file: /home/cvs/xml-cocoon2/src/java/org/apache/cocoon/components/language/markup/xsp/java/logicsheet-util.xsl,v retrieving revision 1.4 retrieving revision 1.5 diff -u -r1.4 -r1.5 --- logicsheet-util.xsl 27 Feb 2002 05:26:41 -0000 1.4 +++ logicsheet-util.xsl 14 Jul 2002 14:49:03 -0000 1.5 @@ -149,6 +149,11 @@ <xsl:param name="default"/> <xsl:param name="required">false</xsl:param> + <!-- for some unknown reason this needs to be called every time, + otherwise only the first invocation uses a correct namespace + prefix. --> + <xsl:variable name="namespace-prefix"><xsl:call-template name="get-namespace-prefix"/></xsl:variable> + <xsl:variable name="qname"> <xsl:value-of select="concat($namespace-prefix, ':param')"/> </xsl:variable> @@ -223,6 +228,11 @@ <xsl:param name="name"/> <xsl:param name="default"/> <xsl:param name="required">false</xsl:param> + + <!-- for some unknown reason this needs to be called every time, + otherwise only the first invocation uses a correct namespace + prefix. --> + <xsl:variable name="namespace-prefix"><xsl:call-template name="get-namespace-prefix"/></xsl:variable> <xsl:variable name="qname"> <xsl:value-of select="concat($namespace-prefix, ':param')"/>
---------------------------------------------------------------------- In case of troubles, e-mail: [EMAIL PROTECTED] To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]