XDoclet fails to parse the java final keyword ---------------------------------------------
Key: XDT-1679 URL: http://opensource.atlassian.com/projects/xdoclet/browse/XDT-1679 Project: XDoclet Type: Bug Versions: 1.3 Reporter: Skylar Sutton Assigned to: xdoclet-devel (Use for new issues) Priority: Critical XDoclet fails our build process when it encounters a java final keyword. The keyword is supported by Java and therefore should be supported by XDoclet. See code snippet and stack trace below: // BEGIN CODE if( this.getEmailConfigs() != null ) { for (final EauthEmailConfig emailConfig : this.getEmailConfigs() ) { // !!!-- THIS IS THE LINE THAT BREAKS --!!! if( StringUtils.equals(emailType, emailConfig.getEmailType()) ) { eauthConfig = emailConfig; break; } } } // END CODE // BEGIN STACK TRACE [EMAIL PROTECTED] ssutton]$ ant ddgen -buildfile /enterprise/build/build.xml java.compile: [javac] Compiling 1 source file jar: [jar] Building jar: enterprise.jar ddgen: [ejbdoclet] (XDocletMain.start 47 ) Running <deploymentdescriptor/> [ejbdoclet] Generating EJB deployment descriptor (ejb-jar.xml). [ejbdoclet] xjavadoc.ParseException: Parse error at line 156, column 71. Encountered: : [ejbdoclet] at xjavadoc.SimpleParser.generateParseException(SimpleParser.java:6652) [ejbdoclet] at xjavadoc.SimpleParser.jj_consume_token(SimpleParser.java:6612) [ejbdoclet] at xjavadoc.SimpleParser.ForStatement(SimpleParser.java:3086) [ejbdoclet] at xjavadoc.SimpleParser.Statement(SimpleParser.java:2631) [ejbdoclet] at xjavadoc.SimpleParser.BlockStatement(SimpleParser.java:2776) [ejbdoclet] at xjavadoc.SimpleParser.Block(SimpleParser.java:2728) [ejbdoclet] at xjavadoc.SimpleParser.Statement(SimpleParser.java:2587) [ejbdoclet] at xjavadoc.SimpleParser.IfStatement(SimpleParser.java:2992) [ejbdoclet] at xjavadoc.SimpleParser.Statement(SimpleParser.java:2622) [ejbdoclet] at xjavadoc.SimpleParser.BlockStatement(SimpleParser.java:2776) [ejbdoclet] at xjavadoc.SimpleParser.Block(SimpleParser.java:2728) [ejbdoclet] at xjavadoc.SimpleParser.MethodDeclaration(SimpleParser.java:1135) [ejbdoclet] at xjavadoc.SimpleParser.ClassOrInterfaceBodyDeclaration(SimpleParser.java:861) [ejbdoclet] at xjavadoc.SimpleParser.ClassOrInterfaceBody(SimpleParser.java:795) [ejbdoclet] at xjavadoc.SimpleParser.ClassOrInterfaceDeclaration(SimpleParser.java:567) [ejbdoclet] at xjavadoc.SimpleParser.TypeDeclaration(SimpleParser.java:481) [ejbdoclet] at xjavadoc.SimpleParser.CompilationUnit(SimpleParser.java:330) [ejbdoclet] at xjavadoc.SimpleParser.populate(SimpleParser.java:272) [ejbdoclet] at xjavadoc.SourceClass.parse(SourceClass.java:758) [ejbdoclet] at xjavadoc.SourceClass.<init>(SourceClass.java:124) [ejbdoclet] at xjavadoc.XJavaDoc.scanAndPut(XJavaDoc.java:885) [ejbdoclet] at xjavadoc.XJavaDoc.getXClass(XJavaDoc.java:406) [ejbdoclet] at xjavadoc.SourceClass.qualify(SourceClass.java:375) [ejbdoclet] at xjavadoc.AbstractClass.resolveImportedClasses(AbstractClass.java:822) [ejbdoclet] at xjavadoc.SimpleParser.ClassOrInterfaceDeclaration(SimpleParser.java:542) [ejbdoclet] at xjavadoc.SimpleParser.TypeDeclaration(SimpleParser.java:481) [ejbdoclet] at xjavadoc.SimpleParser.CompilationUnit(SimpleParser.java:330) [ejbdoclet] at xjavadoc.SimpleParser.populate(SimpleParser.java:272) [ejbdoclet] at xjavadoc.SourceClass.parse(SourceClass.java:758) [ejbdoclet] at xjavadoc.SourceClass.<init>(SourceClass.java:124) [ejbdoclet] at xjavadoc.XJavaDoc.scanAndPut(XJavaDoc.java:885) [ejbdoclet] at xjavadoc.XJavaDoc.getXClass(XJavaDoc.java:406) [ejbdoclet] at xjavadoc.XJavaDoc.getOuterSourceClasses(XJavaDoc.java:760) [ejbdoclet] at xjavadoc.XJavaDoc.getSourceClasses(XJavaDoc.java:323) [ejbdoclet] at xdoclet.modules.ejb.session.SessionTagsHandler.forAllSessionBeans(SessionTagsHandler.java:237) [ejbdoclet] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) [ejbdoclet] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) [ejbdoclet] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) [ejbdoclet] at java.lang.reflect.Method.invoke(Method.java:585) [ejbdoclet] at xdoclet.template.TemplateEngine.invoke(TemplateEngine.java:641) [ejbdoclet] at xdoclet.template.TemplateEngine.invokeMethod(TemplateEngine.java:540) [ejbdoclet] at xdoclet.template.TemplateEngine.invokeBlockMethod(TemplateEngine.java:965) [ejbdoclet] at xdoclet.template.TemplateEngine.handleBlockTag(TemplateEngine.java:932) [ejbdoclet] at xdoclet.template.TemplateEngine.handleTag(TemplateEngine.java:472) [ejbdoclet] at xdoclet.template.TemplateEngine.generate(TemplateEngine.java:348) [ejbdoclet] at xdoclet.template.TemplateEngine.start(TemplateEngine.java:415) [ejbdoclet] at xdoclet.TemplateSubTask.startEngine(TemplateSubTask.java:562) [ejbdoclet] at xdoclet.TemplateSubTask.startProcessForAll(TemplateSubTask.java:618) [ejbdoclet] at xdoclet.TemplateSubTask.startProcess(TemplateSubTask.java:599) [ejbdoclet] at xdoclet.XmlSubTask.startProcess(XmlSubTask.java:227) [ejbdoclet] at xdoclet.modules.ejb.dd.EjbDotXmlSubTask.execute(EjbDotXmlSubTask.java:240) [ejbdoclet] at xdoclet.XDocletMain.start(XDocletMain.java:48) [ejbdoclet] at xdoclet.DocletTask.start(DocletTask.java:468) [ejbdoclet] at xjavadoc.ant.XJavadocTask.execute(XJavadocTask.java:105) [ejbdoclet] at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:275) [ejbdoclet] at org.apache.tools.ant.Task.perform(Task.java:364) [ejbdoclet] at org.apache.tools.ant.Target.execute(Target.java:341) [ejbdoclet] at org.apache.tools.ant.Target.performTasks(Target.java:369) [ejbdoclet] at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1216) [ejbdoclet] at org.apache.tools.ant.Project.executeTarget(Project.java:1185) [ejbdoclet] at org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:40) [ejbdoclet] at org.apache.tools.ant.Project.executeTargets(Project.java:1068) [ejbdoclet] at org.apache.tools.ant.Main.runBuild(Main.java:668) [ejbdoclet] at org.apache.tools.ant.Main.startAnt(Main.java:187) [ejbdoclet] at org.apache.tools.ant.launch.Launcher.run(Launcher.java:246) [ejbdoclet] at org.apache.tools.ant.launch.Launcher.main(Launcher.java:67) [ejbdoclet] Error parsing File /usr/local/home/ssutton/projects/efms_72/nextjet/enterprise/src/java/com/fedex/cc/eauth/domain/config/EauthPackageConfig.java:Parse error at line 156, column 71. Encountered: : [ejbdoclet] (XDocletMain.start 47 ) Running <weblogic/> [ejbdoclet] Generating weblogic-ejb-jar.xml. [ejbdoclet] (WebLogicSubTask.execute 428 ) EJB spec version 2.1 unknown for WLS subtask. Falling back to 2.0 [ejbdoclet] Generating weblogic-cmp-rdbms-jar.xml. // END STACK TRACE -- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: http://opensource.atlassian.com/projects/xdoclet/secure/Administrators.jspa - For more information on JIRA, see: http://www.atlassian.com/software/jira ------------------------------------------------------------------------- Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT & business topics through brief surveys-and earn cash http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV _______________________________________________ xdoclet-devel mailing list xdoclet-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/xdoclet-devel