From bitterfoxc at gmail.com Wed Apr 1 21:08:16 2015 From: bitterfoxc at gmail.com (ShinyaYoshida) Date: Thu, 2 Apr 2015 06:08:16 +0900 Subject: NPE for the package which don't have any constant value Message-ID: Hi, I found NPE for the package which don't have any constant value: /tmp/test/Test.java package test; public class Test { // there is no constant value in test packages } $ /PATH_TO_JAVADOC_NEXT_JDK_IMAGE/bin/javadoc -html5 -sourcepath /tmp test Loading source files for package test... Constructing Javadoc information... Standard Doclet version 1.8.0 Building tree for all the packages and classes... Generating /tmp/javadoc/test/Test.html... Generating /tmp/javadoc/test/package-frame.html... Generating /tmp/javadoc/test/package-summary.html... Generating /tmp/javadoc/test/package-tree.html... Generating /tmp/javadoc/constant-values.html... javadoc: error - java.lang.NullPointerException 1 error Here is the possible fix: diff -r 228f66693293 src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/ConstantsSummaryWriterImpl.java --- a/src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/ConstantsSummaryWriterImpl.java Tue Feb 24 16:13:47 2015 -0800 +++ b/src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/ConstantsSummaryWriterImpl.java Thu Apr 02 06:00:24 2015 +0900 @@ -347,7 +347,7 @@ * {@inheritDoc} */ public void addConstantSummaries(Content contentTree, Content summariesTree) { - if (configuration.allowTag(HtmlTag.SECTION)) + if (configuration.allowTag(HtmlTag.SECTION) && summaryTree != null) summariesTree.addContent(summaryTree); if (configuration.allowTag(HtmlTag.MAIN)) { mainTree.addContent(summariesTree); Regards, shinyafox(Shinya Yoshida) From bitterfoxc at gmail.com Wed Apr 1 21:32:12 2015 From: bitterfoxc at gmail.com (ShinyaYoshida) Date: Thu, 2 Apr 2015 06:32:12 +0900 Subject: NPE for the package which don't have any constant value In-Reply-To: <551C60F8.707@oracle.com> References: <551C60F8.707@oracle.com> Message-ID: Hi Jon, I've just filed this issue. Thank you for your advice. https://bugs.openjdk.java.net/browse/JDK-8076513 2015-04-02 6:19 GMT+09:00 Jonathan Gibbons : > Hi Shinya, > > I checked with the admin folk, and you should be able to file an entry for > this in bugs.openjdk.java.net, and then, submit an official contribution. > > -- Jon > > > > On 04/01/2015 02:08 PM, ShinyaYoshida wrote: > >> Hi, >> I found NPE for the package which don't have any constant value: >> >> /tmp/test/Test.java >> package test; >> public class Test >> { >> // there is no constant value in test packages >> } >> >> $ /PATH_TO_JAVADOC_NEXT_JDK_IMAGE/bin/javadoc -html5 -sourcepath /tmp >> test >> >> Loading source files for package test... >> Constructing Javadoc information... >> Standard Doclet version 1.8.0 >> Building tree for all the packages and classes... >> Generating /tmp/javadoc/test/Test.html... >> Generating /tmp/javadoc/test/package-frame.html... >> Generating /tmp/javadoc/test/package-summary.html... >> Generating /tmp/javadoc/test/package-tree.html... >> Generating /tmp/javadoc/constant-values.html... >> javadoc: error - java.lang.NullPointerException >> 1 error >> >> Here is the possible fix: >> diff -r 228f66693293 >> src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/ >> ConstantsSummaryWriterImpl.java >> --- >> a/src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/ >> ConstantsSummaryWriterImpl.java >> Tue Feb 24 16:13:47 2015 -0800 >> +++ >> b/src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/ >> ConstantsSummaryWriterImpl.java >> Thu Apr 02 06:00:24 2015 +0900 >> @@ -347,7 +347,7 @@ >> * {@inheritDoc} >> */ >> public void addConstantSummaries(Content contentTree, Content >> summariesTree) { >> - if (configuration.allowTag(HtmlTag.SECTION)) >> + if (configuration.allowTag(HtmlTag.SECTION) && summaryTree != >> null) >> summariesTree.addContent(summaryTree); >> if (configuration.allowTag(HtmlTag.MAIN)) { >> mainTree.addContent(summariesTree); >> >> Regards, >> shinyafox(Shinya Yoshida) >> > > From bitterfoxc at gmail.com Wed Apr 1 21:45:28 2015 From: bitterfoxc at gmail.com (ShinyaYoshida) Date: Thu, 2 Apr 2015 06:45:28 +0900 Subject: RFR 8076513: NPE for the package which don't have any constant value Message-ID: Hi, Please review my patch. bug: https://bugs.openjdk.java.net/browse/JDK-8076513 webrev: http://cr.openjdk.java.net/~shinyafox/8076513/webrev.00/ From bhavesh.x.patel at oracle.com Wed Apr 1 21:55:38 2015 From: bhavesh.x.patel at oracle.com (Bhavesh Patel) Date: Wed, 1 Apr 2015 14:55:38 -0700 (PDT) Subject: NPE for the package which don't have any constant value Message-ID: <37d41a4c-1ca5-42fb-8314-eedd80dd0103@default> Hi Shinya, Thanks you for identifying and contributing the fix for the issue. We have incorporated the fix in a patch that will be pushed to JDK 9 for HTML5 change. I have also added a test for this fix to it. Regards, Bhavesh. ----- Original Message ----- From: bitterfoxc at gmail.com To: javadoc-next-dev at openjdk.java.net Sent: Wednesday, April 1, 2015 2:08:36 PM GMT -08:00 US/Canada Pacific Subject: NPE for the package which don't have any constant value Hi, I found NPE for the package which don't have any constant value: /tmp/test/Test.java package test; public class Test { // there is no constant value in test packages } $ /PATH_TO_JAVADOC_NEXT_JDK_IMAGE/bin/javadoc -html5 -sourcepath /tmp test Loading source files for package test... Constructing Javadoc information... Standard Doclet version 1.8.0 Building tree for all the packages and classes... Generating /tmp/javadoc/test/Test.html... Generating /tmp/javadoc/test/package-frame.html... Generating /tmp/javadoc/test/package-summary.html... Generating /tmp/javadoc/test/package-tree.html... Generating /tmp/javadoc/constant-values.html... javadoc: error - java.lang.NullPointerException 1 error Here is the possible fix: diff -r 228f66693293 src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/ConstantsSummaryWriterImpl.java --- a/src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/ConstantsSummaryWriterImpl.java Tue Feb 24 16:13:47 2015 -0800 +++ b/src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/ConstantsSummaryWriterImpl.java Thu Apr 02 06:00:24 2015 +0900 @@ -347,7 +347,7 @@ * {@inheritDoc} */ public void addConstantSummaries(Content contentTree, Content summariesTree) { - if (configuration.allowTag(HtmlTag.SECTION)) + if (configuration.allowTag(HtmlTag.SECTION) && summaryTree != null) summariesTree.addContent(summaryTree); if (configuration.allowTag(HtmlTag.MAIN)) { mainTree.addContent(summariesTree); Regards, shinyafox(Shinya Yoshida) From jonathan.gibbons at oracle.com Wed Apr 1 23:26:19 2015 From: jonathan.gibbons at oracle.com (Jonathan Gibbons) Date: Wed, 01 Apr 2015 16:26:19 -0700 Subject: NPE for the package which don't have any constant value In-Reply-To: References: <551C60F8.707@oracle.com> Message-ID: <551C7E9B.1000808@oracle.com> Thanks, It looks like Bhavesh will take it from here. -- Jon On 04/01/2015 02:32 PM, ShinyaYoshida wrote: > Hi Jon, > I've just filed this issue. > Thank you for your advice. > > https://bugs.openjdk.java.net/browse/JDK-8076513 > > > 2015-04-02 6:19 GMT+09:00 Jonathan Gibbons > >: > > Hi Shinya, > > I checked with the admin folk, and you should be able to file an > entry for this in bugs.openjdk.java.net > , and then, submit an official > contribution. > > -- Jon > > > > On 04/01/2015 02:08 PM, ShinyaYoshida wrote: > > Hi, > I found NPE for the package which don't have any constant value: > > /tmp/test/Test.java > package test; > public class Test > { > // there is no constant value in test packages > } > > $ /PATH_TO_JAVADOC_NEXT_JDK_IMAGE/bin/javadoc -html5 > -sourcepath /tmp test > > Loading source files for package test... > Constructing Javadoc information... > Standard Doclet version 1.8.0 > Building tree for all the packages and classes... > Generating /tmp/javadoc/test/Test.html... > Generating /tmp/javadoc/test/package-frame.html... > Generating /tmp/javadoc/test/package-summary.html... > Generating /tmp/javadoc/test/package-tree.html... > Generating /tmp/javadoc/constant-values.html... > javadoc: error - java.lang.NullPointerException > 1 error > > Here is the possible fix: > diff -r 228f66693293 > src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/ConstantsSummaryWriterImpl.java > --- > a/src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/ConstantsSummaryWriterImpl.java > Tue Feb 24 16:13:47 2015 -0800 > +++ > b/src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/ConstantsSummaryWriterImpl.java > Thu Apr 02 06:00:24 2015 +0900 > @@ -347,7 +347,7 @@ > * {@inheritDoc} > */ > public void addConstantSummaries(Content contentTree, > Content > summariesTree) { > - if (configuration.allowTag(HtmlTag.SECTION)) > + if (configuration.allowTag(HtmlTag.SECTION) && > summaryTree != null) > summariesTree.addContent(summaryTree); > if (configuration.allowTag(HtmlTag.MAIN)) { > mainTree.addContent(summariesTree); > > Regards, > shinyafox(Shinya Yoshida) > > > From kumar.x.srinivasan at oracle.com Tue Apr 21 20:56:29 2015 From: kumar.x.srinivasan at oracle.com (kumar.x.srinivasan at oracle.com) Date: Tue, 21 Apr 2015 20:56:29 +0000 Subject: hg: javadoc-next/api/langtools: 8068397: Convert Tags to DocTree Message-ID: <201504212056.t3LKuTR0004690@aojmv0008> Changeset: daf4a5619a68 Author: ksrini Date: 2015-04-21 13:53 -0700 URL: http://hg.openjdk.java.net/javadoc-next/api/langtools/rev/daf4a5619a68 8068397: Convert Tags to DocTree ! src/jdk.compiler/share/classes/com/sun/source/util/DocTrees.java ! src/jdk.compiler/share/classes/com/sun/tools/doclint/HtmlTag.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/api/JavacTrees.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/parser/DocCommentParser.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/tree/DCTree.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/tree/DocTreeMaker.java ! src/jdk.javadoc/share/classes/com/sun/tools/doclets/Taglet.java ! src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/AbstractIndexWriter.java ! src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/AbstractMemberWriter.java ! src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/AnnotationTypeWriterImpl.java ! src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/ClassWriterImpl.java ! src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/ConfigurationImpl.java ! src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/HtmlDocletWriter.java ! src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/HtmlSerialFieldWriter.java ! src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/HtmlSerialMethodWriter.java ! src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/MethodWriterImpl.java ! src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/PackageWriterImpl.java ! src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/ProfilePackageWriterImpl.java ! src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/ProfileWriterImpl.java ! src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/PropertyWriterImpl.java ! src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/SubWriterHolderWriter.java ! src/jdk.javadoc/share/classes/com/sun/tools/doclets/formats/html/TagletWriterImpl.java ! src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/Configuration.java ! src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/MemberSummaryWriter.java ! src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/SerializedFormWriter.java ! src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/builders/MemberSummaryBuilder.java ! src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/builders/MethodBuilder.java ! src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/builders/SerializedFormBuilder.java ! src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/resources/doclets.properties ! src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/taglets/BasePropertyTaglet.java ! src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/taglets/BaseTaglet.java ! src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/taglets/CodeTaglet.java ! src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/taglets/DeprecatedTaglet.java ! src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/taglets/DocRootTaglet.java ! src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/taglets/InheritDocTaglet.java ! src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/taglets/LegacyTaglet.java ! src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/taglets/LiteralTaglet.java ! src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/taglets/ParamTaglet.java ! src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/taglets/PropertyGetterTaglet.java ! src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/taglets/ReturnTaglet.java ! src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/taglets/SeeTaglet.java ! src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/taglets/SimpleTaglet.java ! src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/taglets/Taglet.java ! src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/taglets/TagletManager.java ! src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/taglets/TagletWriter.java ! src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/taglets/ThrowsTaglet.java ! src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/taglets/ValueTaglet.java ! src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/util/ClassTree.java ! src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/util/DocFinder.java ! src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/util/IndexBuilder.java ! src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/util/Utils.java ! src/jdk.javadoc/share/classes/com/sun/tools/doclets/internal/toolkit/util/VisibleMemberMap.java + src/jdk.javadoc/share/classes/com/sun/tools/javadoc/CommentUtils.java ! src/jdk.javadoc/share/classes/com/sun/tools/javadoc/DocEnv.java ! src/jdk.javadoc/share/classes/com/sun/tools/javadoc/DocImpl.java + src/jdk.javadoc/share/classes/com/sun/tools/javadoc/DocTreeImpl.java ! src/jdk.javadoc/share/classes/com/sun/tools/javadoc/JavadocTool.java ! src/jdk.javadoc/share/classes/com/sun/tools/javadoc/RootDocImpl.java ! test/com/sun/javadoc/T6735320/SerialFieldTest.java ! test/com/sun/javadoc/T6735320/T6735320.java ! test/com/sun/javadoc/testBadPackageFileInJar/TestBadPackageFileInJar.java ! test/com/sun/javadoc/testBadSourceFile/TestBadSourceFile.java ! test/com/sun/javadoc/testCustomTag/TestCustomTag.java ! test/com/sun/javadoc/testHtmlTag/TestHtmlTag.java + test/com/sun/javadoc/testHtmlTag/pkg3/A.java + test/com/sun/javadoc/testHtmlTag/pkg3/package.html ! test/com/sun/javadoc/testJavaFX/TestJavaFX.java ! test/com/sun/javadoc/testJavaFX/pkg1/D.java ! test/com/sun/javadoc/testLegacyTaglet/Check.java ! test/com/sun/javadoc/testLegacyTaglet/ToDoTaglet.java ! test/com/sun/javadoc/testLegacyTaglet/UnderlineTaglet.java ! test/com/sun/javadoc/testLinkOption/TestLinkOption.java + test/com/sun/javadoc/testLinkOption/pkg/B.java ! test/com/sun/javadoc/testLiteralCodeInPre/TestLiteralCodeInPre.java ! test/com/sun/javadoc/testLiteralCodeInPre/pkg/Test.java ! test/com/sun/javadoc/testNestedInlineTag/TestNestedInlineTag.java ! test/com/sun/javadoc/testNewLanguageFeatures/TestNewLanguageFeatures.java ! test/com/sun/javadoc/testNewLanguageFeatures/pkg/Coin.java ! test/com/sun/javadoc/testNewLanguageFeatures/pkg/TypeParameters.java ! test/com/sun/javadoc/testParamTaglet/TestParamTaglet.java ! test/com/sun/javadoc/testParamTaglet/pkg/C.java ! test/com/sun/javadoc/testRelativeLinks/TestRelativeLinks.java ! test/com/sun/javadoc/testRelativeLinks/pkg/C.java ! test/com/sun/javadoc/testSeeTag/TestSeeTag.java ! test/com/sun/javadoc/testSeeTag/pkg/Test.java ! test/com/sun/javadoc/testSimpleTag/TestSimpleTag.java ! test/com/sun/javadoc/testSupplementary/TestSupplementary.java ! test/com/sun/javadoc/testTagMisuse/TestTagMisuse.java ! test/com/sun/javadoc/testTaglets/TestTaglets.java ! test/com/sun/javadoc/testValueTag/TestValueTag.java ! test/com/sun/javadoc/testWarnings/TestWarnings.java ! test/tools/javac/doctree/ElementTest.java ! test/tools/javadoc/api/basic/taglets/UnderlineTaglet.java ! test/tools/javadoc/doclint/DocLintTest.java