You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-dev@axis.apache.org by bu...@apache.org on 2003/09/24 04:19:19 UTC
DO NOT REPLY [Bug 23376] New: -
Wsdl2JavaAntTask URL param incorrectly uses ${user.dir} instead of ${basedir} for relative URL dereferencing
DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG
RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT
<http://nagoya.apache.org/bugzilla/show_bug.cgi?id=23376>.
ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND
INSERTED IN THE BUG DATABASE.
http://nagoya.apache.org/bugzilla/show_bug.cgi?id=23376
Wsdl2JavaAntTask URL param incorrectly uses ${user.dir} instead of ${basedir} for relative URL dereferencing
Summary: Wsdl2JavaAntTask URL param incorrectly uses ${user.dir}
instead of ${basedir} for relative URL dereferencing
Product: Axis
Version: 1.1
Platform: Other
OS/Version: Linux
Status: NEW
Severity: Minor
Priority: Other
Component: WSDL processing
AssignedTo: axis-dev@ws.apache.org
ReportedBy: mjcsfo@yahoo.com
example:
In ${app.home}/src/services/foo/src/build.xml:
<wsdl2java url="../generate/${foo-service.wsdl}" ...
When ant is run inside of the same directory as this build.xml file, as with an
identical relative path reference in other ant tasks, the url parameter
correctly dereferences to:
URL=/opt/app/src/services/foo/generate/foo-service.wsdl
However, when we create a hierarchical set of build.xml files (in the style of
the Java Pet Store demo), where ${app.home}/src/services/build.xml contains:
<target name="core">
<ant dir="foo/src" target="core"/>
<ant dir="bar/src" target="core"/>
...
The URL parameter of the CALLED build.xml doesn't work properly. Instead of
dereferencing to the relative location of the CALLED build file, it
dereferences to the relative location of the CALLING build file. Instead of:
URL=/opt/app/src/services/foo/generate/foo-service.wsdl
we incorrectly get:
URL=/opt/app/src/generate/foo-service.wsdl
It appears when using file relative urls, the Wsdl2JavaAntTask tag is starting
from ${user.dir}, which doesn't change as we descend into nested builds,
instead of ${basedir}, which does. In order to obtain consistent behavior with
all of the other tasks which take relative paths as parameters, we should
change the starting point to ${basedir}.