linkoffline link not built correctly

We are running Javadoc through a shell script and trying to link to a copy of the JDK on one of our servers. We don't allow proxy Internet connections on the server where we run Javadoc, so we are using linkoffline to generate the links. Here's what was passed on a given run:

javadoc -nodeprecated -noqualifier all -windowtitle "My Java Libraries" -doctitle "My Java Libraries
<h3>Documentation generated: Mon Mar 31 11:52:40 EST 2003</h3>" -sourcepath /opt/Programs/Java/src -use -splitindex -version -linkoffline http://my_web_server.com/web_guides/java_sdk/api /opt/Programs/Java/src -d /opt/Programs/Java/docs/lib -subpackages com.mypackages

All the links to the standard JDK libraries are generated, but they come out like this:-

<A HREF="../../../../http://my_web_server.com/web_guides/java_sdk/api/java/lang/Object.html">java.lang.Object</A>

instead of:-

<A HREF="http://my_web_server.com/web_guides/java_sdk/api/java/lang/Object.html">java.lang.Object</A>

In other words, Javadoc is simply adding the absolute URL to the end of the current directory, as though it were a local file, instead of building an absolute link. Consequently, none of the JDK links work.

Can anyone tell me why this is happening and what can be done to fix it? (We can't use -link in this exercise, so please don't suggest it.)

Thanks,

Flic

[1429 byte] By [fmh1a] at [2007-9-28 16:49:44]
# 1

> <A HREF="../../../../http://my_web_server.com/web_guides/java_sdk/api/java/lang/Object.html">java.lang.Object</A>

>

After further investigation, I've found the problem only occurs inside packages. On our server, we have the following:-

src

*.java(program files)

com

mycompany

mydept

package1

*.java

package2

*.java

So if we run javadoc on *.java at the highest level (program files), the error does not occur. If we run it against *.java in package1 or package2, we get the error. It's as if external links only work at the top level and anything at a lower level that needs to use them will just add the external link to the current directory path.

We do have a (server-specific) way around the problem, but I would be interested to know why this occurs and what is the best approach to eliminate the problem.

Cheers,

Flic

fmh1a at 2007-7-12 14:07:09 > top of Java-index,Developer Tools,Debugging and Profiling Tool APIs...
# 2

My guess is you're using 1.4.0 and are running into this bug:

Fixed -link option to handle absolute paths. (4640745, stddoclet)

http://developer.java.sun.com/developer/bugParade/bugs/4640745.html

The solution is to upgrade to 1.4.1 or 1.4.2. There is no known workaround.

For other features/limitations of 1.4.1, please see this page:

http://java.sun.com/j2se/1.4.2/docs/tooldocs/javadoc/whatsnew-1.4.1.html

1.4.2 has a lot of bug fixes in it.

-Doug Kramer

javadoc team

dkramera at 2007-7-12 14:07:09 > top of Java-index,Developer Tools,Debugging and Profiling Tool APIs...