Installing ColdFusion 2016 on Windows Server 2016

As you may know from attempting it, running the ColdFusion 2016 installer as downloaded from the Adobe site throws an error as below on a Windows Server 2016 machine.

Looking into it and as per, ColdFusion 2016 doesn’t support Windows Server 2016 at the time of writing (see but ColdFusion Express 2016 seems to work (requires no installation, see so it appears to be an installer-only issue.

Workaround for it is relatively simple:

  • Install Java on the machine – I went with Java 8 update 31
  • Run the exe as downloaded from the Adobe site from a command prompt window ran as administrator
C:\...\Downloads>ColdFusion_2016_WWEJ_win64.exe LAX_VM C:\Java8\jre1.8.0_31\bin\java.exe

And everything installed as normal. I have yet only been as far as confirming the service run and accessing the ColdFusion web Admin console so there might be some some surprises but the installation at last worked.

Scheduling Python Scripts in Obsidian Java Scheduler

While looking into Java Job Scheduler Obsidian, I had the little problem below.
The default option for Python “com.carfey.ops.job.script.PythonJob” works well but requires you to enter the content of your script directly into the scheduler (see for a quick overview), potentially leading to a duplication of functionality and complicating the maintenance of said scripts.
Using as an example script, I tried (on a Windows machine) to use the generic “com.carfey.ops.job.script.ScriptFileJob” to call the python script but to no avail. I got it to work calling a .exe file but the different command line combinations I tried such as “python”, “python C:/Scripts/python/”, “C:/Python27/python.exe C:/Scripts/python/”, “cmd /c start python C:/Scripts/python/” and more along those lines just didn’t work, keep returning an error that “ cannot be found”.
In the end, in order to keep my python scripts out of the scheduler, I wrote a python job (using the “com.carfey.ops.job.script.PythonJob” option) to call my python script.
Python job as entered in the Obsidian scheduler (the 3 arguments and their values are defined within the scheduler as part of the job options)

import sys
sys.path.append( "C:/Scripts/python/" )
import fileFTP
fileFTP.main(arg1, arg2, arg3)

The script is structured as below to allow it to run from both the command line and from Obsidian:

import sys
def main(arg1, arg2, arg3):
       #Do FTP stuff
if __name__ == "__main__":
       main(sys.argv[1], sys.argv[2], sys.argv[3])

Python Resources Part 1

The default Django tutorial – Excellent and a great introduction!

Some other tutorials to check out

Python Apps


Installation (note – pick version 1.5)

Tips and Tricks

Other Interesting