Hi Krik. Would you mind entering this problem into our issue tracking system <http://issues.apache.org/bugzilla/> with a milestone of 1.4?
"Kirk Wolf" <[EMAIL PROTECTED]> writes: > Hello, > I've found that there is a bug in the RuntimeInstance setDefaultProperties > method that prevents Velocity 1.3.1 from running on an IBM mainframe. > > The code is currently written: > > InputStream inputStream = classLoader > .getResourceAsStream( DEFAULT_RUNTIME_PROPERTIES ); > > configuration.load( inputStream ); > > Which loads the default runtime properties into an ExtendedProperties > object. > This fails on an OS/390 which has a default codepage of Cp1047 (ebcdic), > since: > > 1) the properties resource is packaged in the Jar in codepage ISO8859_1. > 2) The ExtendedProperties class attempts to load it using the default > codepage (Cp1047). > 3) Because of the codepage mismatch, the resulting ExtendedProperties > object is empty and you get the error: > "It appears that no class was specified as the ResourceManager. Please > ensure that all configuration information is correct." > > Note that java.util.Properties.load(InputStream) ALWAYS loads using > "8859_1", since properties files are assumed to be in ASCII. > > > A workaround to this bug is to load the default properties manually, add > your changes and pass them all to the VelocityEngine.init(Properties) > method. > > The fix is to change the line to: > > configuration.load( inputStream, "8859_1" ); > > Which is consistent with java.util.Properties.load(). Also, any other uses > of the ExtendedProperties.load() should be changed as well. In fact, > ExtendedProperties.load() should probably default to "8859_1", IMO. --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]