Configuring and Running Railo Powered CFML Applications on Jelastic Cloud
I have been following the Jelastic Cloud for a month and wanted to try their offering. The team behind Jelastic did all the ground works for us to get up and Running with railo in their environment. I configured railo and created a sample job search application railoweb.akbarsait.com and hosted it in their Cloud that required only 10 minutes.
The below configuration information are one which I read and learned from CFML community geeks Matt Woodward, Sean Corfield, Todd Rafferty, and Jamie Krug and the credits are going to them completely.
Before we proceed, follow the video by the Jelastic team on Deploying Railo in Jelastic Cloud.
Installing Railo and Tomcat on Jelastic Cloud:
Signup for the Jelastic Cloud account and Create your environment by adding Tomcat 6, JDK 6 and MySQL.
Copy the latest Railo WAR file link from Railo download section.
Under deployment manger, select Upload and enter the Railo WAR URL link. Wait until you see the railo.war is added to the Deployment Management section.
Deploy railo to the environment you created in the first step. Wait for a minute and once installed, click browse button to launch the railo administrator. The URL link is below.
- In case if you are unable to view Railo Administrator and getting any 502 or related errors then go and refresh your environment and try again.
Configuring a Railo powered ColdFusion site:
- Click on the Config icon in your Tomcat setting and select the catalina.properties file under the server folder and add your Railo paths to common.loader class path and save it.
#Added the Railo *.JAR path
common.loader=${catalina.home}/lib,${catalina.home}/lib/*.jar,${catalina.home}/webapps/ROOT/WEB-INF/lib/*.jar
Note: Currently Jelastic allows us to upload new files, generate files/folders under /opt/tomcat/(catlina.home) of your environment. File/folder moving functionality is unavailable during this beta. Hence, I kept the railo JAR files under the default installed location and appended this path to the existing common.loader class as below.
${catalina.home}/webapps/ROOT/WEB-INF/lib/*.jar"
- Open web.xml file and paste the following contents under the “servlet”,“servlet-mapping” and “welcome-file-list”" sections and save it.
<!-- Railo Servlet section-->
<servlet>
<servlet-name>GlobalCFMLServlet</servlet-name>
<description>CFML runtime Engine</description>
<servlet-class>railo.loader.servlet.CFMLServlet</servlet-class>
<init-param>
<param-name>configuration</param-name>
<param-value>{web-root-directory}/WEB-INF/railo/</param-value>
<description>Configuraton directory</description>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet>
<servlet-name>GlobalAMFServlet</servlet-name>
<description>AMF Servlet for flash remoting</description>
<servlet-class>railo.loader.servlet.AMFServlet</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet>
<servlet-name>GlobalRailoFileServlet</servlet-name>
<description>File Servlet for simple files</description>
<servlet-class>railo.loader.servlet.FileServlet</servlet-class>
<load-on-startup>2</load-on-startup>
</servlet>
<!-- Railo Servlet Mapping section-->
<servlet-mapping>
<servlet-name>GlobalCFMLServlet</servlet-name>
<url-pattern>*.cfm</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>GlobalCFMLServlet</servlet-name>
<url-pattern>/index.cfm/*</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>GlobalCFMLServlet</servlet-name>
<url-pattern>*.cfml</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>GlobalCFMLServlet</servlet-name>
<url-pattern>*.cfc</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>GlobalAMFServlet</servlet-name>
<url-pattern>/flashservices/gateway/*</url-pattern>
</servlet-mapping>
<!-- Added Index.cfm to welcome File list section -->
<welcome-file>index.cfm</welcome-file>
Create a folder called railoweb under webapps directory and upload a index.cfm file with some dynamic contents in it.
Create a custom domain or a CNAME entry with your existing domain and point it to the environmentname.jelastic.servint.net and add the CNAME entry to Custom domains section. I have created one called railoweb.akbarsait.com for this purpose.
Open server.xml and add the following host entry to it and save.
<Host name="railotomcat.akbarsait.com" appBase="webapps"
unpackWARs="true" autoDeploy="true" xmlValidation="false"
xmlNamespaceAware="false">
<Context path="" docBase="/opt/tomcat/webapps/railoweb/" />
</Host>
- Now its time to Restart the Tomcat and hit our application.
The sample application is available at railoweb.akbarsait.com. Hope this helps and share your experience or issues while configuring applications.
Comments
Hi, I've been looking at running CF on Jelastic. One thing I can't seem to find is after the topology and CF engine are setup how do you deploy/upload your site? Is the only way to do that by deploying a war, or is there any type of command line tool similar to what CloudBees has - cloudbees.com Thanks! Nolan
(Comments migrated from previous blog engine.)