ColdFusion

from Wikipedia, the free encyclopedia
ColdFusion
logo
Official logo
Basic data
Paradigms : procedural
Publishing year: 1995
Developer: Allaire Corporation / Joseph J. Allaire
Current  version 2018 Update 9   (April 14, 2020)
Typing : weak , dynamic
Important implementations : BlueDragon, OpenBD, Lucee, Railo, Adobe ColdFusion
Operating system : cross-platform
Product page on adobe.com

ColdFusion is for web-based scripting languages and database - applications designed middleware . ColdFusion was developed by Allaire in 1995 . In 2005, Allaire went to Macromedia . Through the acquisition of Macromedia, the product is now owned by Adobe Inc.

Basically, ColdFusion consists of the following three parts:

ColdFusion is in direct competition with comparable server-side systems such as ASP.NET , JSP / Servlet , Ruby on Rails (RoR), ZOPE ( Python ), Perl and PHP . Unlike scripting languages ​​like Perl, PHP, Python, and Ruby, which are open source , the original version of ColdFusion is not available in source code. However, the Lucee ColdFusion server is published in source code.

General

With the help of ColdFusion, web applications or intranet / extranet applications can be created very quickly. The simple tag-based development language CFML enables an easy entry into programming and offers experienced developers very powerful tools. The simple installation and administration of the server also contributes to this. Originally purely procedural, from version 6.0 (ColdFusion MX), object-oriented programming in CFML is also possible.

A decisive difference to comparable systems is the server-side use of the indexing of an entire website using the implemented Verity Engine ( Solr is used from ColdFusion 9 ). This means that the otherwise usual indexing is no longer necessary for the user: this can be controlled by the administrator via so-called collections for both text files and database content.

Application server

The ColdFusion Application Server has shaped the development of web technology in crucial areas.

The program was developed by Jeremy and his brother JJ Allaire . In 1994 they founded Allaire Corp. and marketed ColdFusion and other products such as HomeSite and JRun . With WDDX , Allaire developed a forerunner to today's web services at an early stage, which was used for content syndication , for example . ColdFusion was the very first application server when it first appeared in 1995 and is still one of the most successful worldwide - in its home country, the USA, it is even the market leader. Outside the USA, ColdFusion has always had a hard time and, especially in Germany with its traditionally strong PHP user group, a breakthrough is not in sight. Even less so, as this is proprietary (and also paid) software. However, ColdFusion has a very active user community as the various CFUGs (ColdFusion User Groups) prove.

On January 16, 2001, Macromedia took over Allaire Corp. and integrated the products into their own product lines. With the ColdFusion MX (6.0) version, the program was completely rewritten and the underlying engine was converted to J2EE . In 2002, Sun certified ColdFusion as 100% Java Compatible. MX applications therefore run under Bea Weblogic, as well as under IBM WebSphere , SunOne or Apache Tomcat . JRUN  4 is supplied as an application server.

Macromedia ColdFusion MX (6.1 and 7) is offered in three different versions. The free ColdFusion Developer Edition gives interested parties a locally limited entry into the world of CF. The Standard and Enterprise Edition, however, are commercial versions, differing only in details such as the number of supported CPUs , the operating systems , database interfaces and cluster capability differ.

With the ColdFusion MX 7 version, the previous functionalities were added in particular to options for print output ( PDF and FlashPaper ), reporting including report generator, event gateways (SMS, instant messaging and so on) and the option to generate XForms and FlashForms (through the use of Apache Flex ). See also suitable development environments .

There were still "free implementations" that make it possible to use ColdFusion on other web servers / operating systems. These are usually integrated as a module in the web server. The solutions Lucee, Railo, BlueDragon, Smith, CORAL and IgniteFusion should be mentioned here. These solutions, called Open Source Script Engines , are all based on the ability to merge Java classes and libraries with the CFML code. Back in June 2007, Smith presented a ColdFusion cross-platform written entirely in Java . The most serious competition at present is facing the original from the Swiss company Lucee Association Switzerland , which has released a free CFML application server. Lucee emerges as the successor to Railo.

After the takeover of Macromedia by Adobe, all Macromedia products are now further developed and sold by Adobe. Since then, two other versions of ColdFusion have appeared. Since Adobe ColdFusion 8, a stronger integration into the Windows world with the introduction of new interfaces to Microsoft Exchange Server and ASP.NET has been clearly recognizable. In addition, Ajax widgets were integrated into version 8 , support for JSON was implemented, as well as options for image and PDF editing. In addition, the performance has been increased compared to its predecessor.

The current version Adobe ColdFusion 9 has been available since October 2009 . The biggest change here is the support of object-relational mapping (English: object-relational mapping in short: ORM). The ORM is ColdFusion 9 is based on the known from the Java world Hibernate , simplifying the persistent data storage enormous. Further innovations include tight integration with the Eclipse- based IDE ColdFusion Builder, processing of Microsoft Office files, Microsoft SharePoint integration, enhanced Flash interoperability, and collaboration with Adobe AIR for data synchronization.

Markup Language

The ColdFusion Markup Language (CFML for short) is a collection of tags and functions that greatly simplify the development of web applications . Nevertheless, CFML is a very powerful language that can also address complex technologies such as databases including stored procedures , ORM , PDF generation, WSDL , LDAP , XML , XSLT , XForms , Verity and Solr etc. via simple HTML- like tags. As an alternative to the tag syntax, you can also use a script syntax similar to that of PHP , which could sometimes be processed faster by the parser in previous ColdFusion versions . This set of tools enables rapid application development . In 2008 the further development of the language was outsourced to the CFML Advisory Committee. Although this group was founded by Adobe, it also consists of employees from other CFML server developers as well as community members and is intended to ensure that the language standard is kept open and uniform.

The ColdFusion Markup Language served in part as a template for the development of JSP 2.0 and the JSTL . The language scope of CFML has continuously developed over the years. The Fusion Components (CFC) are a major innovation. CFCs allow the developer to choose a stronger OOP approach when developing web applications.

If a page is called with CF code (file extension .cfm , more rarely also .cfml ), the web server inserts HTML code into the page according to the script instructions and then forwards it to the visitor's web browser. The visitor only sees the HTML source code of the product, not the script itself. The latter remains hidden from the page visitor (as is the case with other server-side scripts such as PHP).

Code example

Simple CFML script (outputs "Hello world!"):

<cfoutput>Hallo Welt!</cfoutput>

The extended script integrated in HTML (also outputs "Hello World!" On the website):

<cfset beispiel = "Hallo Welt!">
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
    "http://www.w3.org/TR/html4/loose.dtd">
 <html>
   <head>
    <title>Hallo-Welt-Beispiel</title>
   </head>
   <body>
    <cfoutput>#beispiel#</cfoutput>
   </body>
 </html>

Suitable development environments

The following environments are available for CFML development:

Data theft

Unknown perpetrators stole the source code of Adobe Acrobat , Adobe ColdFusion, other possible programs and credit card data from 2.9 million customers according to a notification from Adobe on October 3, 2013 .

Bibliography

  • Ralf Blittkowsky: Macromedia Studio MX 2004. Developing dynamic websites with ColdFusion MX , Dpunkt, 2004, ISBN 3-89864-211-9
  • Philipp Cielen, Steffen Goldfuss, Christoph Schmitz: ColdFusion MX. Professional application development for the web , AW, 2003, ISBN 3-8273-2068-2
  • Peter Müller: ColdFusion in 21 days , M&T, 2001, ISBN 3-7723-6525-6

Web links

Open source

Individual evidence

  1. Security updates available for ColdFusion | APSB20-18 . April 14, 2020 (accessed May 1, 2020).
  2. ^ System requirements, ColdFusion Builder. In: adobe.com. Retrieved May 1, 2020 .
  3. ^ Raymond Camden: Lucee, new fork of Railo, has launched. Retrieved June 29, 2016 .
  4. Article from December 2007 on "Create or die"
  5. ↑ What's New in ColdFusion 9
  6. Announcement of the formation of the CFML Advisory Committee ( Memento of the original from January 7, 2009 in the Internet Archive ) Info: The archive link was automatically inserted and not yet checked. Please check the original and archive link according to the instructions and then remove this notice. @1@ 2Template: Webachiv / IABot / corfield.org
  7. blogs.adobe.com: Important Customer Security Announcement
  8. heise.de: Break-in at Adobe: Millions of customer data and source code from ColdFusion and Acrobat stolen