You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@ant.apache.org by bu...@apache.org on 2003/06/03 20:12:08 UTC
DO NOT REPLY [Bug 20457] New: -
VAJRemoteUtil calls getAbsolutePath instead of getPath
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=20457>.
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=20457
VAJRemoteUtil calls getAbsolutePath instead of getPath
Summary: VAJRemoteUtil calls getAbsolutePath instead of getPath
Product: Ant
Version: 1.5.3
Platform: Sun
OS/Version: Solaris
Status: NEW
Severity: Minor
Priority: Other
Component: Optional Tasks
AssignedTo: dev@ant.apache.org
ReportedBy: douglas_reith@yahoo.com.au
(Apologies if duplicate - couldn't find it)
I am starting an Ant build on Sun Solaris which eventually connects to a Visual
Age workbench running on a Windows 2000 PC using the optional task vajexport.
The servlet URL that it creates is incorrect because the destination directory
(destdir) attribute has the UNIX user.dir appended to the front like so:
http://vajhost:2525/servlet/vajexport?
deb=false&owr=true&dir=/ant_files/tmp/C:/temp&cls=true&res=true&src=false&dex=tr
ue&include=SystemProj/com/world/hello
Here the problem is: dir=/ant_files/tmp/C:/temp
Where it should just be: dir=C:/temp
I tried to replicate on Windows but the error did not appear (could be a
difference in Java versions as well).
I tracked it down to this method:
org.apache.tools.ant.taskdefs.optional.ide
VAJRemoteUtil.assembleImportExportParams(..blah..)
And this line:
String result =
VAJToolsServlet.DIR_PARAM + "="
+ dir.getAbsolutePath().replace('\\', '/') ...etc
Which I changed to:
String result =
VAJToolsServlet.DIR_PARAM + "="
+ dir.getPath().replace('\\', '/') ...etc
That is, I've changed the getAbsolutePath() to getPath() after reading the Java
API which states for getAbsolutePath() that:
"On UNIX systems, a relative pathname is made absolute by resolving it against
the current user directory."
Now this fix is obviously a bit of a quick one.. not necessarily the right one.
Here are the UNIX environment details (I've removed sections that are not
important and/or sensitive):
------- Ant diagnostics report -------
Apache Ant version 1.5.3 compiled on April 16 2003
-------------------------------------------
Implementation Version (JDK1.2+ only)
-------------------------------------------
core tasks : 1.5.3
optional tasks : 1.5.3
-------------------------------------------
ANT_HOME/lib jar listing
-------------------------------------------
ant.jar (737884 bytes)
xml-apis.jar (108484 bytes)
xercesImpl.jar (885250 bytes)
optional.jar (671546 bytes)
-------------------------------------------
System properties
-------------------------------------------
java.runtime.name : Java(TM) 2 Runtime Environment, Standard Edition
java.vm.version : 1.3.0_04
java.vm.vendor : Sun Microsystems Inc.
java.vm.name : Java HotSpot(TM) Client VM
file.encoding.pkg : sun.io
java.vm.specification.name : Java Virtual Machine Specification
user.dir : /ant_files/tmp
java.runtime.version : 1.3.0_04
os.version : 5.8
Thanks for your time.
P.S. Spent time solving remote feature problems (import statements, resource
files)... and THEN found bug 10016... should have looked here first!