History | Log In     View a printable version of the current page.  
Issue Details (XML | Word | Printable)

Key: MPLINKCHECK-27
Type: Bug Bug
Status: Closed Closed
Resolution: Fixed
Priority: Major Major
Assignee: Arnaud Heritier
Reporter: Dennis Lundberg
Votes: 0
Watchers: 0
Operations

If you were logged in you would be able to see more operations.
Maven 1.x LinkCheck Plugin

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

Created: 22/May/06 02:56 PM   Updated: 25/Mar/07 05:30 PM
Component/s: None
Affects Version/s: 1.4
Fix Version/s: 1.4.1

Time Tracking:
Not Specified

File Attachments: 1. Zip Archive MPLINKCHECK-27-testcase.zip (0.9 kb)
2. Text File MPLINKCHECK-27.patch (2 kb)

Environment: Maven 1.0.2, Windows XP

Testcase included: yes


 Description  « Hide
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)



 All   Comments   Work Log   Change History      Sort Order: Ascending order - Click to sort in descending order
Dennis Lundberg - 22/May/06 03:17 PM
Testcase that reproduces this issue.

Dennis Lundberg - 22/May/06 03:29 PM
Patch to fix this issue.

Arnaud Heritier - 25/May/06 01:32 AM
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.

Arnaud Heritier - 25/Mar/07 05:30 PM
File parsed to check if it is valid