Questions tagged [lucee]

Lucee is a light-weight dynamic scripting language for the JVM that enables the rapid development of simple to highly sophisticated web applications.

Lucee is a modern dynamic scripting language for the JVM that enables the rapid development of simple to highly sophisticated web applications.

The Lucee language supports multiple development paradigms, including object orientation with inheritance and interfaces, and functional constructs like higher-order functions, closures, map(), and reduce().

The Lucee application server includes built-in functionality, through tags and functions, to address many of the common requirements of web application development. These include session management, image manipulation, PDF creation, XML generation and processing, security, date manipulation, and more.

Lucee versions

Current Stable Version: 5.2.7.62 // Release Date: 4 May 2018

Previous Stable Version: 5.2.6.60 // Release Date: 15 Mar 2018

It is recommended to use the latest stable released version.

Features

Database access

Lucee has built-in support for the following databases:

  • DB2
  • Firebird
  • H2 Database Engine in Embedded and Server Mode
  • Hypersonic SQL Database
  • Microsoft SQL Server
  • MySQL
  • JDBC-ODBC Bridge
  • Sybase
  • Oracle
  • PostgreSQL

Lucee also supports any database for which a JDBC driver is available.

Web services

Lucee has built-in support for calling, and consuming data returned from, existing web services, along with the ability to easily configure and expose web services to be consumed. Lucee supports three types of web services:

ORM

Lucee has built-in support for the object relational mapping (ORM) framework Hibernate, facilitating Hibernate usage from Lucee code without complex and explicit configuration.

Caching

Lucee has built-in support for multiple caching systems, including Infinispan, Ehcache, and Memcached, and can be extended with additional systems.

Cache implementations can be configured within the Lucee server, then used within an application -- both explicitly and implicitly -- for the caching of database results, function call results, external HTTP request results, serialized session storage, and as a flexible backing store for an in-process RAM-based file-system abstraction.

Virtual filesystems

Lucee supports multiple virtual file systems -- built-in abstractions of various local and remote resources -- including zip, HTTP, FTP, S3, and RAM. These allow the Lucee server and developer to treat access to an abstracted resource in the same manner as a local file system.

Sample Lucee code

Lucee is derived from the ColdFusion Markup Language (CFML) and therefore has support for both the tag-based and script-based based versions of CFML:

Tag example

<cfset myVar = "Hello World">
<cfoutput>#myVar#</cfoutput>

Script example

myVar = "Hello World";
echo(myVar);

Both the above examples will assign the string "Hello World" as the value of the variable myVar, then output that value to the response buffer, typically for display in a web browser.

480 questions
5
votes
3 answers

ColdFusion 9.01 -> Lucee 5.3.3.62 and /

I’ve inherited a big application which is running on CF 9.01. I’m in the process to port it to Lucee 5.3.3.62, but have some problems with and I know that I should replace it with , but this application has ~1000 source files (!!), and replacing all…
GunterO
  • 389
  • 2
  • 13
5
votes
1 answer

Including interface functions in cfc from cfml files on lucee or railo

I'm trying to add a interface to a cfc that includes some functions in a cfml file however it throws a error with the message "component [...] does not implement the function [..] of the interface" the function it's complaining about is implemented…
Snipzwolf
  • 533
  • 1
  • 8
  • 22
5
votes
2 answers

Error formatting a lucee-spreadsheet: The maximum number of cell styles was exceeded

I am using lucee-spreadsheet, which is a great tool. I am making a very large spreadsheet (multiple sheets in a workbook with thousands of row per sheet). Everything is working as expected. I have populated the sheets with data, and created blank…
Lance
  • 3,193
  • 2
  • 32
  • 49
5
votes
2 answers

how bad is it to have "extra" database queries?

I come from the front-end world in web development where we try really hard to limit the number of HTTP requests issued (by consolidating css, js files, images, etc.). With db connections (MySQL), obviously you don't want to have unnecessary…
Brian FitzGerald
  • 3,041
  • 3
  • 28
  • 38
5
votes
1 answer

CFQuery Getting GeneratedKey from Multiple Insert into SQL Server

I am trying to get generated keys (or identitycol) of rows I am inserting using the multiple insert syntax. CREATE TABLE TempPerson ( PersonID INT NOT NULL IDENTITY (1,1) PRIMARY KEY, LastName…
user2943775
  • 263
  • 3
  • 8
5
votes
2 answers

Lucee URI encoding issue (cyrillic)

I just moved one of our core apps from Windows+IIS+Coldfusion to Ubuntu+Apache+Lucee. The first big problem is the URI encoding for exotic alphabets. For example, trying to reach this url…
Fabio B.
  • 9,138
  • 25
  • 105
  • 177
4
votes
1 answer

Proper way of adding body to cfhttp

I want to make an API request using lucee/coldfusion. I setup my token request like this: cfhttp( url="[myurl]" method="POST" result="token" ) { cfhttpparam(type="header" name="host" value="[url]"); …
user17142477
4
votes
1 answer

When use CFML code in the 'pseudo constructor' vs 'function init()' in a component

Given e.g. of the Pseudo Constructor in CFML: component{ // Pseudo Constructor start ... here comes some cfml scripting code.. // Pseudo Constructor end function init(){ return this; } } I already understand…
AndreasRu
  • 1,053
  • 8
  • 14
4
votes
1 answer

identityHashCode difference between Java/ColdFusion and Lucee

Edit: Bug has been filed. Let's say I have two ArrayLists that point to each other (circular reference): x = createObject("java", "java.util.ArrayList").init(); y = createObject("java", "java.util.ArrayList").init(); x.add(y); y.add(x); If I call…
Alex
  • 7,743
  • 1
  • 18
  • 38
4
votes
1 answer

Lucee cfmail Message-Id

One of our datacenters hosts a webapplication written in CFML / Lucee. It sends mails to customers, but the mails have a high X-Barracuda-Spam-Score. Especially on the Message-Id: pts rule name description 2.60 INVALID_MSGID_2 …
Roeland
  • 820
  • 1
  • 9
  • 33
4
votes
3 answers

Using Lucee Server with Command Box problems accessing Server Administration page

I recently downloaded CommandBox to try to set up a Lucee Server. I have a folder called LuceeSever with an Index.cfm page. When I type the command "box server start" it opens a window at this address: http://127.0.0.1:54613 displaying my index.cfm…
Cole Perry
  • 333
  • 1
  • 5
  • 27
4
votes
0 answers

xmlParse throws Cannot find the declaration of element after providing namespace

I got a schema like the following from a customer. I shortened it and changed some names.
Bernhard Döbler
  • 1,960
  • 2
  • 25
  • 39
4
votes
0 answers

Lucee/ColdFusion - Locking session scope across a cluster and accessing session vars concurrently

This question applies to a Lucee 5.x application. I'm not sure if there are differences between how ACF and Lucee handle session scopes across a cluster. Background: I'm implementing an autoLogin() function in application.cfc - in onRequestStart() -…
Redtopia
  • 4,947
  • 7
  • 45
  • 68
4
votes
1 answer

How do I mimic a Unicode JS regular expression in Lucee

I am trying to write a regular express in Lucee to mimic the JS on the front end. Since Lucee's regex doesn't seem to suppoert unicode how do I do it. This is the JS function charTest(k){ var regexp = /^[\u00C0-\u00ff\s -\~]+$/; return…
Lance
  • 3,193
  • 2
  • 32
  • 49
4
votes
1 answer

lucee 5.x ListEach doesn't seem to be able to access local var scope?

I can't seem to access the local scope within my ListEach: writeDump(local.woCoreID); // outputs expected values // LOOP OVER LIST AND SEPARATE TEXT FROM INTEGERS ListEach(local.__userSuppliedWorkoutTagList, function (item) { writeDump(item)…
HPWD
  • 2,232
  • 4
  • 31
  • 61
1
2
3
31 32