Selena Renee Phillips created MJAVADOC-427:
----------------------------------------------

             Summary: "Error fetching URL" for valid non-Java API links
                 Key: MJAVADOC-427
                 URL: https://issues.apache.org/jira/browse/MJAVADOC-427
             Project: Maven Javadoc Plugin
          Issue Type: Bug
    Affects Versions: 2.10.3
         Environment: Windows 7
Apache Maven 3.2.1
java version "1.8.0_05"
Java(TM) SE Runtime Environment (build 1.8.0_05-b13)
Java HotSpot(TM) 64-Bit Server VM (build 25.5-b02, mixed mode)

            Reporter: Selena Renee Phillips


When I generate Javadoc for a simple project with 3rd party dependencies, no 
configuration generates links for these dependencies. For valid Javadoc links 
which have a package-list, I get the following error:

[WARNING] javadoc: warning - Error fetching URL

Test Cases w/ results (sample project(s)) attached:

1. No manual link configuration. 'detectLinks' is set to true.

{code:title=pom.xml - No manual link configuration with 
detectLinks=true|borderStyle=solid}
<plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-javadoc-plugin</artifactId>
                <version>2.10.3</version>
                <configuration>
                    
<reportOutputDirectory>${project.basedir}/target</reportOutputDirectory>
                    <destDir>javadoc</destDir>
                    <windowtitle>Epiphany</windowtitle>
                    <doctitle>Epiphany</doctitle>
                    <show>private</show>
                    <detectLinks>true</detectLinks>
                    <detectOfflineLinks>true</detectOfflineLinks>
                    <linksource>true</linksource>
                    <detectJavaApiLink>true</detectJavaApiLink>
                </configuration>
                <executions>
                    <execution>
                        <goals>
                            <goal>javadoc</goal>
                            <goal>test-javadoc</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>
{code}

Output of 'mvn javadoc:javadoc':

{code:title=Resulting output for mvn javadoc:javadoc - No manual link 
configuration with detectLinks=true|borderStyle=solid}
[INFO] Scanning for projects...
[INFO]
[INFO] Using the builder 
org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder
 with a thread count of 1
[INFO]
[INFO] ------------------------------------------------------------------------
[INFO] Building epiphany 1.0-SNAPSHOT
[INFO] ------------------------------------------------------------------------
[INFO]
[INFO] >>> maven-javadoc-plugin:2.10.3:javadoc (default-cli) @ epiphany >>>
[INFO]
[INFO] <<< maven-javadoc-plugin:2.10.3:javadoc (default-cli) @ epiphany <<<

....SNIP DOWNLOADING INFO.....

[INFO]
[INFO] --- maven-javadoc-plugin:2.10.3:javadoc (default-cli) @ epiphany ---
[ERROR] Error fetching link: 
http://selenium.googlecode.com/selenium-java/apidocs/package-list. Ignored it.
[ERROR] Error fetching link: 
http://selenium.googlecode.com/selenium-api/apidocs/package-list. Ignored it.
[ERROR] Error fetching link: 
http://selenium.googlecode.com/selenium-support/apidocs/package-list. Ignored 
it.
[ERROR] Error fetching link: 
http://code.google.com/p/guava-libraries/guava/apidocs/package-list. Ignored it.
[ERROR] Error fetching link: 
http://logback.qos.ch/logback-core/apidocs/package-list. Ignored it.
[ERROR] Error fetching link: 
http://logback.qos.ch/logback-classic/apidocs/package-list. Ignored it.
[ERROR] Error fetching link: http://testng.org/apidocs/package-list. Ignored it.
[INFO]
Loading source files for package com.example...
Constructing Javadoc information...
Standard Doclet version 1.8.0_05
Building tree for all the packages and classes...
Generating 
C:\Users\sephilli\git\javadoc-bug\target\javadoc\com\example\AbstractLoadable.html...

.....SNIP....

1 warning
[WARNING] Javadoc Warnings
[WARNING] javadoc: warning - Error fetching URL: http://www.slf4j.org/apidocs
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 13.694 s
[INFO] Finished at: 2015-04-18T08:24:05-05:00
[INFO] Final Memory: 16M/92M
[INFO] ------------------------------------------------------------------------
{code}

I expected that the plugin would fail to find javadoc to link for Selenium, 
Logback, Guava and TestNg, but to succeed in fetching Javadoc for SLF4Jj. The 
detected link for SLF4J is a valid javadoc link with a package-list located at 
the detected link:

http://www.slf4j.org/apidocs/
http://www.slf4j.org/apidocs/package-list

However, there is a error fetching the URL and the resulting javadoc does not 
have links for SLF4J:

    log

    private static final org.slf4j.ext.XLogger log

    The logger for the AbstractLoadable class

2. Manual link configuration for dependencies with javadoc that is not 
automatically detected with 'detectLinks' is set to true. No trailing slashes 
in manually configured links.

{code:title=pom.xml - Manual link configuration with detectLinks=true. No 
trailing slashes in links|borderStyle=solid}
<plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-javadoc-plugin</artifactId>
                <version>2.10.3</version>
                <configuration>
                    
<reportOutputDirectory>${project.basedir}/target</reportOutputDirectory>
                    <destDir>javadoc</destDir>
                    <windowtitle>Epiphany</windowtitle>
                    <doctitle>Epiphany</doctitle>
                    <show>private</show>
                    <detectLinks>true</detectLinks>
                    <detectOfflineLinks>true</detectOfflineLinks>
                    <linksource>true</linksource>
                    <detectJavaApiLink>true</detectJavaApiLink>
                    <links>
                        
<link>https://selenium.googlecode.com/git/docs/api/java</link>
                        <link>http://testng.org/javadocs</link>
                        <link>http://logback.qos.ch/apidocs</link>
                        
<link>http://docs.guava-libraries.googlecode.com/git/javadoc</link>             
          
                    </links>
                </configuration>
                <executions>
                    <execution>
                        <goals>
                            <goal>javadoc</goal>
                            <goal>test-javadoc</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>
{code}

Output from mvn javadoc:javadoc:

{code:title=Resulting output for mvn javadoc:javadoc - Manual link 
configuration with detectLinks=true, no trailing slashes|borderStyle=solid}
[INFO] Scanning for projects...
[INFO]
[INFO] Using the builder 
org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder
 with a thread count of 1
[INFO]
[INFO] ------------------------------------------------------------------------
[INFO] Building epiphany 1.0-SNAPSHOT
[INFO] ------------------------------------------------------------------------
[INFO]
[INFO] >>> maven-javadoc-plugin:2.10.3:javadoc (default-cli) @ epiphany >>>
[INFO]
[INFO] <<< maven-javadoc-plugin:2.10.3:javadoc (default-cli) @ epiphany <<<
....SNIP DOWNLOADING INFO ....
[INFO]
[INFO] --- maven-javadoc-plugin:2.10.3:javadoc (default-cli) @ epiphany ---
[ERROR] Error fetching link: 
http://selenium.googlecode.com/selenium-java/apidocs/package-list. Ignored it.
[ERROR] Error fetching link: 
http://selenium.googlecode.com/selenium-api/apidocs/package-list. Ignored it.
[ERROR] Error fetching link: 
http://selenium.googlecode.com/selenium-support/apidocs/package-list. Ignored 
it.
[ERROR] Error fetching link: 
http://code.google.com/p/guava-libraries/guava/apidocs/package-list. Ignored it.
[ERROR] Error fetching link: 
http://logback.qos.ch/logback-core/apidocs/package-list. Ignored it.
[ERROR] Error fetching link: 
http://logback.qos.ch/logback-classic/apidocs/package-list. Ignored it.
[ERROR] Error fetching link: http://testng.org/apidocs/package-list. Ignored it.
[INFO]
Loading source files for package com.example...
Constructing Javadoc information...
Standard Doclet version 1.8.0_05
Building tree for all the packages and classes...
Generating 
C:\Users\sephilli\git\javadoc-bug\target\javadoc\com\example\AbstractLoadable.html...
.....SNIP......
5 warnings
[WARNING] Javadoc Warnings
[WARNING] javadoc: warning - Error fetching URL: 
https://selenium.googlecode.com/git/docs/api/java
[WARNING] javadoc: warning - Error fetching URL: http://testng.org/javadocs
[WARNING] javadoc: warning - Error fetching URL: http://logback.qos.ch/apidocs
[WARNING] javadoc: warning - Error fetching URL: 
http://docs.guava-libraries.googlecode.com/git/javadoc
[WARNING] javadoc: warning - Error fetching URL: http://www.slf4j.org/apidocs
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 01:18 min
[INFO] Finished at: 2015-04-18T09:05:08-05:00
[INFO] Final Memory: 16M/95M
[INFO] ------------------------------------------------------------------------

{code}

The manually configured links are all valid javadoc links with package-list 
present at that location, but resulting javadoc does not link third-party doc 
for dependencies:


    driver

    @Nonnull
    private final org.openqa.selenium.WebDriver driver

    The driver for browsing this AbstractLoadable

3. Manual link configuration for dependencies with javadoc that is not 
automatically detected with 'detectLinks' is set to true. Trailing slashes in 
manually configured links

{code:title=pom.xml - Manual link configuration with detectLinks=true.  
Trailing slashes in links|borderStyle=solid}
<plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-javadoc-plugin</artifactId>
                <version>2.10.3</version>
                <configuration>
                    
<reportOutputDirectory>${project.basedir}/target</reportOutputDirectory>
                    <destDir>javadoc</destDir>
                    <windowtitle>Epiphany</windowtitle>
                    <doctitle>Epiphany</doctitle>
                    <show>private</show>
                    <detectLinks>true</detectLinks>
                    <detectOfflineLinks>true</detectOfflineLinks>
                    <linksource>true</linksource>
                    <detectJavaApiLink>true</detectJavaApiLink>
                    <links>
                        
<link>https://selenium.googlecode.com/git/docs/api/java/</link>
                        <link>http://testng.org/javadocs/</link>
                        <link>http://logback.qos.ch/apidocs/</link>
                        
<link>http://docs.guava-libraries.googlecode.com/git/javadoc/</link>            
           
                    </links>
                </configuration>
                <executions>
                    <execution>
                        <goals>
                            <goal>javadoc</goal>
                            <goal>test-javadoc</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>
{code}

Output from mvn javadoc:javadoc:

{code:title=Resulting output for mvn javadoc:javadoc - Manual link 
configuration with detectLinks=true, trailing slashes|borderStyle=solid}
[INFO] Scanning for projects...
[INFO]
[INFO] Using the builder 
org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder
 with a thread count of 1
[INFO]
[INFO] ------------------------------------------------------------------------
[INFO] Building epiphany 1.0-SNAPSHOT
[INFO] ------------------------------------------------------------------------
[INFO]
[INFO] >>> maven-javadoc-plugin:2.10.3:javadoc (default-cli) @ epiphany >>>
[INFO]
[INFO] <<< maven-javadoc-plugin:2.10.3:javadoc (default-cli) @ epiphany <<<
...SNIP DOWNLOADING INFO ...
[INFO]
[INFO] --- maven-javadoc-plugin:2.10.3:javadoc (default-cli) @ epiphany ---
[ERROR] Error fetching link: 
http://selenium.googlecode.com/selenium-java/apidocs/package-list. Ignored it.
[ERROR] Error fetching link: 
http://selenium.googlecode.com/selenium-api/apidocs/package-list. Ignored it.
[ERROR] Error fetching link: 
http://selenium.googlecode.com/selenium-support/apidocs/package-list. Ignored 
it.
[ERROR] Error fetching link: 
http://code.google.com/p/guava-libraries/guava/apidocs/package-list. Ignored it.
[ERROR] Error fetching link: 
http://logback.qos.ch/logback-core/apidocs/package-list. Ignored it.
[ERROR] Error fetching link: 
http://logback.qos.ch/logback-classic/apidocs/package-list. Ignored it.
[ERROR] Error fetching link: http://testng.org/apidocs/package-list. Ignored it.
[INFO]
Loading source files for package com.example...
Constructing Javadoc information...
Standard Doclet version 1.8.0_05
Building tree for all the packages and classes...
Generating 
C:\Users\sephilli\git\javadoc-bug\target\javadoc\com\example\AbstractLoadable.html...
....SNIP....
5 warnings
[WARNING] Javadoc Warnings
[WARNING] javadoc: warning - Error fetching URL: 
https://selenium.googlecode.com/git/docs/api/java
[WARNING] javadoc: warning - Error fetching URL: http://testng.org/javadocs
[WARNING] javadoc: warning - Error fetching URL: http://logback.qos.ch/apidocs
[WARNING] javadoc: warning - Error fetching URL: 
http://docs.guava-libraries.googlecode.com/git/javadoc
[WARNING] javadoc: warning - Error fetching URL: http://www.slf4j.org/apidocs
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 01:18 min
[INFO] Finished at: 2015-04-18T09:20:17-05:00
[INFO] Final Memory: 16M/110M
[INFO] ------------------------------------------------------------------------

Resulting javadoc does not link the javadoc for the 3rd party dependencies.

Test Case 4: detectLinks= false + manually configured links without trailing 
slashes

Result is the same. I won't post the pom and the output here because the sample 
project(s) are attached and the result is not different from the previous test 
cases. Errors are reporting for attempts to fetch all of the URLs.

Test Case 5: detectLinks-false + manually configured links with trailing 
slashes.

Result is the same.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to