Maven 1.x LinkCheck Plugin
  1. Maven 1.x LinkCheck Plugin
  2. MPLINKCHECK-27

The report is incomplete if one or more files has errors in them

    Details

    • Type: Bug Bug
    • Status: Closed Closed
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: 1.4
    • Fix Version/s: 1.4.1
    • Labels:
      None
    • Environment:
      Maven 1.0.2, Windows XP
    • Testcase included:
      yes
    • Number of attachments :
      2

      Description

      If you run linkcheck on a project and there is more than zero files with errors, then the resulting report is incomplete. The table that shows which files have errors and warnings is not shown. The reason for this is a bug in linkcheck.jsl and the jelly syntax. Testcase and patch coming soon.

      This link was helpful in finding the reason for the failure:
      http://mail-archives.apache.org/mod_mbox/maven-users/200506.mbox/%3Cc38ad92d0506212340686a5dcb@mail.gmail.com%3E

      Here's the stack trace I get:

      Links checked.
      Caught exception evaluating: org.apache.commons.jexl.ExpressionImpl@15078d. Reason: java.lang.Exception: Invalid comparison : GT
      java.lang.Exception: Invalid comparison : GT
      at org.apache.commons.jexl.parser.ASTGTNode.value(ASTGTNode.java:104)
      at org.apache.commons.jexl.parser.ASTExpression.value(ASTExpression.java:85)
      at org.apache.commons.jexl.ExpressionImpl.evaluate(ExpressionImpl.java:123)
      at org.apache.commons.jelly.expression.jexl.JexlExpression.evaluate(JexlExpression.java:115)
      at org.apache.commons.jelly.expression.ExpressionSupport.evaluateRecurse(ExpressionSupport.java:106)
      at org.apache.commons.jelly.expression.ExpressionSupport.evaluateAsBoolean(ExpressionSupport.java:116)
      at org.apache.commons.jelly.tags.core.IfTag.doTag(IfTag.java:87)
      at org.apache.commons.jelly.impl.TagScript.run(TagScript.java:279)
      at org.apache.commons.jelly.impl.ScriptBlock.run(ScriptBlock.java:135)
      at org.apache.commons.jelly.TagSupport.invokeBody(TagSupport.java:233)
      at org.apache.commons.jelly.impl.StaticTag.doTag(StaticTag.java:111)
      at org.apache.commons.jelly.impl.StaticTagScript.run(StaticTagScript.java:145)
      at org.apache.commons.jelly.impl.ScriptBlock.run(ScriptBlock.java:135)
      at org.apache.commons.jelly.TagSupport.invokeBody(TagSupport.java:233)
      at org.apache.commons.jelly.impl.StaticTag.doTag(StaticTag.java:111)
      at org.apache.commons.jelly.impl.StaticTagScript.run(StaticTagScript.java:145)
      at org.apache.commons.jelly.impl.ScriptBlock.run(ScriptBlock.java:135)
      at org.apache.commons.jelly.TagSupport.invokeBody(TagSupport.java:233)
      at org.apache.commons.jelly.impl.StaticTag.doTag(StaticTag.java:111)
      at org.apache.commons.jelly.impl.StaticTagScript.run(StaticTagScript.java:145)
      at org.apache.commons.jelly.impl.ScriptBlock.run(ScriptBlock.java:135)
      at org.apache.commons.jelly.TagSupport.invokeBody(TagSupport.java:233)
      at org.apache.commons.jelly.tags.jsl.TemplateTag$1.run(TemplateTag.java:160)
      at org.dom4j.rule.Mode.fireRule(Mode.java:51)
      at org.dom4j.rule.Mode.applyTemplates(Mode.java:71)
      at org.dom4j.rule.RuleManager$1.run(RuleManager.java:148)
      at org.dom4j.rule.Mode.fireRule(Mode.java:51)
      at org.dom4j.rule.Stylesheet.run(Stylesheet.java:73)
      at org.dom4j.rule.Stylesheet.run(Stylesheet.java:65)
      at org.dom4j.rule.Stylesheet.run(Stylesheet.java:57)
      at org.apache.commons.jelly.tags.jsl.StylesheetTag.doTag(StylesheetTag.java:124)
      at org.apache.commons.jelly.impl.TagScript.run(TagScript.java:279)
      at org.apache.commons.jelly.JellyContext.runScript(JellyContext.java:634)
      at org.apache.commons.jelly.JellyContext.runScript(JellyContext.java:584)
      at org.apache.commons.jelly.tags.core.IncludeTag.doTag(IncludeTag.java:143)
      at org.apache.commons.jelly.impl.TagScript.run(TagScript.java:279)
      at org.apache.commons.jelly.impl.ScriptBlock.run(ScriptBlock.java:135)
      at org.apache.commons.jelly.TagSupport.invokeBody(TagSupport.java:233)
      at org.apache.commons.jelly.tags.core.FileTag.writeBody(FileTag.java:207)
      at org.apache.commons.jelly.tags.core.FileTag.doTag(FileTag.java:103)
      at org.apache.commons.jelly.impl.TagScript.run(TagScript.java:279)
      at org.apache.commons.jelly.impl.ScriptBlock.run(ScriptBlock.java:135)
      at org.apache.commons.jelly.impl.DynamicTag.doTag(DynamicTag.java:125)
      at org.apache.commons.jelly.impl.TagScript.run(TagScript.java:279)
      at org.apache.commons.jelly.impl.ScriptBlock.run(ScriptBlock.java:135)
      at org.apache.maven.jelly.tags.werkz.MavenGoalTag.runBodyTag(MavenGoalTag.java:79)
      at org.apache.maven.jelly.tags.werkz.MavenGoalTag$MavenGoalAction.performAction(MavenGoalTag.java:110)
      at com.werken.werkz.Goal.fire(Goal.java:639)
      at com.werken.werkz.Goal.attain(Goal.java:575)
      at com.werken.werkz.WerkzProject.attainGoal(WerkzProject.java:193)
      at org.apache.maven.jelly.tags.werkz.MavenAttainGoalTag.doTag(MavenAttainGoalTag.java:127)
      at org.apache.commons.jelly.impl.TagScript.run(TagScript.java:279)
      at org.apache.commons.jelly.impl.ScriptBlock.run(ScriptBlock.java:135)
      at org.apache.commons.jelly.TagSupport.invokeBody(TagSupport.java:233)
      at com.werken.werkz.jelly.PostGoalTag$1.firePostGoal(PostGoalTag.java:87)
      at com.werken.werkz.Goal.firePostGoalCallbacks(Goal.java:710)
      at com.werken.werkz.Goal.fire(Goal.java:654)
      at com.werken.werkz.Goal.attain(Goal.java:575)
      at com.werken.werkz.WerkzProject.attainGoal(WerkzProject.java:193)
      at org.apache.maven.jelly.tags.werkz.MavenAttainGoalTag.doTag(MavenAttainGoalTag.java:127)
      at org.apache.commons.jelly.impl.TagScript.run(TagScript.java:279)
      at org.apache.commons.jelly.impl.ScriptBlock.run(ScriptBlock.java:135)
      at org.apache.maven.jelly.tags.werkz.MavenGoalTag.runBodyTag(MavenGoalTag.java:79)
      at org.apache.maven.jelly.tags.werkz.MavenGoalTag$MavenGoalAction.performAction(MavenGoalTag.java:110)
      at com.werken.werkz.Goal.fire(Goal.java:639)
      at com.werken.werkz.Goal.attain(Goal.java:575)
      at com.werken.werkz.Goal.attainPrecursors(Goal.java:488)
      at com.werken.werkz.Goal.attain(Goal.java:573)
      at com.werken.werkz.WerkzProject.attainGoal(WerkzProject.java:193)
      at org.apache.maven.jelly.tags.werkz.MavenAttainGoalTag.doTag(MavenAttainGoalTag.java:127)
      at org.apache.commons.jelly.impl.TagScript.run(TagScript.java:279)
      at org.apache.commons.jelly.impl.ScriptBlock.run(ScriptBlock.java:135)
      at org.apache.maven.jelly.tags.werkz.MavenGoalTag.runBodyTag(MavenGoalTag.java:79)
      at org.apache.maven.jelly.tags.werkz.MavenGoalTag$MavenGoalAction.performAction(MavenGoalTag.java:110)
      at com.werken.werkz.Goal.fire(Goal.java:639)
      at com.werken.werkz.Goal.attain(Goal.java:575)
      at org.apache.maven.plugin.PluginManager.attainGoals(PluginManager.java:671)
      at org.apache.maven.MavenSession.attainGoals(MavenSession.java:263)
      at org.apache.maven.cli.App.doMain(App.java:488)
      at org.apache.maven.cli.App.main(App.java:1239)
      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:324)
      at com.werken.forehead.Forehead.run(Forehead.java:551)
      at com.werken.forehead.Forehead.main(Forehead.java:581)

        Activity

        Hide
        Dennis Lundberg added a comment -

        Testcase that reproduces this issue.

        Show
        Dennis Lundberg added a comment - Testcase that reproduces this issue.
        Hide
        Dennis Lundberg added a comment -

        Patch to fix this issue.

        Show
        Dennis Lundberg added a comment - Patch to fix this issue.
        Hide
        Arnaud Heritier added a comment -

        Thanks for all. The patch is applyed and a SNAPSHOT (1.4.1) is deployed.
        Before to close this issue I have to add a check in the new test to verify that the table is complete.

        Show
        Arnaud Heritier added a comment - Thanks for all. The patch is applyed and a SNAPSHOT (1.4.1) is deployed. Before to close this issue I have to add a check in the new test to verify that the table is complete.
        Hide
        Arnaud Heritier added a comment -

        File parsed to check if it is valid

        Show
        Arnaud Heritier added a comment - File parsed to check if it is valid

          People

          • Assignee:
            Arnaud Heritier
            Reporter:
            Dennis Lundberg
          • Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved: