Does anybody think wrapping some other tags around <xsl:copy-of > select="$curSel"/> could solve the problem? I was experimenting with <util:include-expr>, <util:expr> and <xsp:expr> but no success.
Are there similar ones which I don't know yet? I'd really appreciate some help. Regards, Harry > I have extracted the relevant information into a small-scale example. As > follows I include the logicsheet, the stacktrace and the generated Java > file. > I'd hope that somebody can give me a hint. > > Regards, > > Harry > > > Logicsheet: Test.htm.xsp.xsl > > > <?xml version="1.0" encoding="ISO-8859-1"?> > <xsp:page language="java" > xmlns:xsp="http://apache.org/xsp" > xmlns:xsp-request="http://apache.org/xsp/request/2.0" > xmlns:xsl="http://www.w3.org/1999/XSL/Transform" > xmlns:cinclude="http://apache.org/cocoon/include/1.0" > > > > <xsl:stylesheet version="1.0"> > > <xsp:logic> > System.out.println(""); > System.out.println("calling Test.htm.xsp.xsl:"); > </xsp:logic> > > > <xsl:variable name="curSel"> > <xsp:attribute > name="select">'<xsp:expr>Integer.MIN_VALUE</xsp:expr>'</xsp:attribute> > </xsl:variable> > > <xsl:template match="/"> > > <a> > <xsp:attribute name="href"> > <xsp:expr> > response.encodeURL(String.valueOf(<xsl:copy-of > select="$curSel"/>)) > </xsp:expr> > </xsp:attribute> > <xsl:value-of select="$curSel" /> > </a> > > > </xsl:template> > > <xsl:template match="@*|node()" priority="-1"> > <xsl:copy> > <xsl:apply-templates select="@*|node()"/> > </xsl:copy> > </xsl:template> > > > </xsl:stylesheet> > > </xsp:page> > > > Original exception : > org.apache.cocoon.components.language.LanguageException: Error compiling > Test_htm_xsp_xsl: > Line 0, column 0: could not parse error message: Note: > sun.tools.javac.Main > has been > deprecated. > D:\prj\_UIDL_EXAMPLE\Tomcat\work\demo\cocoon-files\org\apache\cocoon\www\button\Test_htm_xsp_xsl.java:139: > No method matching valueOf() found in class > java.lang.String. > String.valueOf(response.encodeURL(String.valueOf())) + "\n " + ""); > ^ > > Line 0, column 0: > 1 error, 1 warning > > at > org.apache.cocoon.components.language.programming.java.JavaLanguage.compile(JavaLanguage.java:205) > > at > org.apache.cocoon.components.language.programming.CompiledProgrammingLanguage.load(CompiledProgrammingLanguage.java:140) > > at > org.apache.cocoon.components.language.generator.ProgramGeneratorImpl.generateResource(ProgramGeneratorImpl.java:332) > > at > org.apache.cocoon.components.language.generator.ProgramGeneratorImpl.createResource(ProgramGeneratorImpl.java:282) > > at > org.apache.cocoon.components.language.generator.ProgramGeneratorImpl.load(ProgramGeneratorImpl.java:231) > > at > org.apache.cocoon.generation.ServerPagesGenerator.setup(ServerPagesGenerator.java:168) > > at > org.apache.cocoon.components.pipeline.AbstractEventPipeline.setupPipeline(AbstractEventPipeline.java:154) > > at > org.apache.cocoon.components.pipeline.CachingEventPipeline.setup(CachingEventPipeline.java:238) > > at > org.apache.cocoon.components.pipeline.CachingEventPipeline.generateKey(CachingEventPipeline.java:99) > > at > org.apache.cocoon.components.source.SitemapSource.refresh(SitemapSource.java:240) > > at > org.apache.cocoon.components.source.SitemapSource.<init>(SitemapSource.java:152) > > at > org.apache.cocoon.components.source.CocoonSourceFactory.getSource(CocoonSourceFactory.java:54) > > at > org.apache.cocoon.components.source.SourceHandlerImpl.getSource(SourceHandlerImpl.java:134) > > at > org.apache.cocoon.environment.AbstractEnvironment.resolve(AbstractEnvironment.java:293) > > at > org.apache.cocoon.transformation.TraxTransformer.setup(TraxTransformer.java:254) > > at > org.apache.cocoon.components.pipeline.AbstractEventPipeline.setupPipeline(AbstractEventPipeline.java:167) > > at > org.apache.cocoon.components.pipeline.CachingEventPipeline.setup(CachingEventPipeline.java:238) > > at > org.apache.cocoon.components.pipeline.CachingEventPipeline.generateKey(CachingEventPipeline.java:99) > > at > org.apache.cocoon.components.pipeline.CachingStreamPipeline.process(CachingStreamPipeline.java:276) > > at > org.apache.cocoon.www.button.sitemap_xmap.matchN10040(sitemap_xmap.java:829) > > at > org.apache.cocoon.www.button.sitemap_xmap.process(sitemap_xmap.java:414) > at > org.apache.cocoon.www.button.sitemap_xmap.process(sitemap_xmap.java:320) > at org.apache.cocoon.sitemap.Handler.process(Handler.java:180) > at org.apache.cocoon.sitemap.Manager.invoke(Manager.java:127) > at org.apache.cocoon.www.sitemap_xmap.matchN4002FA(sitemap_xmap.java:4517) > > at org.apache.cocoon.www.sitemap_xmap.process(sitemap_xmap.java:2850) > at org.apache.cocoon.www.sitemap_xmap.process(sitemap_xmap.java:2563) > at org.apache.cocoon.sitemap.Handler.process(Handler.java:180) > at org.apache.cocoon.sitemap.Manager.invoke(Manager.java:127) > at > org.apache.cocoon.sitemap.SitemapManager.process(SitemapManager.java:144) > > at org.apache.cocoon.Cocoon.process(Cocoon.java:582) > at org.apache.cocoon.servlet.CocoonServlet.service(CocoonServlet.java:795) > > at javax.servlet.http.HttpServlet.service(HttpServlet.java:853) > at > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:247) > > at > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:193) > > at > org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:243) > > at > org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:566) > > at > org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:472) > > at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943) > at > org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:190) > > at > org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:566) > > at > org.apache.catalina.valves.CertificatesValve.invoke(CertificatesValve.java:246) > > at > org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:564) > > at > org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:472) > > at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943) > at > org.apache.catalina.core.StandardContext.invoke(StandardContext.java:2347) > > at > org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:180) > > at > org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:566) > > at > org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherValve.java:170) > > at > org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:564) > > at > org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:170) > > at > org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:564) > > at > org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:472) > > at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943) > at > org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:174) > > at > org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:566) > > at > org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:472) > > at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943) > at > org.apache.catalina.connector.http.HttpProcessor.process(HttpProcessor.java:1027) > > at > org.apache.catalina.connector.http.HttpProcessor.run(HttpProcessor.java:1125) > > at java.lang.Thread.run(Thread.java:536) > > > > File Test_htm_xsp_xsl.java: > > package org.apache.cocoon.www.button; > > import java.io.File; > import java.io.IOException; > import java.io.StringReader; > //import java.net.*; > import java.util.Date; > import java.util.List; > import java.util.Stack; > > //import org.w3c.dom.*; > import org.xml.sax.InputSource; > import org.xml.sax.SAXException; > import org.xml.sax.helpers.AttributesImpl; > > //import org.apache.avalon.framework.*; > import org.apache.avalon.framework.component.Component; > import org.apache.avalon.framework.component.ComponentException; > import org.apache.avalon.framework.component.ComponentManager; > import org.apache.avalon.framework.component.ComponentSelector; > import org.apache.avalon.framework.context.Context; > import org.apache.avalon.excalibur.datasource.DataSourceComponent; > //import org.apache.avalon.framework.util.*; > > import org.apache.cocoon.Constants; > import org.apache.cocoon.ProcessingException; > import org.apache.cocoon.components.parser.Parser; > import org.apache.cocoon.generation.Generator; > //import org.apache.cocoon.util.*; > > import org.apache.cocoon.components.language.markup.xsp.XSPGenerator; > import org.apache.cocoon.components.language.markup.xsp.XSPObjectHelper; > import org.apache.cocoon.components.language.markup.xsp.XSPRequestHelper; > import org.apache.cocoon.components.language.markup.xsp.XSPResponseHelper; > > > /* User Imports */ > > > /** > * Generated by XSP. Edit at your own risk, :-) > */ > public class Test_htm_xsp_xsl extends XSPGenerator { > > static { > dateCreated = 1056399797545L; > dependencies = new File[]{ > }; > } > > /* Built-in parameters available for use */ > // context - ServletContext > // request - HttpServletRequest > // response - HttpServletResponse > // parameters - parameters defined in the sitemap > > /* User Class Declarations */ > > > /** > * Generate XML data. > */ > public void generate() throws SAXException, IOException, > ProcessingException { > > > > this.contentHandler.startDocument(); > AttributesImpl xspAttr = new AttributesImpl(); > > > > this.contentHandler.startPrefixMapping("xml", > "http://www.w3.org/XML/1998/namespace"); > > this.contentHandler.startPrefixMapping("xsp", > "http://apache.org/xsp"); > > this.contentHandler.startPrefixMapping("xsp-request", > "http://apache.org/xsp/request/2.0"); > > this.contentHandler.startPrefixMapping("xsl", > "http://www.w3.org/1999/XSL/Transform"); > > this.contentHandler.startPrefixMapping("cinclude", > "http://apache.org/cocoon/include/1.0"); > > xspAttr.addAttribute("", "version", "version", "CDATA", "1.0"); > > > > this.contentHandler.startElement("http://www.w3.org/1999/XSL/Transform", > "stylesheet", "xsl:stylesheet", > xspAttr); > > xspAttr.clear(); > > > this.characters("\n\n "); > > System.out.println(""); > System.out.println("calling Test.htm.xsp.xsl:"); > > this.characters("\n\n\n "); > > xspAttr.addAttribute("", "name", "name", "CDATA", "curSel"); > > > xspAttr.addAttribute("", "select", "select", "CDATA", > "'" + String.valueOf(Integer.MIN_VALUE) + "'" + > ""); > > > > this.contentHandler.startElement("http://www.w3.org/1999/XSL/Transform", > "variable", "xsl:variable", xspAttr); > > xspAttr.clear(); > > > this.characters("\n "); > > this.characters("\n "); > > > this.contentHandler.endElement("http://www.w3.org/1999/XSL/Transform", > "variable", "xsl:variable"); > > > this.characters("\n\n "); > > xspAttr.addAttribute("", "match", "match", "CDATA", "/"); > > > > this.contentHandler.startElement("http://www.w3.org/1999/XSL/Transform", > "template", "xsl:template", xspAttr); > > xspAttr.clear(); > > > this.characters("\n\n "); > > > xspAttr.addAttribute("", "href", "href", "CDATA", > "\n " + > > String.valueOf(response.encodeURL(String.valueOf())) + "\n " + ""); > > > this.contentHandler.startElement("", "a", "a", xspAttr); > > xspAttr.clear(); > > > this.characters("\n "); > > this.characters("\n "); > > xspAttr.addAttribute("", "select", "select", "CDATA", "$curSel"); > > > > this.contentHandler.startElement("http://www.w3.org/1999/XSL/Transform", > "value-of", "xsl:value-of", xspAttr); > > xspAttr.clear(); > > > > this.contentHandler.endElement("http://www.w3.org/1999/XSL/Transform", > "value-of", "xsl:value-of"); > > > this.characters("\n "); > > > this.contentHandler.endElement("", "a", "a"); > > > this.characters("\n\n\n "); > > > this.contentHandler.endElement("http://www.w3.org/1999/XSL/Transform", > "template", "xsl:template"); > > > this.characters("\n\n "); > > xspAttr.addAttribute("", "match", "match", "CDATA", "@*|node()"); > > xspAttr.addAttribute("", "priority", "priority", "CDATA", "-1"); > > > > this.contentHandler.startElement("http://www.w3.org/1999/XSL/Transform", > "template", "xsl:template", xspAttr); > > xspAttr.clear(); > > > this.characters("\n "); > > > > this.contentHandler.startElement("http://www.w3.org/1999/XSL/Transform", > "copy", "xsl:copy", xspAttr); > > xspAttr.clear(); > > > this.characters("\n "); > > xspAttr.addAttribute("", "select", "select", "CDATA", "@*|node()"); > > > > this.contentHandler.startElement("http://www.w3.org/1999/XSL/Transform", > "apply-templates", > "xsl:apply-templates", xspAttr); > > xspAttr.clear(); > > > > this.contentHandler.endElement("http://www.w3.org/1999/XSL/Transform", > "apply-templates", > "xsl:apply-templates"); > > > this.characters("\n "); > > > this.contentHandler.endElement("http://www.w3.org/1999/XSL/Transform", > "copy", "xsl:copy"); > > > this.characters("\n "); > > > this.contentHandler.endElement("http://www.w3.org/1999/XSL/Transform", > "template", "xsl:template"); > > > this.characters("\n\n\n"); > > > this.contentHandler.endElement("http://www.w3.org/1999/XSL/Transform", > "stylesheet", "xsl:stylesheet"); > > > this.contentHandler.endPrefixMapping("xml"); > > this.contentHandler.endPrefixMapping("xsp"); > > this.contentHandler.endPrefixMapping("xsp-request"); > > this.contentHandler.endPrefixMapping("xsl"); > > this.contentHandler.endPrefixMapping("cinclude"); > > > this.contentHandler.endDocument(); > } > } > > > > > > > Can you post the Table_htm_xsp_xsl.java Line 804, column 73? It's > > in your servlet container's work directory under cocoon-files > > > > Geoff > > > > > > At 06:59 AM 6/23/2003, you wrote: > > >I've chosen copy-of in analogy to the example. But I assume that's not > > the > > >matter. Actually mixing any tag with java code causes error. > > > > > >Harald > > > > > > > > > > do you really want copy-of for $href, or value-of? > > > > > > > > Geoff > > > > > > > > > -----Original Message----- > > > > > From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] > > > > > Sent: Sunday, June 22, 2003 1:55 PM > > > > > To: [EMAIL PROTECTED] > > > > > Subject: Re: Pls help! not working > > > > > response.encodeURL(String.valueOf(<xsl:copy-of select="$href"/>)) > > > > > > > > > > > > > > > Hello! > > > > > Does anybody have an idea to solve this problem? > > > > > > > > > > I'd really appreciate your help! > > > > > > > > > > Harry > > > > > > > > > > > I'm a novice cocoon user and currently changing an existing site > > > > running > > > > > > on > > > > > > cocoon 2.01 from cookie-based session management to manual URL > > > > encoding. > > > > > > This > > > > > > cocoon version doesn't yet support encodeURLTransformer and I > > can't > > > > > > upgrade > > > > > > to a newer version. > > > > > > > > > > > > The example found at > > > > > > 'cocoon\documentation\xdocs\userdocs\xsp\sessions.xml' > > > > > > I already successfully tested at a test logicsheet. > > > > > > > > > > > > At my stylesheet I use the following fragment: > > > > > > > > > > > > <a> > > > > > > <xsp:attribute name="href"> > > > > > > <xsp:expr> > > > > > > response.encodeURL(String.valueOf(<xsl:copy-of > > > > > > select="$href"/>)) > > > > > > </xsp:expr> > > > > > > </xsp:attribute> > > > > > > <xsl:copy-of select="$href"/> > > > > > > </> > > > > > > > > > > > > However the XSL statement appears to return no value although it > > works > > > > > > outside <xsp:expr>. > > > > > > > > > > > > The errorpage shows the following hints: > > > > > > > > > > > > The org.apache.cocoon.www.sitemap_xmap notifies that > > > > > > org.apache.cocoon.ProcessingException says: > > > > > > Exception during processing of > > > > > > http://localhost:8080/demo/XSPXSLWebSimpleMain.htm > > > > > > More precisely: > > > > > > org.apache.cocoon.ProcessingException: Exception during > processing > > of > > > > > > http://localhost:8080/demo/XSPXSLWebSimpleMain.htm: > > > > > > org.apache.cocoon.ProcessingException: Exception during > processing > > of > > > > > > http://localhost:8080/demo/XSPXSLSimpleTable.htm: > > > > > > org.apache.cocoon.ProcessingException: Language Exception: > > > > > > org.apache.cocoon.components.language.LanguageException: Error > > > > compiling > > > > > > Table_htm_xsp_xsl: > > > > > > Line 804, column 73: No method matching valueOf() found in class > > > > > > java.lang.String. > > > > > > ... > > > > > > at > > > > > > > > > > > org.apache.cocoon.transformation.CIncludeTransformer.processCInclu > > > > > deElement(CIncludeTransformer.java:136) > > > > > > at > > > > > > > > > > > org.apache.cocoon.transformation.CIncludeTransformer.startElement( > > > > > CIncludeTransformer.java:83) > > > > > > > > > > > > .... > > > > > > > > > > > > As I'm required to use cinclude within my stylesheets my sitemap > > > > > > definitions > > > > > > look like this: > > > > > > > > > > > > <map:pipeline> > > > > > > <map:match pattern="XSPXSL*" > > > > > > > <map:generate type="serverpages" > > > > > > src="{1}.xsp.xsl"/> > > > > > > <map:transform type="cinclude"/> > > > > > > <map:serialize type="xml"/> > > > > > > </map:match> > > > > > > > > > > > > <map:match pattern="SP*" > > > > > > > <map:generate type="serverpages" > > > > > src="{1}.xsp"/> > > > > > > <map:transform type="cinclude"/> > > > > > > <map:serialize type="xml"/> > > > > > > </map:match> > > > > > > </map:pipeline> > > > > > > > > > > > > <map:pipeline> > > > > > > <map:match pattern="*.htm" > > > > > > > <map:generate > > > > > src="context://dummy.xml"/> > > > > > > <map:transform > > src="cocoon://SP{1}"/> > > > > > > <map:transform > > > > > > src="cocoon://XSPXSL{1}.htm"/> > > > > > > <map:serialize type="html"/> > > > > > > </map:match> > > > > > > > > > > > > <map:handle-errors> > > > > > > <map:transform > src="context://error2html.xsl"/ > > > > > > > > > <map:serialize status-code="500"/> > > > > > > </map:handle-errors> > > > > > > </map:pipeline> > > > > > > > > > > > > > > > > > > Thanks for your help! > > > > > > > > > > > > Harry > > > > > > > > > > > > -- > > > > > > > > > > > > > > > > > > +++ GMX - Mail, Messaging & more http://www.gmx.net +++ > > > > > > Bitte lächeln! Fotogalerie online mit GMX ohne eigene Homepage! > > > > > > > > > > > > > > > > > > > > --------------------------------------------------------------------- > > > > > > To unsubscribe, e-mail: [EMAIL PROTECTED] > > > > > > For additional commands, e-mail: > [EMAIL PROTECTED] > > > > > > > > > > > > > > > > -- > > > > > +++ GMX - Mail, Messaging & more http://www.gmx.net +++ > > > > > Bitte lächeln! Fotogalerie online mit GMX ohne eigene Homepage! > > > > > > > > > > > > > > > > > --------------------------------------------------------------------- > > > > > To unsubscribe, e-mail: [EMAIL PROTECTED] > > > > > For additional commands, e-mail: [EMAIL PROTECTED] > > > > > > > > > > > > > > > > > > > > > > > > > > > > --------------------------------------------------------------------- > > > > To unsubscribe, e-mail: [EMAIL PROTECTED] > > > > For additional commands, e-mail: [EMAIL PROTECTED] > > > > > > > > > >-- > > >+++ GMX - Mail, Messaging & more http://www.gmx.net +++ > > >Bitte lächeln! Fotogalerie online mit GMX ohne eigene Homepage! > > > > > > > > >--------------------------------------------------------------------- > > >To unsubscribe, e-mail: [EMAIL PROTECTED] > > >For additional commands, e-mail: [EMAIL PROTECTED] > > > > > > --------------------------------------------------------------------- > > To unsubscribe, e-mail: [EMAIL PROTECTED] > > For additional commands, e-mail: [EMAIL PROTECTED] > > > > -- > +++ GMX - Mail, Messaging & more http://www.gmx.net +++ > Bitte lächeln! Fotogalerie online mit GMX ohne eigene Homepage! > > > --------------------------------------------------------------------- > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] > -- +++ GMX - Mail, Messaging & more http://www.gmx.net +++ Bitte lächeln! Fotogalerie online mit GMX ohne eigene Homepage! --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]