I have the same code running on 3 different machines.
2 of them have the OS's (both XP Pro) running on C:\. I
have a Win2000 machine that runs on E:\. On windows
2000, I get the following errors:
VoiceSynthesizer: no available synthesizers.
Make sure that there is a "speech.properties" file at
either of these locations:
user.home : E:\Documents and Settings\Administrator
java.home/lib: E:\Program Files\Java\j2re1.4.2_04\lib
VoiceSynthesizer: Can't find synthesizer
I have speech.properties in both locations that it
specifies. I also attempted to place it in C:\Documents
and Settings\Administrator but it did not work.
I'm not sure if this is a FreeTTS bug or a Java Speech
bug.
Logged In: YES
user_id=28272
At startup the JSAPI layer of FreeTTS will attempt to load
the speech.properties file. It looks in two places:
<user.home>
<java.home>
If it doesn't find it in one of these locations it will
throw the exception.
We haven't tested FreeTTS on Windows 2000 so we can't give
you any specific information on this. However, it may be
that the wrong directories are being reported. You can help
us by running a quick test. Write a little java program that
gets the system properties (via System.getProperties())
and dump out the values of the properties:
user.home and
java.home
This will help us understand what the differences in
behavior are between win XP and win 200.
Logged In: YES
user_id=588658
I ruled out the possibility of it having anyhting to do with the
drive structure...There is now one Win2000 install on the hard
drive and it is on the C:\ Drive.
The user.home and java.home look correct
C:\Documents and Settings\Administrator
C:\Program Files\Java\j2re1.4.2_05
This full the properties output
java.runtime.name = Java(TM) 2 Runtime Environment,
Standard Edition
sun.boot.library.path = C:\Program Files\Java\j2re1.4.2_05\bin
java.vm.version = 1.4.2_05-b04
java.vm.vendor = Sun Microsystems Inc.
java.vendor.url = http://java.sun.com/
path.separator = ;
java.vm.name = Java HotSpot(TM) Client VM
file.encoding.pkg = sun.io
user.country = US
sun.os.patch.level = Service Pack 4
java.vm.specification.name = Java Virtual Machine
Specification
user.dir = C:\Documents and Settings\Administrator\Desktop
java.runtime.version = 1.4.2_05-b04
java.awt.graphicsenv = sun.awt.Win32GraphicsEnvironment
java.endorsed.dirs = C:\Program Files\Java\j2re1.4.2_05
\lib\endorsed
os.arch = x86
java.io.tmpdir = C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp\ line.separator =
java.vm.specification.vendor = Sun Microsystems Inc.
user.variant =
os.name = Windows 2000
sun.java2d.fontpath =
java.library.path = C:\Program Files\Java\j2re1.4.2_05
\bin;.;C:\WINNT\system32;C:\WINNT;C:\WINNT\system32;C:\ WINNT;C:\WINNT\System32\Wbem;C:\php4\php
java.specification.name = Java Platform API Specification
java.class.version = 48.0
java.util.prefs.PreferencesFactory =
java.util.prefs.WindowsPreferencesFactory
os.version = 5.0
user.home = C:\Documents and Settings\Administrator
user.timezone = America/New_York
java.awt.printerjob = sun.awt.windows.WPrinterJob
file.encoding = Cp1252
java.specification.version = 1.4
user.name = Administrator
java.class.path = C:\Documents and
Settings\Administrator\Desktop\SSApplication.jar
java.vm.specification.version = 1.0
sun.arch.data.model = 32
java.home = C:\Program Files\Java\j2re1.4.2_05
java.specification.vendor = Sun Microsystems Inc.
user.language = en
awt.toolkit = sun.awt.windows.WToolkit
java.vm.info = mixed mode
java.version = 1.4.2_05
java.ext.dirs = C:\Program Files\Java\j2re1.4.2_05\lib\ext
sun.boot.class.path = C:\Program Files\Java\j2re1.4.2_05
\lib\rt.jar;C:\Program Files\Java\j2re1.4.2_05
\lib\i18n.jar;C:\Program Files\Java\j2re1.4.2_05
\lib\sunrsasign.jar;C:\Program Files\Java\j2re1.4.2_05
\lib\jsse.jar;C:\Program Files\Java\j2re1.4.2_05
\lib\jce.jar;C:\Program Files\Java\j2re1.4.2_05
\lib\charsets.jar;C:\Program Files\Java\j2re1.4.2_05\classes
java.vendor = Sun Microsystems Inc.
file.separator = \ java.vendor.url.bug = http://java.sun.com/cgi-
bin/bugreport.cgi
sun.cpu.endian = little
sun.io.unicode.encoding = UnicodeLittle
sun.cpu.isalist = pentium i486 i386
Logged In: YES
user_id=28272
Rob:
It may be that there is a problem with JSAPI trying to load
a speech.properties from a directory with embedded spaces.
If it is not too inconvienient, would it be possible to try
loading the speech.properties file from a directory without
an embedded space. Probably the easiest way to do that
would be to move your java install from:
C:\Program Files\Java\j2re1.4.2_05
to something like:
C:\java\j2rel1.4.2_05
This will help us debug this issue.
Thanks!
Paul
Logged In: YES
user_id=345479
Please take this to a different forum until you're sure this is a bug.
Logged In: YES
user_id=588658
C:\Java\j2re1.4.2_05
Same error.
I don't know what else would cause this on my end. I use
the same code (one big jar with FreeTTS packed in it) on 3
systems, 2 XP and 1 Win2k. My development box, XP, has a
speech.properties in C:\Program Files\Java\j2re1.4.2_05\lib
and also in C:\JBuilder\jdk1.4\jre\lib and it works fine with
both JRE's.
On the 2k box I even tried putting the speech.properties file
in C:\ and ran the application with java -Duser.home=C:\ -jar
Application.jar and I get the message to place it in user.home
(which it says is C:\) or the java home's lib.
speech.properties is spelled correctly, the file matches the
one on XP.
Is the properties loading done in the JSAPI or the FreeTTS
code? If it is in the FreeTTS code, I might be able to debug
it from here more (I will look through source). Otherwise the
JSAPI source isn't publicly downloadable (that I could find).
Logged In: YES
user_id=588658
I didnt realize that this message was coming from
PlayerModelImpl.java. I will look into it more.