ant-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Naresh Bhatia" <NBha...@sapient.com>
Subject RE: Re[2]: How to get paths with forward slashes
Date Mon, 27 Jan 2003 18:53:19 GMT
Hi Jake,

Thanks for the info. The Think Again article was a great read! But I
think the problem is with log4j. I removed the commons-logging API calls
completely - it is not even in my classpath any more, but log4j still
does not like the backslashes :-(. I get the same error! I am using
log4j version 1.2.7 which is the latest.

Naresh

-----Original Message-----
From: Jacob Kjome [mailto:hoju@visi.com] 
Sent: Monday, January 27, 2003 12:49 PM
To: Ant Users List
Subject: Re[2]: How to get paths with forward slashes


Hello Naresh,

The one difference between your setup and mine is that I don't use
commons-logging.  Please try this with Log4j directly.  In addition, you
might want to read this:

http://qos.ch/logging/thinkAgain.html

Jake

Monday, January 27, 2003, 10:52:53 AM, you wrote:

NB> Well, I am using Ant's Copy task with a filterset to generate my 
NB> log4j.xml. The file is correctly generated with the following line 
NB> to specify the log file:

NB>     <param name="File" value="C:\MyProject\log\test.log"/>

NB> However, when log4j reads this file it interprets the back slashes 
NB> as escape characters. I don't think in XML we have to escape the 
NB> backslashs, but in either case I don't know how to do this with Ant.

NB> The error generated by log4j is shown below. Note that it thinks 
NB> that the filename is "C:MyProjectlog est.log"!

NB> log4j:ERROR setFile(null,false) call failed.
NB> java.io.FileNotFoundException: C:MyProjectlog est.log (The filename,

NB> directory name, or volume label syntax is incorrect)
NB>         at java.io.FileOutputStream.open(Native Method)
NB>         at
java.io.FileOutputStream.<init>(FileOutputStream.java:102)
NB>         at
org.apache.log4j.FileAppender.setFile(FileAppender.java:272)
NB>         at 
NB> org.apache.log4j.RollingFileAppender.setFile(RollingFileAppender.jav
NB> a:15
NB> 6)
NB>         at
NB> org.apache.log4j.FileAppender.activateOptions(FileAppender.java:151)
NB>         at
NB>
org.apache.log4j.config.PropertySetter.activate(PropertySetter.java:247)
NB>         at
NB>
org.apache.log4j.xml.DOMConfigurator.parseAppender(DOMConfigurator.java:
NB> 210)
NB>         at
NB>
org.apache.log4j.xml.DOMConfigurator.findAppenderByName(DOMConfigurator.
NB> java:140)
NB>         at
NB>
org.apache.log4j.xml.DOMConfigurator.findAppenderByReference(DOMConfigur
NB> ator.java:153)
NB>         at
NB>
org.apache.log4j.xml.DOMConfigurator.parseChildrenOfLoggerElement(DOMCon
NB> figurator.java:415)
NB>         at
NB>
org.apache.log4j.xml.DOMConfigurator.parseCategory(DOMConfigurator.java:
NB> 335)
NB>         at
NB> org.apache.log4j.xml.DOMConfigurator.parse(DOMConfigurator.java:788)
NB>         at
NB>
org.apache.log4j.xml.DOMConfigurator.doConfigure(DOMConfigurator.java:67
NB> 3)
NB>         at
NB>
org.apache.log4j.xml.DOMConfigurator.doConfigure(DOMConfigurator.java:61
NB> 6)
NB>         at
NB>
org.apache.log4j.xml.DOMConfigurator.doConfigure(DOMConfigurator.java:60
NB> 2)
NB>         at
NB>
org.apache.log4j.helpers.OptionConverter.selectAndConfigure(OptionConver
NB> ter.java:460)
NB>         at org.apache.log4j.LogManager.<clinit>(LogManager.java:113)
NB>         at org.apache.log4j.Category.getInstance(Category.java:514)
NB>         at
NB>
org.apache.commons.logging.impl.Log4jFactory.getInstance(Log4jFactory.ja
NB> va:153)
NB>         at
NB>
org.apache.commons.logging.impl.LogFactoryImpl.getInstance(LogFactoryImp
NB> l.java:285)
NB>         at
NB> org.apache.commons.logging.LogFactory.getLog(LogFactory.java:409)
NB>         at
NB> org.framework.config.test.ConfigTest.<clinit>(ConfigTest.java:19)

NB> BTW, based on Dominique Devienne's suggestion in this thread, I have

NB> used <pathconvert> to workaround this problem, but it is still a 
NB> little messy. <pathconvert> needs to be inside a target - it is not 
NB> as easy as setting a property anywhere in the build file.

NB> Thanks.
NB> Naresh

NB> -----Original Message-----
NB> From: Jacob Kjome [mailto:hoju@visi.com]
NB> Sent: Monday, January 27, 2003 10:52 AM
NB> To: Ant Users List
NB> Subject: RE: How to get paths with forward slashes



NB> If you read the docs on java.io.File, it can take the following
formats:

NB> C:\mydirectory\mysubdirectory\file.txt
NB> C:\\mydirectory\\mysubdirectory\\file.txt
NB> C:/mydirectory/mysubdirectory/file.txt

NB> and the URL class taks the following formats:

NB> file:///C:/mydirectory/mysubdirectory/file.txt
NB> file:///C:\mydirectory\mysubdirectory\file.txt

NB> you can even mix things up like this...

NB> file:///C:\mydirectory\mysubdirectory/file.txt


NB> The way I set up my file paths is:

NB> <param name="File" value="${mycontext.log.home}/mylogfile.log"/>

NB> I set a system property at runtime for said variable.  The path that
I
NB> set 
NB> up looks like this on Windows:

NB> C:\mydirectory\mysubdirectory


NB> So, I'm not sure why Log4j would be choking on a path like this
since it

NB> works fine for me.   Anyone else have an ideas?

NB> Jake


NB> At 06:48 AM 1/27/2003 -0500, you wrote:
>>Well, here are the specific examples I am having trouble with:
>>
>>1) log4j's configuration file requires pathnames with either forward 
>>slashes or double back-slashes. If I use Ant to create this file with
a

>>path property, I get something like
>>
>>         <param name="File" value="C:\MyProject\log\test.log"/>
>>
>>Log4j gets completely confused by this.
>>
>>2) The Axis Java2Wsdl task expects a URL in the form
>>
>>       url="file:///C:/MyProject//MyProject.wsdl"
>>
>>I do not know how to give this URL to the Ant task even if I have a 
>>property that contains a regular path.
>>
>>Thanks.
>>Naresh
>>
>>-----Original Message-----
>>From: Jacob Kjome [mailto:hoju@visi.com]
>>Sent: Monday, January 27, 2003 12:00 AM
>>To: Ant Users List
>>Subject: Re: How to get paths with forward slashes
>>
>>
>>
>>Java programs will understand file: protocol URL's even if the slashes

>>are a mix of forward and backslashes....at least that is my
experience.

>>So, I
>>wouldn't worry much about this.
>>
>>Jake
>>
>>At 11:08 PM 1/26/2003 -0500, you wrote:
>> >1) Is there a way to get paths in Ant with forward slashes even on 
>> >Windows platform? For example:
>> >
>> >   <property name="app_home" location="."/>
>> >
>> >should somehow give c:/... instead of c:\...
>> >
>> >2) How can I get a file location as a URL (e.g. file:///C:/...)
>> >
>> >Naresh
>> >
>> >Naresh Bhatia
>> >Sapient
>> >One Memorial Drive, Cambridge, MA 02142
>> >Tel: 617-761-1771  Fax: 617-621-1300
>> >Email: nbhatia@sapient.com
>>
>>--
>>To unsubscribe, e-mail:
NB> <mailto:ant-user-unsubscribe@jakarta.apache.org>
>>For additional commands, e-mail: 
>><mailto:ant-user-help@jakarta.apache.org>

NB> --
NB> To unsubscribe, e-mail:
<mailto:ant-user-unsubscribe@jakarta.apache.org>
NB> For additional commands, e-mail:
<mailto:ant-user-help@jakarta.apache.org>



-- 
Best regards,
 Jacob                            mailto:hoju@visi.com


--
To unsubscribe, e-mail:
<mailto:ant-user-unsubscribe@jakarta.apache.org>
For additional commands, e-mail:
<mailto:ant-user-help@jakarta.apache.org>


--
To unsubscribe, e-mail:   <mailto:ant-user-unsubscribe@jakarta.apache.org>
For additional commands, e-mail: <mailto:ant-user-help@jakarta.apache.org>


Mime
View raw message