Today (well, and yesterday) was primarily spent getting cfmx 8 installed on a 64-bit Fedora 7 box. That normally should take about 10 minutes, but I didn't want the default install. I wanted (as I have for some time) a native 64-bit instance of Coldfusion. And now I have one.
Here is what I needed to do to get this installed, hopefully it can save you some time if you are trying to do the same. The process will be similar on other 64-bit distros, and there are some gotchas for sure.
With this machine, my preference is to install everything I possibly can via yum rather than download and compile source just to make application management easier. So here's a list of the RPMs that were installed in support of the application (not all are needed):
APR-1.2.8-7x86_64
APR-devel-1.2.8-7x86_64
APR-util-1.2.8-7x86_64
APR-util-devel-1.2.8-7x86_64
openssl-0.98b-12.fc7.x86_64
openssl-devel-0.98b-12.fc7.x86_64
http-2.2.4-1.fc7.x86_64
http-devel-2.2.4-1.fc7.x86_64
jakarta-commons-logging-1.0.4-6jpp.1.x86_64
mod_ssl-1:2.2.4-1.fc7.x86_64
tomcat5-5.5.23-9jpp.2.fc7.x86_64
tomcat5-jsp-2.0-api-5.5.23-9jpp.2.fc7.x86_64
tomcat5-servlet-2.4-api-5.5.23-9jpp.2.fc7.x86_64
and finally:
jdk-6u2-linux-amd64 (from Sun)
The default JDK installed with the OS was the 32-bit 1.5 version and in fedora there are Sym links under /var/lib/alternatives - you will need to update these sym links to point to the 64-bit java components if you plan on using the default JAVA_HOME variable (/usr/lib/jvm/java) within the tomcat5.conf file. Alternately, you can add the following lines into /etc/tomcat5/tomcat5.conf
AND /etc/sysconfig/tomcat5:
JAVA_HOME="/usr/java/jdk1.6.0_02"
JRE_HOME="/usr/java/jdk1.6.0_02/jre"
Now fire up tomcat using /etc/init.d/tomcat5 start and take a look at the catalina.out log under /usr/share/tomcat/logs/ and check the library path and/or the JRE_HOME being reported to ensure it's using the 64-bit jvm.
Next run the Coldfusion-8-lin.bin installer and select the option for j2ee deploy as WAR and run the install. This will create a cfusion.war and an rds.war package uner /opt/coldfusion8/. Now move the cfusion.war file to tomcat's webapps directory (/usr/share/tomcat5/webapps) and then copy the rds.war to the webapps directory and rename it CFIDE.war.
Tomcat should automatically deploy the cfusion.war file into a cfusion directory. You need to go into cfusion/WEB-INF/cfusion/lib and rename the tools.jar to something else. At this point, tomcat may crash or hang. You should stop it: /etc/init.d/tomcat5 stop. You might still be looking at the catalina.out file if you were using tail -f and you might notice the following line:
Error [ContainerBackgroundProcessor[StandardEngine[Catalina]] - Unable to initialize Security service: coldfusion.runtime.Encryptor$invalidParametersForEncryptionException: An error occurred while trying to encrypt or decrypt you input striong: 5 trailing bytes.
So now you will need the Java Cryptography Extension (JCE) Unlinmited Strength Juristiction Policy Files 6, available from
http://java.sun.com/javase/downloads/index.jsp at the bottom of the page.
Backup and replace your US_export_policy.jar and local_policy.jar files from /usr/java/jdk1.6.0_02/jre/lib/security with the unlimited strength files.
Start tomcat: /etc/init.d/tomcat5 start
point your browser here: http://localhost:8080/cfusion/CFIDE/administrator
and hopefully you'll see this:
Next up: Getting the apache/tomcat connectors set up.