Good insight. Another thing I found out while using Velocity and UTF-8 text (this is Velocity 1.4 by the way), if the BOM marker is there in the text file, Velocity tend to leave a blank line (in terms of html output) after parsing it.
So, I have tried to stay away from BOM marker for the templates. Unless Velocity is fixed with that problem in the latest release. Just something to point out as per my experience. Cheers, Jian http://www.JiansNet.com On Mon, Apr 20, 2009 at 1:08 AM, mailmur <[email protected]> wrote: > > I have used UTF-8 with BOM marker .vm text files for several years now, all > applications are from client to appserver to files to db all UTF-8 enabled. > No more character problems. After all this is year 2009 so why use ISO-* > legacy charsets. > > I recommend to use it with BOM marker save format so text editors know > exactly what to use. Window Notepad.exe works fine if you use file/save > as/UTF-8 format. Do not use Windows Write.exe it breaks utf8 files. > NotePad++ is good alternative editor as well. > > > _Most Velocity template loaders _are broken_ if you ask me, they do not > handle unicode files properly. Only loader to work is FileResourceLoader its > a reason I use use it and other loaders are obsolete to me > > > * use FileResourceLoader instance > * add "file.resource.loader.unicode=true" attribute to enable unicode aware > file loader > * save files as UTF-8 with BOM marker > > Unfortunately this attribute is not well documented(?), but its been here > for few years now. See source code for more information :-) > > http://svn.apache.org/viewvc/velocity/engine/trunk/src/java/org/apache/velocity/runtime/resource/loader/FileResourceLoader.java?revision=743616&view=markup > > Internally its using this UnicodeInputStream implementation, you don't need > to download anything its there already out of the box. > http://koti.mbnet.fi/akini/java/unicodereader/ > > > > --- On Thu, 4/16/09, jian chen <[email protected]> wrote: > > > From: jian chen <[email protected]> > > Subject: Re: special characters in templates > > To: "Velocity Users List" <[email protected]> > > Date: Thursday, April 16, 2009, 11:20 PM > > I would recommend that you use UTF-8 > > when handling the templates. That works > > fine for both Windows and Linux. > > > > Jian > > http://www.JiansNet.com > > > > On Thu, Apr 16, 2009 at 1:28 AM, <[email protected]> > > wrote: > > > > > Hi, > > > > > > special characters in a text are stored with one of > > many file encodings. > > > Typical for western windows systems is CP1252, for > > Unix systems it is either > > > IS08859-1, ISO-8859-15 or UTF8. > > > > > > Most of these character sets do not provide a marker > > system to tell the > > > reading application how to interpret the bytes into > > characters (UTF may use > > > an initial marker for this purpose, but few editors > > only use it). So you > > > need to tell your application yourself. > > > > > > See how to tell velocity how to read your templates: > > > > > > > http://velocity.apache.org/engine/devel/developer-guide.html#Velocity_Configuration_Keys_and_Values > > > with the Character Encoding configuration options. > > > > > > If you are using the velocity engine directly, see: > > > > > > > http://velocity.apache.org/engine/releases/velocity-1.6.2/developer-guide.html#Template_Encoding_for_Internationalization > > > > > > > > > The output.encoding property must be set according to > > the downstream > > > application that will read the produced output. With > > web applications you > > > can ask the request character encoding property and > > set the velocity writer > > > accordingly (the encoding is dynamic and the web > > client can request to use a > > > different one than the default of your server). With > > XML it must match the > > > encoding declared in the first XML line. > > > > > > Kind regards, > > > Christoph > > > > > > > > > Moreno Lopez, Eva Maria wrote: > > > > Hello, > > > > > > > > We are generating a Word template in our > > application. In windows all > > > works ok, but in linux, when the value associated with > > the variables of the > > > template have special characters ( ñ, ´, eg..) , the > > word document generated > > > by velocity doesn´t recognise that speciall > > characters. > > > > > > > > > > > > > > > > Can anybody help us, please? > > > > > > > > > > > > > > > > Thanks. > > > > > > > > > > > > > > > > Eva Mª Moreno López > > > > > > > > Centro Mixto de I+D de Software Indra - UCLM > > > > > > > > Ronda de Toledo s/n > > > > > > > > 13005 Ciudad Real (España) > > > > > > > > Tel.: (+34) 926 012 120 - ext. 28970 > > > > > > > > [email protected] > > <mailto:[email protected]> > > > > > > > > > > > > > > > > > > > > > > > > --------------------------------------------------------------------- > > > To unsubscribe, e-mail: [email protected] > > > For additional commands, e-mail: [email protected] > > > > > > > > > > > > > --------------------------------------------------------------------- > To unsubscribe, e-mail: [email protected] > For additional commands, e-mail: [email protected] > >
