Hello all,
First off, congrats to all those who contributed to the 3.4 release. It looks really nice so far.
I say 'looks' because although it runs perfectly with the included Tomcat, I'm having trouble getting it running with an existing Tomcat 6 installation on Debian 6. I may be overlooking something silly, but I thought I'd post anyway.
The problem is that seemingly no matter what I specify in the 'MySQL JDBC driver' part of the installer, whether it's 'included' or a custom value, it tries and fails to write the file into the Tomcat classes directory. Some examples are below.
I think it seems to be happening because Fedora expects that Tomcat stores these class files in:
> <tomcat_home>/common/lib/
whereas Debian's version (as far as I know) stores these in:
> <tomcat_home>/common/classes/
I wonder whether there's a way to change the default location that the Fedora installer tries to copy the included or specified JAR file to, so that it won't fail?
Examples:
Using 'included':
> Preparing FEDORA_HOME...
> Configuring fedora.fcfg
> Installing beSecurity
> Will not overwrite existing /var/lib/tomcat6/conf/server.xml.
> Wrote example server.xml to:
> /usr/local/fedora/install/server.xml
> WARNING: A keystore file already exists at: /var/lib/tomcat6/conf/keystore.
> WARNING: The existing keystore will not be overwritten.
> WARNING: The installer-provided keystore will not be installed, it will be copied to:
> /usr/local/fedora/install/keystore
> ERROR: Installation failed: /var/lib/tomcat6/common/lib/mysql-connector-java-5.1.6.jar (No such file or directory)
> Caused by:
> java.io.FileNotFoundException: /var/lib/tomcat6/common/lib/mysql-connector-java-5.1.6.jar (No such file or directory)
> at java.io.FileOutputStream.open(Native Method)
> at java.io.FileOutputStream.<init>(FileOutputStream.java:209)
> at java.io.FileOutputStream.<init>(FileOutputStream.java:160)
> at org.fcrepo.utilities.install.Installer.installJDBCDriver(Installer.java:197)
> at org.fcrepo.utilities.install.container.ExistingTomcat50.install(ExistingTomcat50.java:22)
> at org.fcrepo.utilities.install.Installer.install(Installer.java:65)
> at org.fcrepo.utilities.install.Installer.main(Installer.java:258)
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
> at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> at java.lang.reflect.Method.invoke(Method.java:616)
> at com.simontuffs.onejar.Boot.run(Boot.java:306)
> at com.simontuffs.onejar.Boot.main(Boot.java:159)
Using '/var/lib/tomcat6/common/lib/mysql-connector-java-5.1.13-bin.jar' as the value, which I manually downloaded and installed into Tomcat:
> Preparing FEDORA_HOME...
> Configuring fedora.fcfg
> Installing beSecurity
> Will not overwrite existing /var/lib/tomcat6/conf/server.xml.
> Wrote example server.xml to:
> /usr/local/fedora/install/server.xml
> WARNING: A keystore file already exists at: /var/lib/tomcat6/conf/keystore.
> WARNING: The existing keystore will not be overwritten.
> WARNING: The installer-provided keystore will not be installed, it will be copied to:
> /usr/local/fedora/install/keystore
> ERROR: Installation failed: Copy to /var/lib/tomcat6/common/lib/mysql-connector-java-5.1.13-bin.jar failed.
Using '/usr/share/java/mysql-connector-java.jar' as the value (this is a symlink to /var/lib/tomcat6/common/lib/mysql-connector-java-5.1.10.jar, and using the real location has the same result ). This is the version which ships with Debian.
> Preparing FEDORA_HOME...
> Configuring fedora.fcfg
> Installing beSecurity
> Will not overwrite existing /var/lib/tomcat6/conf/server.xml.
> Wrote example server.xml to:
> /usr/local/fedora/install/server.xml
> WARNING: A keystore file already exists at: /var/lib/tomcat6/conf/keystore.
> WARNING: The existing keystore will not be overwritten.
> WARNING: The installer-provided keystore will not be installed, it will be copied to:
> /usr/local/fedora/install/keystore
> ERROR: Installation failed: Copy to /var/lib/tomcat6/common/lib/mysql-connector-java.jar failed.
> root@riga:/home/swadmin# java -jar fcrepo-installer-3.4.jar
I'm using Tomcat 6.0.28-1 (Debian), MySQL 5.1.49-1 (Debian), libmysql-java 5.1.10+dfsg-2 and the Sun Java 6 JDK, all on a 64-bit Debian 6 VM.
Many thanks in advance.
Graeme West
Digital Repository Developer
Information Services
Glasgow Caledonian University
graem...@gcu.ac.uk
Glasgow Caledonian University is a registered Scottish charity, number SC021474
Winner: Times Higher Education's Widening Participation Initiative of the Year 2009 and Herald Society's Education Initiative of the Year 2009
http://www.gcu.ac.uk/newsevents/news/bycategory/theuniversity/1/name,6219,en.html