Ensure that your operating system meets the system requirements described on the Adobe website at www.adobe.com/go/learn_cfu_cfsysreqs_en.
One of the main advantages of ColdFusion is that you can install it as an integrated server (the server configuration) or deploy it as a Java application on a standards-based Java Enterprise Edition (JEE, formerly termed, J2EE) application server, using the JEE configuration option offered in the ColdFusion Installer. In addition to greater flexibility, this allows your ColdFusion applications to leverage features of the JEE architecture, such as support for multiple application instances and multiple-instance clustering.
Installing the JEE Configuration
Gathering information necessary to install the JEE configuration
Although the ColdFusion installer provides an intuitive interface, it helps to plan your answers to the questions asked by the installer. Use the following tables to help plan for installing the JEE configuration of ColdFusion.
Question |
Answer |
---|---|
Platform-specific installer name? |
|
Serial number for ColdFusion? |
|
Type of installation? |
Server configuration_X_ JEE configuration |
EAR or WAR file? |
EAR WAR |
Subcomponents to install? |
ColdFusion ODBC Services ColdFusion Solr Services .NET Integration Services |
Installation directory for ColdFusion and services? |
|
Context root for ColdFusion (EAR file only, default=cfusion)? |
|
ColdFusion Administrator password? |
|
Enable Secure Profile |
__Yes__No Identify a list of IP addresses that will have access to the ColdFusion Administrator. |
Configure OpenOffice |
__Yes__No |
Whether to enable RDS? |
Yes No Note: RDS allows the server to interact with remotely connected developers. Adobe recommends that you disable RDS for production servers.Disabling RDS also disables the directory browsing applets in the ColdFusion Administrator. |
RDS password? |
__ |
Automatically check for server updates? |
Yes No |
ColdFusion and JEE application servers
You can deploy ColdFusion in the JEE configuration by using a JEE application server, such IBM WebSphere. When you use the JEE configuration, you can use an existing JEE application server; the installation wizard creates a web application archive (WAR) or enterprise application archive (EAR) file, which you then deploy by using the tools provided by your application server.
Choosing EAR or WAR deployment
In the JEE environment, you deploy applications in one of the following formats:
Web application archive file Contains the ColdFusion application. A web application archive (also called a WAR) uses a directory structure that contains a WEB-INF/web.xml deployment descriptor, which defines the servlets and context parameters it uses. JEE application servers can deploy web applications in this directory structures as-is or in compressed WAR files that contain these directory structures. However, ColdFusion must run from an expanded directory structure:
WEB-INF web.xml CFIDE cfdocs CFIDE (rds.war) WEB-INF web.xml
The cfusion.war file contains the ColdFusion web application. The rds.war file is a web application that redirects RDS requests from /CFIDE to /context-root/CFIDE. It forwards requests to the ColdFusion Administrator when ColdFusion uses a context root other than a forward slash.
Enterprise application archive file Contains the ColdFusion and RDS redirector web applications. An enterprise application archive (also called an EAR) uses a directory structure that contains a META-INF/application.xml deployment descriptor, which defines the web applications that it contains. JEE application servers can deploy enterprise applications in these directory structures as-is or in compressed EAR files that contain these directory structures. However, ColdFusion must run from an expanded directory structure:
META-INF application.xml cfusion-war WEB-INF web.xml CFIDE cfdocs rds.war WEB-INF web.xml
If your JEE application server supports enterprise applications, install and deploy the EAR file. For more information, see Installing an EAR file or WAR files section in this page.
Context root
Because the JEE environment supports multiple, isolated web applications running in a server instance, JEE web applications running in a server are each rooted at a unique base URL, called a context root (or context path). The JEE application server uses this initial portion of the URL (that is, the portion immediately following http://_hostname_) to determine which web application services an incoming request.
For example, if you are running ColdFusion with a context root of cf11, you display the ColdFusion Administrator using the URL http://localhost/_cf11_/CFIDE/administrator/index.cfm.
Most JEE application servers allow one application in each server instance to use a forward slash for the context root. Setting the context root to / for the ColdFusion application is especially useful when serving CFM pages from the web server, because it supports the functionality most similar to earlier ColdFusion versions. In addition, the RDS web application is not required if you use a context root of /.
When you deploy the ColdFusion EAR file, it uses the context root that you specified when you ran the installation wizard, which copied your specification to the context-root element of the META-INF/application.xml file. When you deploy ColdFusion as a WAR file, you use application-server-specific functionality to define the context root.
Multiple instances
When you use the JEE configuration, you can define multiple server instances on a single computer, each running ColdFusion. Running multiple instances of ColdFusion has the following advantages:
- Application isolation You deploy an independent application to each server instance. Each server instance has separate settings, and because each server instance runs in its own instance of the JVM, problems encountered by one application have no effect on other applications.
- Load balancing and failover You deploy the same application to each server instance and add the instances to a cluster. The web server connector optimizes performance and stability by automatically balancing load and by switching requests to another server instance when a server instance stops running.
Platforms
Full ColdFusion functionality is available for Windows, Macintosh, Linux, and Solaris, except that the following are Windows-specific: COM, .NET, and ODBC Services. AIX support is provided for WebSphere application server only. Functionality provided by platform-specific binary files. is not available on AIX. Additionally, you can install and deploy the all-Java ColdFusion JEE configuration on other platforms, although without the functionality provided by platform-specific binary files (C++ CFXs).
Preparing to install using the JEE configuration
Tomcat is embedded with a stand-alone ColdFusion installation. After installing ColdFusion in stand-alone mode, you can create multiple instances and clusters, provided you have an Enterprise or Developer license.
This feature is not available in Standard Edition.
Installing an EAR file or WAR files
If your computer is already running a JEE application server, the installation wizard creates an EAR file or WAR files, which you deploy using application-server-specific tools.
The ColdFusion JEE configuration must run from an expanded directory structure. Different JEE application servers have different functionality with regard to deployment and an expanded directory structure, as follows:
- Deploy compressed archive to working directory. On some JEE application servers (such as IBM WebSphere), the deployment process expands the EAR/WAR file into a working directory and, from that point forward, the expanded directory is considered to be the application. For these application servers, you deploy the compressed EAR/WAR file and work in the resulting directory structure. For more information, see ColdFusion JEE deployment and configuration section in this page.
- Deploy expanded archive as working directory On other application servers (such as Oracle WebLogic), the deployment process expands the EAR/WAR file into a temporary directory and (conceptually), the compressed EAR/WAR file is still considered to be the application. For these application servers, expand the EAR/WAR file manually, and then deploy the expanded directory structure, which becomes your working directory. For more information, see ColdFusion JEE deployment and configuration section in this page.
Installing an EAR file or WAR files in Windows
You can install the ColdFusion JEE configuration in Windows.
The Windows installer requires a computer that supports at least 256 colors.
-
-
Read the online version of the Release Notes for any late-breaking information or updates. For more information, see www.adobe.com/go/learn_cfu_releasenote_en.
-
Review the Installation considerations for Windows and Installation considerations for all platforms sections in the Preparing to Install ColdFusion document.
-
Determine and record environment information, as described in Preparing to install using the JEE configuration section of this document.
-
Determine the answers to the questions in the above section Gathering information necessary to install the JEE configuration
-
Close any applications that are currently running on your computer.
-
Insert the DVD or download the setup file from the Adobe website.
-
If the installation wizard does not start automatically when you insert the DVD, locate the appropriate installer on the DVD and double-click it. If you are installing from a network or a downloaded file, locate the ColdFusion installation executable file (ColdFusion_11_WWEJ_win32.exe (for 32-bit systems)/ColdFusion_11_WWEJ_win64.exe (for 64-bit systems)) and double-click it.
-
Follow the instructions in the installation wizard, and let it run to completion.
-
Deploy ColdFusion and configure Java settings, as required by your application server. For more information, see ColdFusion JEE deployment and configuration section of this document.
-
Open the ColdFusion Administrator to run the Configuration wizard.
-
To install any other integrated Adobe or third-party technologies, see Installing Integrated Technologies.
-
Configure and manage your system, as described in Configuring your System.
-
To learn about ColdFusion, read the documentation, which is accessible through the Documentation link on the Resources page of the ColdFusion Administrator.
-
Code ColdFusion CFM pages.
Store CFM pages under the web application root (either cfusion-ear\cfusion-war or cfusion-war) and access these pages using a URL of the form http://_hostname_:_portnumber_/_context-root_/_filename_.cfm, as follows:
- hostname: The machine name, IP address, or localhost.
- portnumber: The port number used by your application server's web server.
- contextroot: The context root for the ColdFusion web application. For more information, see Context root section in this page.
- filename: The directory path and file to display. The path is relative to the cfusion-war directory.
Installing an EAR file or WAR files in UNIX
You can install the ColdFusion JEE configuration in UNIX. If you are updating an existing deployment of ColdFusion for JEE, see Updating from an earlier version for JEE section of this document before you continue.
Install ColdFusion in UNIX (JEE configuration)
-
Read the online version of the Release Notes for any late-breaking information or updates. For more information, see www.adobe.com/go/learn_cfu_releasenote_en.
-
Ensure that your operating system meets the system requirements described on the Adobe website at www.adobe.com/go/learn_cfu_cfsysreqs_en.
-
Review the Installation considerations for UNIX and Installation considerations for all platforms sections in the Preparing to Install ColdFusion document.
-
Determine and record environment information, as described in Preparing to install using the JEE configuration section of this document.
-
Determine the answers to the questions in the section Gathering information necessary to install the JEE configuration section of this document.
-
Log in as root.
-
Copy the installation file that is appropriate for your platform and locale from the DVD or Adobe website, and save it to a directory on your local disk.
The following installation files are those for supported JEE configuration platforms:Platform
File
Linux
- ColdFusion_11_WWEJ_linux32.bin (for 32-bit systems)
- ColdFusion_11_WWEJ_linux64.bin (64-bit systems)
Solaris
ColdFusion_11_WWEJ_solaris64.bin
UNIX (other than Solaris or Linux)
ColdFusion_11_WWEJ_java.jar
-
Using the cd command, go to the directory with the installation file.
-
Start the installation with the following command:
./<filename> -i console
The installation program starts.
To use the ColdFusion_11_WWEJ_java.jar file to install on a UNIX platform other than Solaris or Linux, enter the following command (for more information, see Installation considerations for UNIX in Preparing to Install ColdFusion page of this wiki ):java_home/bin/java -jar ColdFusion_11_WWEJ_java.jar -i console
Note:To run the Linux installer in GUI mode, type ./<filename> -i gui.
-
Follow the prompts, and let the installation program run to completion.
Note:For security reasons, it is crucial that you do not use root for the run-time user. Instead, use a non-privileged user that does not have a login shell, such as the default user account nobody, which exists for this type of situation.
-
Deploy ColdFusion and configure Java settings, as required by your application server.
For more information, see ColdFusion JEE deployment and configuration section of this page.Note:If you deployed the rds.war file, and an error message indicates that RDS is not installed or not enabled, edit the rds.properties file to match the ColdFusion context root, restart the application server, and re-open the ColdFusion Administrator.
-
Open the ColdFusion Administrator to run the Configuration wizard.
-
Configure and manage your system, as described in Configuring your System.
-
To learn about ColdFusion, read the documentation, which is accessible through the Documentation link on the Resources page of the ColdFusion Administrator.
-
Code and test ColdFusion CFM pages.
Store CFM pages under the web application root (either cfusion-ear/cfusion-war or cfusion-war) and access these pages using a URL of the form http://_hostname_:_portnumber_/_context-root_/_filename_.cfm, as follows:
- hostname: The machine name, IP address, or localhost.
- portnumber: The port number used by your application server's web server.
- contextroot: The context root for the ColdFusion web application. For more information, see Context root section of this page.
- filename: The directory path and file to display. The path is relative to the cfusion-war directory.
Installing an EAR file or WAR files in Mac OS X
You can install the ColdFusion JEE configuration for Mac OS X. If you are updating an existing, earlier deployment of ColdFusion for JEE, see Updating from an earlier version for JEE section in this page before you continue.
Install ColdFusion in Mac OS X (JEE configuration)
-
Read the online version of the Release Notes for any late-breaking information or updates. For more information, see www.adobe.com/go/learn_cfu_releasenote_en.
-
Ensure that your operating system meets the system requirements described on the Adobe website at www.adobe.com/go/learn_cfu_cfsysreqs_en.
-
Review the Installation considerations for UNIX and Installation considerations for all platforms in the Preparing to Install ColdFusion document.
-
Determine and record environment information, as described in Preparing to install using the JEE configuration section of this page.
-
Determine the answers to the questions in the section Gathering information necessary to install the JEE configuration section of this page.
-
Log in as root.
-
Copy the installation file that is appropriate for your platform and locale from the DVD or Adobe website, and save it to a directory on your local disk.
The following installation files are those for supported JEE configuration platforms:- ColdFusion_11_WWEJ_osx11.dmg - To install in Mac OS X systems
-
Start the installation by double-clicking the installation file on the desktop. The file ColdFusion Installer.app is installed in the same directory. Double click this APP file to start the installation in GUI mode.
-
Follow the prompts, and let the installation program run to completion
Note:For security reasons, it is crucial that you do not use root for the runtime user. Instead, use a nonprivileged user that does not have a login shell, such as the default user account nobody, which exists for this type of situation.
-
Deploy ColdFusion and configure Java settings, as required by your application server. For more information, see ColdFusion JEE deployment and configuration section in this page.
Note:If you deployed the rds.war file, and an error message indicates that RDS is not installed or not enabled, edit the rds.properties file to match the ColdFusion context root, restart the application server, and reopen the ColdFusion Administrator.
-
Open the ColdFusion Administrator to run the Configuration wizard.
-
Configure and manage your system, as described in Configuring your System.
-
To learn about ColdFusion, read the documentation, which is accessible through the Documentation link on the Resources page of the ColdFusion Administrator.
-
Code and test ColdFusion CFM pages.
Store CFM pages under the web application root (either cfusion-ear/cfusion-war or cfusion-war) and access these pages using a URL of the form http://_hostname_:_portnumber_/_context-root_/_filename_.cfm, as follows:
- hostname -The machine name, IP address, or localhost.
- portnumber-The port number used by your application server's web server.
- contextroot - The context root for the ColdFusion web application. For more information, see Context root section in this page.
- filename - The directory path and file to display. The path is relative to the cfusion-war directory.
Updating from an earlier version for JEE
If you previously deployed the ColdFusion JEE configuration on your application server, you must also perform the following steps as part of the installation procedure:
-
As appropriate for your application server, either stop the ColdFusion application and RDS application (if it is running), or stop the application server before you start the installation wizard.
-
(Windows only) If you installed the SequelLink ODBC Agent, stop the ODBC services before you start the installation wizard.
-
Copy application files to a backup directory.
-
Save settings by copying the files cf_webapp_root/WEB-INF/cfusion/lib/neo-*.xml to a backup directory.
-
Before you deploy ColdFusion, undeploy the previous ColdFusion application using your application-server-specific undeploy functionality.
-
Deploy ColdFusion as described in Deploying ColdFusion on IBM WebSphere, Deploying ColdFusion on Oracle WebLogic, or Deploying ColdFusion on JBoss Application Server sections of this page.
-
Create a directory named cf_X_settings (in which X is the earlier version of ColdFusion) in the cf_webapp_root/WEB-INF/cfusion/lib directory.
-
Copy the backed up settings files to the ColdFusion cfusion/lib/cf_X_settings directory.
-
Edit the ColdFusion entry in cfusion/lib/ adminconfig .xml file by setting the value of the runmigrationwizard and the migratecf X (in which X is the earlier version of ColdFusion) switch to true.
-
Restart the ColdFusion application.
-
Browse to ColdFusion Administrator to run the migration wizard.
ColdFusion JEE deployment and configuration
The JEE specification allows application servers to handle compressed and expanded deployments in a server-dependent manner; each application server has its own deployment and configuration mechanism, as the following table shows:
Application server |
Deployment mechanism |
Expanded or compressed deployment |
---|---|---|
Apache Tomcat |
Tomcat Deployment Manager |
Expanded |
IBM WebSphere |
IBM WebSphere Administrative Console |
Compressed |
Oracle WebLogic |
Weblogic Administration Console/Auto deploy to server domains |
Expanded |
JBOSS Application Server |
Auto deploy to server root |
Expanded |
Oracle Weblogic Server |
Oracle Weblogic Server Administration Console |
Expanded |
For basic deployment information, see your JEE application server documentation. ColdFusion deployment instructions differ for each JEE application server. For more information, see deployment instructions for the specific application server.
JEE directory structure
The following table describes the directories under the cf_webapp_root web application directory when you use the JEE configuration:
Directory |
Description |
---|---|
cfdocs |
Documentation for ColdFusion. |
CFIDE |
Files for the ColdFusion Administrator. |
WEB-INF/cfclasses |
Compiled ColdFusion templates in your ColdFusion applications. |
WEB-INF/cfc-skeletons |
Support for ColdFusion components that are exported as web services. |
WEB-INF/cfform |
Files that support Flash forms. |
WEB-INF/cftags |
Templates for ColdFusion. |
WEB-ING/flex |
Configuration and files for LiveCycle Data Services ES. |
WEB-INF/gateway |
Files that support event gateways. |
WEB-INF/cfusion/bin |
Executable files used by ColdFusion. |
WEB-INF/cfusion/cfx |
CFX tag include file and examples. |
WEB-INF/cfusion/charting |
Files for the ColdFusion graphing and charting engine. |
WEB-INF/cfusion/Custom Tags |
Repository for your custom tags. |
WEB-INF/cfusion/db |
Sample databases for all platforms. These databases are Apache Derby databases. |
WEB-INF/cfusion/jintegra |
JIntegra programs, libraries, and other supporting files (for example, to integrate Java and COM code; manage access to ActiveX controls (OCXs) that are hosted in a graphical user interface (GUI) container; and register the JVM and type libraries). |
WEB-INF/cfusion/lib WEB-INF/lib andWEB-INF/cfusion/MonitoringServer |
JAR, XML, property, and other files that are the foundation of ColdFusion, including functionality such as queries, charting, mail, security, Solr searches, and system probes. |
WEB-INF/cfusion/logs |
ColdFusion log files. |
WEB-INF/cfusion/Mail |
Files, including spool files, used by ColdFusion for mail. |
WEB-INF/cfusion/registry |
Used only in UNIX, by the cfregistry tag. |
WEB-INF/cfusion/stubs |
Compiled code for web services. |
WEB-INF/cfusion/solr |
Solr configuration and Jetty. |
Deploying ColdFusion on IBM WebSphere
The following instructions tell you how to deploy ColdFusion on IBM WebSphere Application Server (AS) and Network Deployment (ND).
The following terms refer to WebSphere and ColdFusion directories:
- websphere_root The directory in which IBM WebSphere Application Server is installed; for example, C:\Program Files\WebSphere in Windows, and /opt/WebSphere in UNIX.
- cf_webapp_root The directory to which the ColdFusion web application is deployed; for example, C:\Program Files\WebSphere\AppServer\installedApps_<My_Host>\cfusion.ear\cfusion.war in Windows, and /opt/WebSphere/AppServer/installedApps/<_My_Host>/cfusion.ear/cfusion.war in UNIX.
- java_home The root directory of your Java 2 software development kit (J2SDK); for example, C:\j2sdk1.6.0_29.
Expand the EAR file
-
Open a console window, navigate to the directory that contains the EAR file, and make a new directory named cfusion-ear:
md cfusion-ear (mkdir cfusion-ear on UNIX)
-
Change to the cfusion-ear directory and expand the cfusion.ear file with the jarcommand:
java_home/bin/jar -xvf ../cfusion.ear
This expands the cfusion.ear file into cfusion.war and rds.war (rds.war is not included if you specified a context root of / when you ran the installation wizard).
-
In cfusion-ear, make a new directory named cfusion-war.
md cfusion-war (mkdir cfusion-war on UNIX)
-
Change to the cfusion-war directory and expand the cfusion.war file with the jarcommand:
java_root/bin/jar -xvf ../cfusion.war
This expands the cfusion.war file.
-
(If rds.war exists) Go up one level to cfusion-ear, make a new directory named rds-war.
md rds-war (mkdir rds-war on UNIX)
-
(If rds.war exists) Change to the rds-war directory and expand rds.war with the jarcommand:
java_root/bin/jar -xvf ../rds.war
This expands rds.war.
-
Go up one level to the cfusion-ear file, and delete the cfusion.war and rds.war files:
del cfusion.war (rm cfusion.war on UNIX) del rds.war (rm rds.war on UNIX)
-
Open the cfusion-ear/META-INF/application.xml file in a text editor.
-
Change the web-uri element from cfusion.war to cfusion-war (or the name of the directory that contains the expanded cfusion.war file). Change the web-uri element for rds.war to rds-war. A directory name in the web-uri element cannot contain a dot.
-
Save the application.xml file. To use LiveCycle Data Services ES, you must be running WebSphere 5.1.1 Business Integration.
Add the following JVM flag -Djavax.xml.stream.XMLInputFactory=com.ctc.wstx.stax.WstxInputFactory.
For more information on how to configure JVM flag, visit https://www-01.ibm.com/support/docview.wss?uid=swg21417365
Deploy ColdFusion on WebSphere 7 or 8 (AS)
-
Start the IBM WebSphere Application Server, if it is not running.
-
Open the IBM WebSphere Administrative Console, if it is not running.
-
Select Applications > Install New Application.
-
When the Preparing for the Application Installation page appears, in the text box for the local file system, enter the path to the EAR file that you installed when you installed ColdFusion; for example, C:\ColdFusion11\cfusion.ear. If you are running the Administrative console from a browser that is not on the same system on which WebSphere is running, that is, not from localhost, use the Remote file system option, which enables directory browsing on the server file system.
-
Leave the Context Root box empty and click Next.
-
Accept the default values on the second Select Installation Options page, if appropriate for your WebSphere configuration, and then click Next. WebSphere might display an Application Security Warnings page with a message at the bottom of the page that starts with "ADMA0080W: A template policy file without any permission set is included in the 1.2.x enterprise application." You can ignore this warning.
-
If you have multiple application servers, select the application server in which to install the ColdFusion application and RDS support, and then click Next.
-
When the Map Virtual Hosts for Web Modules panel appears, select the virtual host or hosts in which to install the ColdFusion application and Remote Development Services (RDS) support, and then click Next.RDS must be on the same virtual host and port as ColdFusion.
-
When the Summary panel appears, review the installation configuration, and then click Finish.
-
When the Application Adobe ColdFusion Installed Successfully message appears on the Installing page, select Save To Master Configuration, and then select Save on the Save page to save your workspace. If you changed the application name from the default, the message uses your application name.
-
Start the enterprise application named Adobe ColdFusion.
-
Browse to the ColdFusion Administrator to run the Configuration Wizard.
Note:Copy the version of tools.jar that the application server uses to thecfusion/lib directory.
Deploy ColdFusion on WebSphere 7 or 8 (ND)
-
Start the IBM WebSphere Application Server, if it is not running.
-
Open the IBM WebSphere Administrative Console, if it is not running.
-
Select Applications > Install New Application.
-
When the Preparing for the Application Installation page appears, in the text box for the local file system, enter the path to the EAR file that you installed when you installed ColdFusion; for example, C:\ColdFusion11\cfusion.ear. If you are running the Administrative console from a browser that is not on the same system on which WebSphere is running, that is, not from localhost, use the Remote file system option, which enables directory browsing on the server file system.
-
Leave the Context Root box empty and click Next.
-
Accept the default values on the second Select Installation Options page, if appropriate for your WebSphere configuration, and then click Next.WebSphere might display an Application Security Warnings page with a message at the bottom of the page that starts with "ADMA0080W: A template policy file without any permission set is included in the 1.2.x enterprise application." You can ignore this warning.
-
Select the cluster on which to install the ColdFusion application and RDS support, and then click Next.
-
When the Map Virtual Hosts for Web Modules panel appears, select the virtual host or hosts in which to install the ColdFusion application and Remote Development Services (RDS) support, and then click Next.RDS must be on the same virtual host and port as ColdFusion.
-
When the Summary panel appears, review the installation configuration, and then click Finish.
-
When the Application Adobe ColdFusion Installed Successfully message appears on the Installing page, select Save To Master Configuration, and then select Save on the Save page to save your workspace. If you changed the application name from the default, the message uses your application name.
-
Start the enterprise application named Adobe ColdFusion.
-
Browse to the ColdFusion Administrator to run the Configuration Wizard.
You must copy the version of tools.jar that the application server uses to the cfusion/lib directory.
On WebSphere ND, deploying multiple application server clones on a single computer is commonly referred to as vertical clustering. Vertical clustering leverages the computer's processing power to obtain a higher level of efficiency; however, if there is total computer failure, no application server instances are available. The applications deployed in a vertical cluster share the same file system. Deploying the multiple application servers on multiple computers is commonly referred as horizontal clustering; it provides the highest level of failover and scaling. The steps you perform to deploy ColdFusion in a clustered environment are the same, regardless of clustering method, because the WebSphere Network Deployment Manager manages the cluster.
Enable sandbox security
-
Do the following to ensure that ColdFusion sandbox security secures Java access to files and network resources:
- On the WebSphere Administrative Console Security > Secure Administration panel, ensure that the Java 2 Security option is selected.
- Click Apply and then click Save.
-
Add the following lines to the Standard Properties That Can Be Read By Anyone section of the JVM's security policy file, java.policy. (For example, this file can be located in C:\Program Files\WebSphere\AppServer\java\jre\lib\security\java.policy):
permission java.security.AllPermission; };
Configure operating system-specific binary support in Windows
This process is required to support the following features that use binaries that are specific to your operating system:
- CFX tags written in C++
- Microsoft Access driver with Unicode support
You do this by configuring the search paths to find the required binary files, which are located in the cf_webapp_root\WEB-INF\cfusion\lib directory.
Configure search paths
-
Make a backup copy of the setupCmdLine.bat file, located in the websphere_root\AppServer\bin directory.
-
Open the original file for editing and add the following on a single line before the line that starts with SET WAS_CLASSPATH:
SET CF_APPS_PATH=cf_webapp_root\WEB-INF\cfusion\lib
Replace cf_webapp_rootwith the path to your web application directory; for example, enter the following:
SET CF_APPS_PATH=%WAS_HOME%\installedApps\%WAS_CELL%\ Adobe_ColdFusion_11.ear\cfusion.war\WEB-INF\cfusion\lib;%WAS_HOME%\installedApps\%WAS_CELL%\ Adobe_ColdFusion_11.ear\cfusion.war\WEB-INF\flex\jars
-
Add the CF_APPS_PATH variable to the WAS_CLASSPATH by appending the following text to the path statement:
;%CF_APPS_PATH%
The WAS_CLASSPATH line should look similar to the following:
SET WAS_CLASSPATH=%WAS_HOME%/properties;%WAS_HOME%/lib/bootstrap.jar; %WAS_HOME%/lib/j2ee.jar;%WAS_HOME%/lib/lmproxy.jar;%WAS_HOME%/lib/ urlprotocols.jar;%CF_APPS_PATH%
-
Save the file.
-
Add the full path to the cf_webapp_root\WEB-INF\cfusion\lib directory to the WAS_PATH variable in the setupCmdLine.bat file. The WAS_PATH line should look similar to the following:
C:\Program Files\IBM\WebSphere MQ\bin;C:\Program Files\IBM\WebSphere MQ\java\bin;C:/Program Files/IBM/WebSphere MQ/WEMPS\bin;%CF_APPS_PATH%;
-
Save the file.
Enable COM support for Windows
You enable Component Object Model (COM) support in Windows after installing ColdFusion so that you can use the cfreport tag with Crystal Reports. COM support is not required for the ColdFusion Report Builder or any reports that you create with the ColdFusion reporting feature.
-
Make a backup copy of the setupCmdLine.bat file, which is located in the websphere_root\AppServer\bin directory.
-
Open the original file and add the following on a single line:
SET PATH=%PATH%;cf_webapp_root\WEB-INF\cfusion\jintegra\bin;cf_webapp_root\WEB-INF\cfusion\jintegra\bin\international
Replace cf_webapp_rootwith the path to your web application root directory, for example:
\cfusion.ear\cfusion.war\WEB-INF\cfusion\jintegra\ bin;%WAS_HOME%\installedApps\%WAS_CELL%\Adobe_ColdFusion_11.ear \cfusion.war\WEB-INF\cfusion\jintegra\bin\international
-
Save the file. In some cases, you might also have to do the following to register the Microsoft Type viewer:
-
Open a console window and go to the cf_webapp_root\WEB-INF\cfusion\lib directory.
-
Register TypeViewer.dll by issuing the following command:
regsvr32 TypeViewer.dll
Configure operating system-specific binary support for Solaris and Linux
This process is required to support CFX tags written in C++ that use binaries that are specific to your operating system.
You must configure the search paths to find the required binary files, which are located in the cf_webapp_root/WEB-INF/cfusion/lib directory.
Configure search path
-
Make a backup copy of the startServer.sh file, which is located in the websphere_root/AppServer/bin directory. The path specifications in these instructions assume that you deployed ColdFusion using the standard application name (Adobe ColdFusion) and did not rename the application.
-
Open the original file, and in the PLATFORM case block, just above the LD_LIBRARY_PATH or LIBPATH line, add the following entry on a single, long line:
On Solaris:CFUSION_APPS_PATH=cf_webapp_root/WEB-INF/cfusion/lib
Replace cf_webapp_rootwith the path to your web application root directory; for example:
CF_APPS_PATH="$WAS_HOME"/installedApps/"$WAS_CELL"/ Adobe_ColdFusion_11.ear/cfusion.war/WEB-INF/cfusion/lib
On Linux:
CF_APPS_PATH=cf_webapp_root/WEB-INF/cfusion/lib
Replace cf_webapp_rootwith the path to your web application root directory; for example:
CF_APPS_PATH="$WAS_HOME"/installedApps/"$WAS_CELL"/ Adobe_ColdFusion_11.ear/cfusion.war/WEB-INF/cfusion/lib
-
Append the CF_APPS_PATH environment variable to the LD_LIBRARY_PATH entry. The resulting line should be similar to the following:
LD_LIBRARY_PATH="$WAS_LIBPATH":$LD_LIBRARY_PATH:$CF_APPS_PATH
On Linux:
CF_APPS_PATH=cf_webapp_root/WEB-INF/cfusion/lib
-
Save the file and restart your WebSphere Application Server.
Enable ColdFusion charting and graphing support for UNIX
-
Open the WebSphere Administrative Console.
-
In the left navigation bar, select Node_name > Servers > Application Servers.
-
Select your JEE application server; for example, Server1.
-
Under Java and Process Management, select Process Definition.
-
On the Process Definition page, select Java Virtual Machine in the Additional Properties box.
-
If you are running ColdFusion on a system without a monitor, do the following:
- In the Additional Properties box at the bottom of the page, select Custom Properties.
On the Custom Properties page, select New and add a system property, completing the fields as follows:
Value true
-
Click OK.
-
Save the master configuration file.
Disable RDS
If you disable RDS, the following ColdFusion features do not work:
- The Browse Server button in the ColdFusion Administrator (for example, on the ColdFusion Mappings page)
- The Query Builder and charting in the ColdFusion Report Builder
To disable RDS on UNIX,
-
Stop ColdFusion.
-
In the WebSphere Administrative Console, select the Applications > Enterprise Applications panel, select the Adobe ColdFusion application, and then click Stop.
-
Do the following in both the cf_webapp_root\WEB-INF\web.xml and the websphere_root\AppServer\config\cells\NodeName\applications\cf_application_name.ear\ deployments\cf_application_name\cfusion.war\WEB-INF\web.xml files (or the equivalent paths in UNIX). For example, change the following files:
To disable RDS on Windows,
-
Back up the ColdFusion web module web.xml file (available in either C:\Program Files\WebSphere\AppServer\installedApps_<MY_NODE>\cfusion.ear\cfusion.war\WEB-INF\web.xml or C:\Program Files\WebSphere\AppServer\config\cells_<MY_NODE>\applications\cfusion.ear\deployments\Adobe ColdFusion <version>\cfusion.war\ WEB-INF\web.xml).
-
Open the original web.xml file for editing.
-
Comment out the RDS Servlet definition, as follows:
<!-- <servlet id="coldfusion_servlet_8789"> <servlet-name>RDSServlet</servlet-name> <display-name>RDS Servlet</display-name><servlet-class>coldfusion.bootstrap.BootstrapServlet</servlet-class> <init-param id="InitParam_113401311165856789"><param-name>servlet.class</param-name> <param-value>coldfusion.rds.RdsFrontEndServlet</param-value></init-param> </servlet> -->
The text in the servlet definition might vary.
-
Comment out the RDS Servlet mapping, as the following example shows:
<servlet-mapping id="coldfusioon_mapping_9"> <servlet-name>RDSServlet</servlet-name> <url-pattern>/CFIDE/main/ide.cfm</url-pattern> </servlet-mapping> -->
The servlet-mapping id value might vary.
-
Save the file.
-
Restart the ColdFusion application.
-
If your ColdFusion application context root is something other than /, disable or undeploythe RDS redirector web module by doing the following:
-
In the WebSphere Administrative Console, select cell_name > Applications > Enterprise Applications.
-
Stop the Adobe ColdFusion application if it is running.
-
Select Adobe ColdFusion Application, select Manage Modules and then select the check box for ColdFusion RDS application, and then click Remove.
Enable web services
To enable web services, copy the tools.jar file from Java home that WebSphere uses to thecfusion/lib directory.
Apply application server configuration
To apply application server configuration, restart the application server.
Configure ColdFusion
Ensure that the following settings and practices are in place before using WebSphere Application Server ND:
- Event Gateway Ensure that the startup mode of the Socket gateway instances is set to manual. In particular, do not set it to Automatic when using a vertical cluster. Select one of the instances in the vertical cluster and start the Socket gateway on that instance manually.
- Session ReplicationEither avoid ColdFusion-specific data types or serialize them to WDDX and store them in session scope as strings.
ColdFusion Administrator:
- In a vertical cluster environment, avoid concurrent changes to the same service.
- In a horizontal cluster environment, each server has its own ColdFusion Administrator. You must make changes once per server.
- In a vertical cluster environment, the ColdFusion Administrator scheduled tasks are scheduled on all servers.
- Solr Server Only one Solr Search Server can run on each server computer.
- Compilation Use precompiled classes and ensure that the Trusted Cache setting is enabled.
Deploying ColdFusion (2016 release) on WebLogic 12.2.1.0.0
The following instructions tell you how to deploy ColdFusion (2016 release) on Oracle WebLogic 12.2.1. You can deploy ColdFusion on WebLogic using either an expanded EAR file or WAR files.
The following terms refer to ColdFusion directories:
- cfusion_install_directory The directory that contains the files extracted by the ColdFusion install, for example, C:\cf2016 or /opt/cf2016.
- wl_root The directory that contains WebLogic, for example, C:\Oracle.
- wldomain_root The directory that contains the WebLogic domain into which you deployed ColdFusion.
- cf_webapp_root The directory into which you deployed the ColdFusion web application, for example, C:\Oracle\user_projects\cfdomain\applications\cfusion-war.
- java_home The root directory of your Java 2 software development kit (J2SDK); for example, C:\jdk1.6.0.
-
Extract the cfusion.war in a folder, for example, cfusion .
-
Comment the default permissions granted to all domain and provide full permission to [Oracle_Home]\wlserver\server\lib\weblogic.policy file.
-
Edit startWeblogic.cmd and replace set SAVE_JAVA_OPTIONS=%JAVA_OPTIONS% with set SAVE_JAVA_OPTIONS=%JAVA_OPTIONS% -Djavax.xml.transform.TransformerFactory=com.sun.org.apache.xalan.internal.xsltc.trax.TransformerFactoryImpl
-
Start WebLogic from command prompt using [Oracle_Home]\user_projects\domains\base_domain\bin\startWeblogic.cmd.
-
Deploy the cfusion directory either through WLAdminConsole/deployments/install or by placing it in autodeploy folder of domain created. The exploded war gets deployed and is seen in the WLAdminConsole as well.
Install ColdFusion on WebLogic
-
Run the ColdFusion installation wizard, choosing the JEE configuration. The installation wizard places the WAR files in the install directory.
-
Determine the WebLogic domain in which to deploy ColdFusion. Optionally, create a domain.
-
Because ColdFusion must run from an expanded directory structure, expand the cfusion .war and rds .war files manually, and expand the web applications by doing the following:
Open a console window, navigate to the directory that contains the WAR files, and create a directory for the ColdFusion WAR file (named whatever you want the context root to be) and the RDS WAR file (named CFIDE):
md cfusion (Windows, mkdir cfusion on UNIX) md CFIDE (Windows, mkdir CFIDE on UNIX)
b. Change to the cfusion directory and expand the cfusion.war file with the jar command:
java_home/bin/jar -xvf ../cfusion.war
c. Go up one level to the install directory:
cd ..
Go to the CFIDE directory and expand the rds.war file with the jar command:
java_home/bin/jar -xvf ../rds.war
-
Open the weblogic.policy file. On WebLogic 11g, the file is located in the WebLogic_HOME/wlserver_11.0/server/lib/ directory. In a text editor, comment out the restrictive permissions, and add permission java.security.AllPermission; to the default permissions section, as the following example shows:
// default permissions granted to all domains grant { permission java.security.AllPermission; /* permission java.util.PropertyPermission "java.version", "read"; permission java.util.PropertyPermission "java.vendor", "read"; ... permission java.util.PropertyPermission "java.vm.name", "read"; */ }; ...
-
Deploy the cfusion and CFIDE directory structures using your site-specific WebLogic deployment method.
-
Ensure that the following jars are in the startup script's classpath.
WEB-INF/cfusion/lib/jintegra.jar WEB-INF/flex/jars/cfgatewayadapter.jar WEB-INF/flex/jars/concurrent.jar
-
Review the console messages and server log to ensure that ColdFusion deployed successfully.
-
Start the ColdFusion Administrator, which runs the Configuration wizard.
-
To install any other integrated Adobe or third-party technologies, see Installing Integrated Technologies.
-
Configure and manage your system, as described in Configuring your System.
-
To learn about ColdFusion, read the documentation, which is accessible through the Documentation link on the Resources page of the ColdFusion Administrator.
Note:You must copy the version of tools.jar that the application server uses to the cfusion/lib directory.
Configure operating system-specific binary support in Windows
-
Locate the startup script for the WebLogic domain, which is typically the startWebLogic cmd file, which is located in the wldomain_root\bin directory.
-
Make a backup copy of this file.
-
Open the startup script.
-
Establish the following basic variables at the beginning of the script:
- CF_WEB_INF
CF_SHARED_LIB
For example:
SET CF_SHARED_LIB=%CF_WEB_INF%\cfusion\lib
-
Save the startup script and restart the WebLogic Server.
Enable COM support for Windows
-
Open the startup script for the WebLogic domain, which is typically the startWebLogic cmd file, which is located in the wldomain_root\bin directory.
-
Establish the following variables:
- JINTEGRA_PATH
- PRE_CLASSPATH
PRE_PATH
For example:
SET PRE_CLASSPATH=%CF_SHARED_LIB%\jintegra.jar SET PRE_PATH=%CF_SHARED_LIB%;%JINTEGRA_PATH%
Configure operating system-specific binary support in UNIX
-
Locate the startup script for the WebLogic domain, which is typically the startWebLogic.sh file, which is located in the wldomain_root\bin directory.
-
Make a backup copy of this file.
-
Open the startup script.
-
Establish the following basic variables at the beginning of the script:
- CF_WEB_INF
CF_SHARED_LIB
For example:
CF_WEB_INF=cf_webapp_root/WEB-INF CF_SHARED_LIB=${CF_WEB_INF}/cfusion/lib
-
Save the startup script and restart the WebLogic Server.
Enable ColdFusion security in Windows
-
Open the startup script for the WebLogic domain, which is typically the startWebLogic cmd file, which is located in the wldomain_root\bin directory.
-
Establish or append to the following variable:
- CF_SECURITY_JVM_OPTIONS
- MEM_ARGS
If you are not using JRockit, append -Xms32m -Xmx512m -Xss64k -XX:MaxPermSize=128m to the existing MEM_ARGS line of the startup script.
If you are using JRockit, append -Xms32m -Xmx512m -Xss64k to the existing MEM_ARGS line of the startup script.
- JAVA_OPTIONS Append the CF_SECURITY_JVM_OPTIONS variable to the existing JAVA_OPTIONS line of the startup script)
For example:
SET CF_SECURITY_JVM_OPTIONS="-Djava.security.manager" @rem You must append %CF_SECURITY_JVM_OPTIONS% to the existing JAVA_OPTIONS value. set JAVA_OPTIONS=-Dweblogic.security.SSL.trustedCAKeyStore=C:\WebLogic_HOME\server\lib\ cacerts %CF_SECURITY_JVM_OPTIONS% %CF_COM_JVM_OPTIONS% @rem You must append the following to the existing MEM_ARGS value. @rem -Xms32m -Xmx512m -Xss64k -XX:MaxPermSize=128m
-
Save the startup script and restart the WebLogic Server.
Enable ColdFusion security and graphing support in UNIX
-
Open the startup script for the WebLogic domain, which is typically the startWebLogic.sh file, which is located in the wldomain_root\bin directory.
-
Establish or append to the following variables:
- CF_SECURITY_JVM_OPTIONS
- CF_GRAPHING_JVM_OPTIONS
- MEM_ARGS
If you are not using JRockit, append -Xms32m -Xmx512m -Xss64k -XX:MaxPermSize=128m to the existing MEM_ARGS line of the startup script.
If you are using JRockit, append -Xms32m -Xmx512m -Xss64k to the existing MEM_ARGS line of the startup script.
JAVA_OPTIONS Append the CF_SECURITY_JVM_OPTIONS variable to the existing JAVA_OPTIONS line of the startup script)
For example:
CF_SECURITY_JVM_OPTIONS="-Djava.security.manager" CF_GRAPHING_JVM_OPTIONS="-Djava.awt.headless=true" # You must append ${CF_SECURITY_JVM_OPTIONS} and ${CF_GRAPHING_JVM_OPTIONS} # to the existing JAVA_OPTIONS value. # JAVA_OPTIONS="default java options ${CF_SECURITY_JVM_OPTIONS} ${CF_GRAPHING_JVM_OPTIONS}" # You must append the following to the MEM_ARGS variable coded # in the server startup file: # "-Xmx512m -XX:MaxPermSize=128m"
-
Save the startup script and restart the WebLogic Server.
Azure Blob storage on Weblogic
In ColdFusion (2021 release), Azure Blob storage does not work as expected on WebLogic 14.1.1.0.0, which returns a Null Pointer Exception.
As a work-around, perform the steps below, in the file startWeblogic.cmd, and add the following JVM flag:
set JAVA_OPTIONS=-Djavax.xml.parsers.SAXParserFactory=com.sun.org.apache.xerces.internal.jaxp.SAXParserFactoryImpl -DUseSunHttpHandler=true %JAVA_OPTIONS%
Deploying ColdFusion on Oracle Application Server 11g
The following instructions assume that you installed the JEE configuration of ColdFusion and that the EAR file to deploy is under C:\ColdFusion_Jee\cfusion.ear.
Before you deploy ColdFusion on Oracle 11g, ensure that the following is true:
- Oracle Application Server 11g is installed and running.
- You set up an OC4J JEE container for the ColdFusion installation. Adobe recommends that you create an OC4J instance for ColdFusion to avoid potential classpath issues with other applications.
- (Recommended, but not required) You created an OC4J instance. To do so, connect to the Oracle Application Server using Enterprise Manager and create an OC4J instance. By default the HTTP URL is http://machineName:1811. If 1811 is unavailable, the next available port in sequential order is used.
- You increased the heap size to at least 256 MB (although 512 MB is preferred). To do so, select the OC4J instance in Enterprise Manager, and select Administration / Server Properties. Under the Command Line Options category, add -Xmx256M to the Java Options, and then restart the OC4J instance.
Deploy ColdFusion on Oracle 11g
-
Ensure that the application server and the OC4J instance are running.
-
Open a Windows command prompt and go to the oracle_root/dcm/bin directory.
-
Deploy the ColdFusion application by using the command-line tool dcmctl.bat , as follows:
Dcmctl deployapplication -application cf_app -file c:\ColdFusion_Jee\cfusion.ear -component oc4j_instance
-
Edit the oracle_root/j2ee/oc4j_instance/config/java2.policy file by adding the following to the end of the file:
grant { permission java.security.AllPermission; };
-
Start the ColdFusion Administrator, which runs the Configuration and Settings Migration wizard.
Note:To enable Livecycle Data Services ES on Oracle AS, specify the following JVM argument in the ColdFusion Administrator: -Doc4j.jmx.security.proxy.off=true
You must perform some configuration steps to enable support for CFX tags written in C++, which binary files that are specific to your operating system.
Configure operating system-specific binary support for Windows
-
Connect to Oracle AS 11g using Enterprise Manager.
-
Go to oc4j_instance/Administration/Server Properties.
-
Under the Environment Variables category, select Add Environment Variable.
-
Enter PATH as the name.
-
Enter $ORACLE_HOME\j2ee\ oc4j_instance\applications\ cf_app\cfusion\WEB-INF\cfusion\lib; as the value.
-
Ensure that the Append option is selected.
-
Select Apply.
-
When the Enterprise Manager prompts you to restart, select the restart option.
Configure operating system-specific binary support for Solaris and Linux
-
Connect to Oracle AS 11g using Enterprise Manager.
-
Go to oc4j_instance/Administration/Server Properties.
-
Under the Environment Variables category, select Add Environment Variable.
-
Enter LD_LIBRARY_PATH as the name.
-
Enter $ORACLE_HOME/j2ee/oc4j_instance /applications/cf_app /cfusion/WEB-INF/cfusion/lib; as the value.
-
Ensure that the Append option is selected.
-
Select Apply.
-
When the Enterprise Manager prompts you to restart, select the restart option.You must enable Component Object Model (COM) support in Windows after installing ColdFusion to use the cfreport tag with Crystal Reports. It is not required for the ColdFusion Report Builder or any reports that you create with the ColdFusion reporting feature.
Enable COM support
-
In Oracle AS 11g Enterprise Manager, go to oc4j_instance /Administration/Server Properties.
-
In the Environment Variables category, ensure that the entry PATH exists. If not, follow the instructions to enabling features with operating system-specific binaries.
-
Add {{$ORACLE_HOME\j2ee\oc4j_instance\applications\cf_app\cfusion\WEB-INF\cfusion\jintegra\bin; $ORACLE_HOME\j2ee\oc4j_instance\applications\cf_app \cfusion\WEB-INF\cfusion\jintegra\bin\international }}as the value.
-
Ensure that the Append option is enabled.
-
Select Apply.
-
When the Enterprise Manager prompts you to restart, select the restart option.
-
In some cases, you might also have to do the following to register the Microsoft Type viewer:
- Open a console window and go to cf_webapp_root\WEB-INF\cfusion\lib.
Register TypeViewer.dll by issuing the following command:
regsvr32 TypeViewer.dll
The following steps configure your application server to useColdFusion charting and graphing on AIX, Linux, and Solaris systems. This step is not required to enable charting and graphing in Windows.
Enable charting and graphing
-
In Oracle AS 11g Enterprise Manager, go to oc4j_instance/Administration/Server Properties.
-
If the following entry does not exist in the Java Option under the Command Line Options category, add it:
-Djava.awt.headless=true
-
Select Apply.
-
When the Enterprise Manager prompts you to restart, select the restart option.
Disable the RDS web module
If you installed ColdFusion at a context root other than /, use the following procedure to disable the RDS redirector web module without undeploying it.
If you disable (or undeploy ) the RDS redirector and do not disable the RDS servlet, RDS services are still available using the ColdFusion application context root, but tools that use RDS and require a context root of /, such as Dreamweaver and earlier versions of HomeSite, do not work.
-
In the Oracle AS 11g Enterprise Manager, select oc4j_instance /Applications.
-
Select Adobe ColdFusion application and select Edit.
-
In the Administration category, select Advanced Properties.
-
In the Configuration Files category, select orion-application.xml.
-
Comment out the RDS web module as the following example shows:
<web-module id="rds" path="rds.war" /> -->
-
Apply the changes.
-
Restart the OC4J instance.You can enable the RDS web module by repeating this procedure and selecting the Enabled option.
Deploying ColdFusion on JBoss Application Server
ColdFusion supports JBoss with the following specifications:
- JBoss 5.1,6.x,7.0, 7.1
- JRE 1.5 or 1.6
ColdFusion has not been tested using JBoss under the following conditions:
- JBoss using a servlet container other than Tomcat
Deploying ColdFusion to a JBoss cluster
If you are already using an application with context root of /, use a context root other than / for the cfusion-ear file. If you specified / when you installed ColdFusion, you can change it by opening the cfusion-ear/META-INF/application.xml file in a text editor and modifying the context-root element. After you deploy the cfusion-ear file, you access ColdFusion pages by specifying http://hostname:portnumber/contextroot/pagename.cfm.
If you are updating an existing deployment of ColdFusion, undeploy it for JEE before you deploy ColdFusion 11.
When you deploy ColdFusion on an existing version of JBoss, expand the EAR file or WAR files manually before deployment.
This document uses the following conventions:
- JBOSS_HOME Directory where JBoss is installed, for example, C:\jboss-as-7.1.1.Final in Windows or /usr/local/jboss-as-7.1.1.Final on UNIX
- JBOSS_DEPLOY_DIR Application deployment directory in JBoss, for example, C:\jboss-as-7.1.1.Final\standalone\deployments in Windows
- CF_WEBAPP_ROOT Directory where ColdFusion is deployed, for example: C:\jboss-as-7.1.1.Final\standalone\deployments\cfusion.ear\cfusion.war
- TEMP_LOCATION Temporary location where you extract the cfusion.ear file.
Deploy ColdFusion on JBoss
-
Set JAVA_HOME to the appropriate JDK.
-
Install ColdFusion by using the JEE deployment option and selecting to create an EAR file (the default). The installation program creates the cfusion.ear file in the install directory.
-
Extract the cfusion.ear file into a TEMP_LOCATION\cfusion.ear folder. This step creates cfusion.war and rds.war files and a META-INF folder in the cfusion.ear folder.
-
In the cfusion.ear folder, extract the cfusion.war and rds.war files into folders named cfusion andrds, respectively.
-
Delete the compressed cfusion.war and rds.war files.
-
Rename the cfusion and rds folders to cfusion.war and rds.war, respectively.
-
Stop JBoss if it is running.
-
Copy or move the {{TEMP_LOCATION\cfusion.ear }}folder into the {{JBOSS_DEPLOY_DIR }}folder. For JBoss 7, place the exploded ear in the {{JBOSS_HOME/standalone/deployments }}directory and create an empty file cfusion.ear.dodeploy (if your EAR directory name is cfusion.ear.) The resulting directory structure will appear as follows:
server default deploy cfusion.ear cfusion.war META-INF rds.war JBoss 7.x standalone deployments cfusion.ear cfusion.war META-INF rds.war cfusion.ear.dodeploy
-
(Windows)Edit the JBOSS_HOME\bin\run.bat file for JBoss 5.1 and 6.x and JBOSS_HOME\standalone.bat for JBoss 7.x by doing the following:
- If not present, add the JVM (-Xmx512m) parameter to JAVA_OPTS.
- Ensure that the permanent generation heap size is set by adding -XX:MaxPermSize=128m to JAVA_OPTS.Without this parameter, the JVM can generate a java.lang.OutOfMemoryError error.
- Ensure that the jars available in WEB-INF/flex/jars are in the classpath.
- Save the run.bat file.
Start the server by running the JBOSS_HOME\bin\run.bat file.
Note:If you use Apache Derby database, add the following in run.bat: JAVA_OPTS=%JAVA_OPTS% -Djboss.platform.mbeanserver. This is to ensure that Apache Derby do not start a JMX management server that might conflict with JBoss.
-
(Linux) Edit the JBOSS_HOME/bin/run.conf file by doing the following:
- In JAVA_OPTS, change -Xmx128m. to -Xmx512m.
- Add -XX:MaxPermSize=128m to JAVA_OPTS.
- Save the run.conf file.
- Start the server by running the JBOSS_HOME/bin/run.sh file. To enable features with operating system-specific binaries, configure ColdFusion. This step is required to support the following features that use binaries that are specific to your operating system:
- CFX tags written in C++
Microsoft Access driver with Unicode support (Windows only)
Use the following procedure for your operating system to configure the search paths to find the required binary files. These files are located in the CF_WEBAPP_ROOT\WEB-INF\cfusion\lib directory.
Note:If you use Apache Derby database, add the following in run.bat: JAVA_OPTS="$JAVA_OPTS -Djboss.platform.mbeanserver". This is to ensure that Apache Derby do not start a JMX management server that might conflict with JBoss.
Note:If cfusion.ear is not deployed before JBoss times out for deployment, you can change the deployment timeout of JBoss in JBOSS_HOME\standalone\configuration\standalone.xml file.{{<subsystem xmlns="urn:jboss:domain:deployment-scanner:1.0"> <deployment-scanner scan-interval="5000" relative-to="jboss.server.base.dir" path="deployments" deployment-timeout="120",/> </subsystem>}}
Note:After CF is deployed in JBoss 7.x, web services will not function. To resolve this, add <path name="javax/annotation/processing"/> in JBOSS_HOME\modules\sun\jdk\main\module.xml file. For more
Note:If
you are running ColdFusion on MAC, documents and PDF functionality may
fail with {{ClassNotFound for com.aqua.LookAndFeel }}error.
To resolve this, add the following entry to JBOSS_HOME\modules\sun\jdk\main{color}module.xml file:<path name="com/apple/laf"/>Note:In JBOSS 7.x, if OpenOffice is not functioning, start JBoss with the following flag:
Djava.ext.dirs=JBOSS_DEPLOY_DIR/cfusion.ear/cfusion.war/WEB-INF/cfusion/lib/oosdk/;<java-home>/lib/ext/
Use ':' for Unix based machines and ';' for ColdFusion running on Windows.
Also open the module.xml file in JBOSS_HOME\modules\sun\jdk\main\ and add the following line:
<path name="com/sun/star/lib/loader"/>
Deploying ColdFusion 11 on JBoss Enterprise Application Platform (EAP)
ColdFusion 11 supports EAP 6.4.
Note: ColdFusion (2016 release) does not support EAP 6.4.
If JBoss is running on JDK 1.8, copy the tools.jar manually from {JDK_Home}/lib to {eap_web_root}/WEB-INF//cfusion/lib/.
You can deploy JBoss in two ways:
1. Standalone
2. Domain
There are multiple ways to install a ColdFusion war file in JBoss:
· From the management console
· From CLI
· Manually using the deployment scanner
The example below demonstrates two ways of deploying the war file in a standalone mode:
1. From the Management Console
2. Manually using the deployment scanner
To deploy the war from the Management Console:
-
Select the Deployments tab in the console.
Note: The deployment method for applications differ according to whether you are deploying to a standalone server instance or in a managed domain.
-
To add the ColdFusion archive, click Add.
-
On the Create Deployment dialog box, browse to the file you want to deploy, select it, and upload it.
-
Edit or verify the deployment name and choose if you want to enable the archive after deployment.
-
Open the browser and enter http://localhost:8080/cfusion/CFIDE/administrator/index.cfm. This opens the ColdFusion administrator on EAP. The default context root is cfusion.
To manually deploy the war file:
-
Copy the cfusion.war file into a temp folder and unzip it.
-
Delete the compressed cfusion.war files.
-
Rename the temp folder to cfusion.war.
-
The resulting directory structure will appear as follows:
a. CFIDE
b. META-INF
c. WEB-INF
d. Config.ini
e. Crossdomain.xml
-
Place the cfusion.war folder in {EAP_Install_location}/standalone/deployments.
-
Copy or move the {{TEMP_LOCATION\cfusion.war }} folder into the {{JBOSS_DEPLOY_DIR }}folder. Place the exploded war in the {{JBOSS_HOME/standalone/deployments}} directory and create an empty file cfusion.war.dodeploy. A marker file is created in the deployment folder to indicate the successful deployment, and the application is flagged as Enabled in the Management Console. You can see that the archive starts to deploy and when the deployment ends, the name of the text file changes to {name_of_war}.war.deployed.
-
Start JBoss EAP server.
-
Enter http://localhost:8080/cfusion/CFIDE/administrator/index.cfm in your browser to launch the ColdFusion administrator. The default context root is cfusion.
-
To view the deployment folders, click System Information and navigate to the Java class path section.
Exploded deployment of ColdFusion in a managed JBoss EAP domain
-
Decompress the cfusion.war file after changing the extension from .war to .zip. Place the contents in a folder called cfusion.war. This cfusion war folder can reside anywhere in the local file system.
-
To point the Domain Controller server instance to the exploded file, use any of the following three ways:
- Log in to the EAP management console of the Domain Controller at : http://<EAP-DC-IP>:9990/console/App.html#domain-deployments
-
- Navigate to the Deployments tab, and click Add. Switch to the Unmanaged tab in theCreate Deployment window that pops up.
- Specify the path to the exploded cfusion.war directory.
- Leave the Relative To field blank.
- Clear the Is Archive check-box.
- Enter cfusion.war in the Name and Runtime Name fields.
- Run the following command in the Domain Controller Management CLI:
- Add the following configuration element to the <deployments> XML element in the domain.xml file of the Domain Controller:
/deployment=cfusion.war:add(runtime-name="cfusion.war", content=[{"path"=>"<absolute-path-to-cf-war>\\cfusion.war","archive"=>false}])
<deployments>
<deployment name="cfusion.war" runtime-name="cfusion.war">
<fs-exploded path="<absolute-path-to-exploded-app-war-dir>/cfusion.war"/>
</deployment>
</deployments>
Make the exploded cfusion.war file available to all the managed server instances at the same path specified for the Domain Controller above. Create the same folder structure and copy the cfusion.war dir to the local file system of all the server instances.
-
- Deploy the WAR file by running the following command in the Domain Controller Management CLI:
deploy --name=cfusion.war --all-server-groups
Once the deployment is completed, you can access the ColdFusion application on the various EAP server instances at port offset mentioned in the “Domain > Topology” section in the EAP management console.
Access the ColdFusion administrator console at:
<server-instance-IP>:<8080+offset>/cfusion/CFIDE/administrator
By default, the application context (“cfusion” here) is the name of the deployed WAR file. A successful deployment does not produce any output to the CLI. You can monitor the Domain Controller / Host Controller console to see the deployment process. A successful deployment should start the ColdFusion application.
If you are using ColdFusion-based web-services, copy the version of tools.jar that the application server uses to the cfusion/lib directory at <cfusion-war>\WEB-INF\cfusion\lib.
Configure operating system-specific binary support for Windows
-
Ensure that JBoss Server is stopped.
-
Edit JBOSS_HOME\bin\run.bat by adding the following:
set PATH=%PATH%;%CF_LIB_PATH%
-
Edit the run.bat file that is located in the JBOSS_DEPLOY_DIR by doing the following:
Locate the following text:
rem ----------------------------------------------- rem JBoss Bootstrap Script for Win32 rem -----------------------------------------------
-
Below this text, insert three lines and paste.
set PATH=%PATH%;%CF_LIB_PATH%
-
Save the file and start the server.
Note:You must copy the version of tools.jar that the application server uses to the cfusion/lib directory.
Configure operating system-specific binary support for Linux
-
Ensure that JBoss Server is stopped.
-
Edit JBOSS_HOME/bin/run.sh by adding the following:
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:CF_WEBAPP_ROOT/WEB-INF/cfusion/lib
Enable COM support (Windows only)
-
Ensure that JBoss Server is stopped.
-
Edit JBOSS_HOME\bin\run.bat by adding the following:
set CF_LIB_PATH=%CF_LIB_PATH%;CF_WEBAPP_ROOT\WEB-INF\cfusion\jintegra\bin;CF_WEBAPP_ROOT\WEB-INF\cfusion\jintegra\bin\international
-
Save the file and start ColdFusion.
Enable communication with Flex
When ColdFusion is configured to use RMI for LiveCycle Data Services ES, ColdFusion listens on port 1199 by default. However JBoss typically starts listening on this port before ColdFusion does; as a result, an exception is thrown. To configure ColdFusion to use a different RMI port, on the Java and JVM page of the ColdFusion Administrator, specify the following in the JVM arguments text area:
-Dcoldfusion.rmiport=nnnn
Replace nnn with the value of an unused port. If you try to connect from a LiveCycle Data Services ES server that is running in another JVM server to ColdFusion over RMI, the Flex server must start with the same JVM argument.
Disable RDS
-
Stop ColdFusion.
-
Edit JBOSS_DEPLOY_DIR\cfusion.ear\cfusion.war\WEB-INF\web.xml by commenting out the following:
<servlet-name>RDSServlet</servlet-name> <display-name>RDS Servlet</display-name> <servlet-class>coldfusion.bootstrap.BootstrapServlet</servlet-class> <init-param id="InitParam_113401311165856789"> <param-name>servlet.class</param-name> <param-value>coldfusion.rds.RdsFrontEndServlet</param-value> </init-param> </servlet> --> <!-- <servlet-mapping id="macromedia_mapping_9"> <servlet-name>RDSServlet</servlet-name> <url-pattern>/CFIDE/main/ide.cfm</url-pattern> </servlet-mapping> -->
Prevent security-based errors
If you notice security-based errors when JBOSS is starting (errors that mention Java and security), edit the run.bat file as follows:
-
Go to the line that contains the -Xmx512m parameter.
-
Change the text: -Dprogram.name=%PROGNAME% to be -Dcoldfusion.disablejsafe=true %JAVA_OPTS%.
These security errors occur because some versions of JBOSS cannot handle additional encryption software that ColdFusion uses for higher security standards. Some features, such as EJB3, require JDK 1.5.
Deploying ColdFusion on Tomcat server
ColdFusion comes with an in-built modified version of Tomcat server. You can also deploy ColdFusion as WAR file on a standard Tomcat server similar to any other JEE server deployment.
-
Create a WAR file of ColdFusion application. See deploying section for more information.
-
Open the Tomcat admin console (http://hostname:portnumber)
-
Click the Manager app at the right side menu options. Alternatively, you canuse: http://hostname:portnumber/manager/html.
- Tomcat Web Application Manager appears. You can see a list of applications already deployed in Tomcat server at the top followed by the WAR file deploy option.
-
Click Choose File to browse through your system and choose the WAR file.
-
Click Deploy.
After successful deployment you would receive a message on top of the page. The deployed ColdFusion application appears in the list of applications. You can start, stop, undeploy , and reload the application using the GUI options.
Access the ColdFusion application by using the application name that you provided while creating the WAR file. (http://hostname:portnumber/applicationname)
Undeploying ColdFusion
To undeploy ColdFusion in the JEE configuration, you use application-server specific undeploy tools and methods.
Undeploy ColdFusion in the JEE configuration
-
Remove all ColdFusion specifications from the java.args and java.library.path JVM arguments used by your application server.
-
(Windows only) If you installed ODBC support, remove the ODBC Windows services by navigating to the cf_webapp_root\WEB_INF\cfusion\db\SequeLink Setup directory and executing the RemoveSequeLink.bat file.
-
If necessary, copy and save CFM pages from the ColdFusion web application root.
-
Undeploy the ColdFusion web application using application-server-specific undeployfunctionality.
On WebLogic, open the WebLogic Administrator., open the WebLogic Administration Console (http://hostname:portnumber/console) and go to domainname > Deployments > Applications. Click the trash can to the right of the ColdFusion application, and then click Yes. Open the startup script for the WebLogic domain and remove ColdFusion-specific entries, as follows:
CF_SHARED_LIB_DIR (also remove CF_SHARED_LIB_DIR from PRE_PATH) LD_LIBRARY_PATH (UNIX only, remove ${CF_SHARED_LIBS}) (Windows only) JINTEGRA_PATH (also remove JINTEGRA_PATH from PRE_PATH) (Windows only) Remove jintegra.jar from PRE_CLASSPATH CF_SECURITY_JVM_OPTIONS CF_GRAPHING_JVM_OPTIONS Remove ColdFusion arguments from MEM_ARGS Remove CF_SECURITY_JVM_OPTIONS and CF_GRAPHING_JVM_OPTIONS from JAVA_OPTIONS
-
If necessary, restart the application server.
ColdFusion and API Manager
For ColdFusion installation in JEE and API manager in the same machine, if you want to run it in-VM, then add the flag -Dapim.home in the config file of JEE application server.