You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@maven.apache.org by Roos Robin <ro...@op.fi> on 2016/01/18 08:55:08 UTC

doxia-module-confluence : NullPointerException parsing table cell with single space

Hi Folks

I have chosen to use Confluence format to generate my maven site, primarily because of good table support.

I have found that doxia-module-confluence falls over with a NullPointerException if an empty cell is represented as a single space.

Confluence tables usually require this empty space, or they collapse the cell to be non-existant.

Information pertaining to this failure is below.

Let me know what more I can usefully provide.

Kind regards, Robin.




File: src/site/confluence/tables.confluence


Here is a 3 column table with headers, one row, and data in every column:

||One||Two||Three||
|1|2|3|

Now there is no data in column Two

||One||Two||Three||
|1||3|

Now there is a space in column Two

||One||Two||Three||
|1| |3|


pom.xml excerpt


</build>

...
    </plugins>
...
        <plugin>

            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-site-plugin</artifactId>
            <version>3.4</version>
            <dependencies>
                <dependency>
                    <groupId>org.apache.maven.doxia</groupId>
                    <artifactId>doxia-module-confluence</artifactId>
                    <version>1.6</version>
                </dependency>
                <dependency>
                    <groupId>org.apache.maven.doxia</groupId>
                    <artifactId>doxia-module-markdown</artifactId>
                    <version>1.6</version>
                </dependency>
            </dependencies>
        </plugin>
    </plugins>
</build>


mvn -X clean site


[ERROR] Failed to execute goal org.apache.maven.plugins:maven-site-plugin:3.4:site (default-site) on project fitnesse-calypso: Error parsing '/Users/robin/tmp3/fitnesse-calypso/src/site/confluence/tables.confluence': line [15] null: ParseException: NullPointerException -> [Help 1]
org.apache.maven.lifecycle.LifecycleExecutionException: Failed to execute goal org.apache.maven.plugins:maven-site-plugin:3.4:site (default-site) on project fitnesse-calypso: Error parsing '/Users/robin/tmp3/fitnesse-calypso/src/site/confluence/tables.confluence': line [15] null
        at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:212)
        at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:153)
        at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:145)
        at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:116)
        at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:80)
        at org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build(SingleThreadedBuilder.java:51)
        at org.apache.maven.lifecycle.internal.LifecycleStarter.execute(LifecycleStarter.java:128)
        at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:307)
        at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:193)
        at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:106)
        at org.apache.maven.cli.MavenCli.execute(MavenCli.java:863)
        at org.apache.maven.cli.MavenCli.doMain(MavenCli.java:288)
        at org.apache.maven.cli.MavenCli.main(MavenCli.java:199)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:497)
        at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:289)
        at org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:229)
        at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:415)
        at org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:356)
Caused by: org.apache.maven.plugin.MojoExecutionException: Error parsing '/Users/robin/tmp3/fitnesse-calypso/src/site/confluence/tables.confluence': line [15] null
        at org.apache.maven.plugins.site.render.SiteMojo.execute(SiteMojo.java:146)
        at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:134)
        at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:207)
        ... 20 more
Caused by: org.apache.maven.doxia.siterenderer.RendererException: Error parsing '/Users/robin/tmp3/fitnesse-calypso/src/site/confluence/tables.confluence': line [15] null
        at org.apache.maven.doxia.siterenderer.DefaultSiteRenderer.renderDocument(DefaultSiteRenderer.java:406)
        at org.apache.maven.doxia.siterenderer.DoxiaDocumentRenderer.renderDocument(DoxiaDocumentRenderer.java:51)
        at org.apache.maven.doxia.siterenderer.DefaultSiteRenderer.renderModule(DefaultSiteRenderer.java:311)
        at org.apache.maven.doxia.siterenderer.DefaultSiteRenderer.render(DefaultSiteRenderer.java:129)
        at org.apache.maven.plugins.site.render.SiteMojo.renderDoxiaDocuments(SiteMojo.java:261)
        at org.apache.maven.plugins.site.render.SiteMojo.renderLocale(SiteMojo.java:172)
        at org.apache.maven.plugins.site.render.SiteMojo.execute(SiteMojo.java:141)
        ... 22 more
Caused by: org.apache.maven.doxia.parser.ParseException
        at org.apache.maven.doxia.module.confluence.ConfluenceParser.parse(ConfluenceParser.java:133)
        at org.apache.maven.doxia.DefaultDoxia.parse(DefaultDoxia.java:65)
        at org.apache.maven.doxia.siterenderer.DefaultSiteRenderer.renderDocument(DefaultSiteRenderer.java:398)
        ... 28 more
Caused by: java.lang.NullPointerException
        at org.apache.maven.doxia.module.confluence.parser.AbstractFatherBlock.traverse(AbstractFatherBlock.java:72)
        at org.apache.maven.doxia.module.confluence.parser.AbstractFatherBlock.traverse(AbstractFatherBlock.java:72)
        at org.apache.maven.doxia.module.confluence.parser.AbstractFatherBlock.traverse(AbstractFatherBlock.java:72)
        at org.apache.maven.doxia.module.confluence.ConfluenceParser.parse(ConfluenceParser.java:125)
        ... 30 more



Re: doxia-module-confluence : NullPointerException parsing table cell with single space

Posted by Hervé BOUTEMY <he...@free.fr>.
please open a Jira issue:
https://issues.apache.org/jira/browse/DOXIA/

then, if you can, in addition to your explanations, please provide your test 
case as a patch to unit test for the Doxia module:
http://svn.apache.org/repos/asf/maven/doxia/doxia/trunk/doxia-modules/doxia-module-confluence/

and ideally, a patch to fix the issue :)


I'll release Doxia 1.7 shortly, to be able release maven-site-plugin 3.5

I'll try to fix your issue, but not sure (markup parsing is not my main 
skill...)

Regards,

Hervé

Le lundi 18 janvier 2016 07:55:08 Roos Robin a écrit :
> Hi Folks
> 
> I have chosen to use Confluence format to generate my maven site, primarily
> because of good table support.
> 
> I have found that doxia-module-confluence falls over with a
> NullPointerException if an empty cell is represented as a single space.
> 
> Confluence tables usually require this empty space, or they collapse the
> cell to be non-existant.
> 
> Information pertaining to this failure is below.
> 
> Let me know what more I can usefully provide.
> 
> Kind regards, Robin.
> 
> 
> 
> 
> File: src/site/confluence/tables.confluence
> 
> Here is a 3 column table with headers, one row, and data in every column:
> ||One||Two||Three||
> |
> |1|2|3|
> 
> Now there is no data in column Two
> 
> ||One||Two||Three||
> |
> |1||3|
> 
> Now there is a space in column Two
> 
> ||One||Two||Three||
> |
> |1| |3|
> 
> pom.xml excerpt
> 
> 
> </build>
> 
> ...
>     </plugins>
> ...
>         <plugin>
> 
>             <groupId>org.apache.maven.plugins</groupId>
>             <artifactId>maven-site-plugin</artifactId>
>             <version>3.4</version>
>             <dependencies>
>                 <dependency>
>                     <groupId>org.apache.maven.doxia</groupId>
>                     <artifactId>doxia-module-confluence</artifactId>
>                     <version>1.6</version>
>                 </dependency>
>                 <dependency>
>                     <groupId>org.apache.maven.doxia</groupId>
>                     <artifactId>doxia-module-markdown</artifactId>
>                     <version>1.6</version>
>                 </dependency>
>             </dependencies>
>         </plugin>
>     </plugins>
> </build>
> 
> 
> mvn -X clean site
> 
> 
> [ERROR] Failed to execute goal
> org.apache.maven.plugins:maven-site-plugin:3.4:site (default-site) on
> project fitnesse-calypso: Error parsing
> '/Users/robin/tmp3/fitnesse-calypso/src/site/confluence/tables.confluence':
> line [15] null: ParseException: NullPointerException -> [Help 1]
> org.apache.maven.lifecycle.LifecycleExecutionException: Failed to execute
> goal org.apache.maven.plugins:maven-site-plugin:3.4:site (default-site) on
> project fitnesse-calypso: Error parsing
> '/Users/robin/tmp3/fitnesse-calypso/src/site/confluence/tables.confluence':
> line [15] null at
> org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:
> 212) at
> org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:
> 153) at
> org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:
> 145) at
> org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(Lif
> ecycleModuleBuilder.java:116) at
> org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(Lif
> ecycleModuleBuilder.java:80) at
> org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBu
> ilder.build(SingleThreadedBuilder.java:51) at
> org.apache.maven.lifecycle.internal.LifecycleStarter.execute(LifecycleStart
> er.java:128) at
> org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:307) at
> org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:193) at
> org.apache.maven.DefaultMaven.execute(DefaultMaven.java:106) at
> org.apache.maven.cli.MavenCli.execute(MavenCli.java:863) at
> org.apache.maven.cli.MavenCli.doMain(MavenCli.java:288) at
> org.apache.maven.cli.MavenCli.main(MavenCli.java:199)
>         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>         at
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:6
> 2) at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImp
> l.java:43) at java.lang.reflect.Method.invoke(Method.java:497)
>         at
> org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.j
> ava:289) at
> org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:229)
> at
> org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher
> .java:415) at
> org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:356)
> Caused by: org.apache.maven.plugin.MojoExecutionException: Error parsing
> '/Users/robin/tmp3/fitnesse-calypso/src/site/confluence/tables.confluence':
> line [15] null at
> org.apache.maven.plugins.site.render.SiteMojo.execute(SiteMojo.java:146) at
> org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildP
> luginManager.java:134) at
> org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:
> 207) ... 20 more
> Caused by: org.apache.maven.doxia.siterenderer.RendererException: Error
> parsing
> '/Users/robin/tmp3/fitnesse-calypso/src/site/confluence/tables.confluence':
> line [15] null at
> org.apache.maven.doxia.siterenderer.DefaultSiteRenderer.renderDocument(Defa
> ultSiteRenderer.java:406) at
> org.apache.maven.doxia.siterenderer.DoxiaDocumentRenderer.renderDocument(Do
> xiaDocumentRenderer.java:51) at
> org.apache.maven.doxia.siterenderer.DefaultSiteRenderer.renderModule(Defaul
> tSiteRenderer.java:311) at
> org.apache.maven.doxia.siterenderer.DefaultSiteRenderer.render(DefaultSiteR
> enderer.java:129) at
> org.apache.maven.plugins.site.render.SiteMojo.renderDoxiaDocuments(SiteMojo
> .java:261) at
> org.apache.maven.plugins.site.render.SiteMojo.renderLocale(SiteMojo.java:17
> 2) at
> org.apache.maven.plugins.site.render.SiteMojo.execute(SiteMojo.java:141)
> ... 22 more
> Caused by: org.apache.maven.doxia.parser.ParseException
>         at
> org.apache.maven.doxia.module.confluence.ConfluenceParser.parse(ConfluenceP
> arser.java:133) at
> org.apache.maven.doxia.DefaultDoxia.parse(DefaultDoxia.java:65) at
> org.apache.maven.doxia.siterenderer.DefaultSiteRenderer.renderDocument(Defa
> ultSiteRenderer.java:398) ... 28 more
> Caused by: java.lang.NullPointerException
>         at
> org.apache.maven.doxia.module.confluence.parser.AbstractFatherBlock.travers
> e(AbstractFatherBlock.java:72) at
> org.apache.maven.doxia.module.confluence.parser.AbstractFatherBlock.travers
> e(AbstractFatherBlock.java:72) at
> org.apache.maven.doxia.module.confluence.parser.AbstractFatherBlock.travers
> e(AbstractFatherBlock.java:72) at
> org.apache.maven.doxia.module.confluence.ConfluenceParser.parse(ConfluenceP
> arser.java:125) ... 30 more


---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@maven.apache.org
For additional commands, e-mail: users-help@maven.apache.org