[ 
http://jira.codehaus.org/browse/MOJO-1517?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jochen Wiedmann updated MOJO-1517:
----------------------------------

    Assignee: Jochen Wiedmann

> XML plugin transform fails when XSL imports from grandparent directories
> ------------------------------------------------------------------------
>
>                 Key: MOJO-1517
>                 URL: http://jira.codehaus.org/browse/MOJO-1517
>             Project: Mojo
>          Issue Type: Bug
>            Reporter: Tim Carpenter
>            Assignee: Jochen Wiedmann
>
> If my XSL file has something like
> <xsl:stylesheet>
>     <xsl:import href="../../somefile.xsl"/>
>     <xsl:template ...>
>     </xsl:template>
> </xsl:stylesheet>
> then the plugin throws an exception (the exception is really caused by 
> classworlds) and the transformation fail
> java.lang.StringIndexOutOfBoundsException: String index out of range: -1
>       at java.lang.String.substring(String.java:1937)
>       at org.codehaus.classworlds.UrlUtils.normalizeUrlPath(UrlUtils.java:28)
>       at 
> org.codehaus.classworlds.DefaultClassRealm.getResource(DefaultClassRealm.java:284)
>       at 
> org.codehaus.classworlds.DefaultClassRealm.getResource(DefaultClassRealm.java:314)
>       at 
> org.codehaus.classworlds.RealmClassLoader.getResource(RealmClassLoader.java:237)
>       at org.codehaus.mojo.xml.Resolver.resolveAsResource(Resolver.java:209)
>       at org.codehaus.mojo.xml.Resolver.resolve(Resolver.java:280)
>       at org.codehaus.mojo.xml.Resolver.resolve(Resolver.java:112)
>       at 
> net.sf.saxon.style.XSLGeneralIncorporate.getIncludedStylesheet(XSLGeneralIncorporate.java:104)
>       at 
> net.sf.saxon.style.XSLStylesheet.spliceIncludes(XSLStylesheet.java:754)
>       at 
> net.sf.saxon.style.XSLGeneralIncorporate.getIncludedStylesheet(XSLGeneralIncorporate.java:168)
>       at 
> net.sf.saxon.style.XSLStylesheet.spliceIncludes(XSLStylesheet.java:754)
>       at net.sf.saxon.style.XSLStylesheet.preprocess(XSLStylesheet.java:676)
>       at 
> net.sf.saxon.PreparedStylesheet.setStylesheetDocument(PreparedStylesheet.java:331)
>       at net.sf.saxon.PreparedStylesheet.prepare(PreparedStylesheet.java:163)
>       at 
> net.sf.saxon.TransformerFactoryImpl.newTemplates(TransformerFactoryImpl.java:139)
>       at 
> org.codehaus.mojo.xml.TransformMojo.getTemplate(TransformMojo.java:167)
>       at org.codehaus.mojo.xml.TransformMojo.transform(TransformMojo.java:451)
>       at org.codehaus.mojo.xml.TransformMojo.execute(TransformMojo.java:585)
>       at 
> org.apache.maven.plugin.DefaultPluginManager.executeMojo(DefaultPluginManager.java:490)
>       at 
> org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoals(DefaultLifecycleExecutor.java:694)
>       at 
> org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalWithLifecycle(DefaultLifecycleExecutor.java:556)
>       at 
> org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoal(DefaultLifecycleExecutor.java:535)
>       at 
> org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalAndHandleFailures(DefaultLifecycleExecutor.java:387)
>       at 
> org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeTaskSegments(DefaultLifecycleExecutor.java:348)
>       at 
> org.apache.maven.lifecycle.DefaultLifecycleExecutor.execute(DefaultLifecycleExecutor.java:180)
>       at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:328)
>       at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:138)
>       at org.apache.maven.cli.MavenCli.main(MavenCli.java:362)
>       at 
> org.apache.maven.cli.compat.CompatibleMain.main(CompatibleMain.java:60)
>       at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>       at 
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
>       at 
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>       at java.lang.reflect.Method.invoke(Method.java:597)
>       at org.codehaus.classworlds.Launcher.launchEnhanced(Launcher.java:315)
>       at org.codehaus.classworlds.Launcher.launch(Launcher.java:255)
>       at org.codehaus.classworlds.Launcher.mainWithExitCode(Launcher.java:430)
>       at org.codehaus.classworlds.Launcher.main(Launcher.java:375)
> The UrlUtils.normalizeUrlPath is pretty dodgy, it tried to change paths like 
> x/y/../z
> to
> x/z
> but when the path starts with ../ (as in this case) it does not work.

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

        

---------------------------------------------------------------------
To unsubscribe from this list, please visit:

    http://xircles.codehaus.org/manage_email


Reply via email to