Blog

Passing the Baton: Lucee 6 and Hibernate ORM

Michael Born July 20, 2023

Spread the word

Michael Born

July 20, 2023

Spread the word


Share your thoughts

Passing the Baton: Lucee 6 and Hibernate ORM

As of Lucee 5.4.1.8, new Lucee builds will no longer bundle the (Lucee) Hibernate extension. This means that if you rely on Hibernate ORM in your CFML application, you will need to manually bundle the Hibernate extension into your Lucee server. Let's read on for more info.

The News

First, let's start with the official note from the Lucee 5.4.1.8 Stable Release notes (courtesy of Zac Spitzer):

Lucee ORM is no longer being developed or bundled by the Lucee Team, Ortus have forked and taken over the development of ORM for Lucee, see Introducing: The Ortus ORM Extension.

It seems that Lucee has made the decision to 1) trim the Lucee installation size by no longer bundling the Hibernate extension with new Lucee installations, and to 2) halt further development on the Lucee Hibernate extension. It is unclear whether "no longer being developed" is referring to new features only, or whether that includes bug fixes and security patches as well.

This news means that Micha and the LAS team can focus on the Lucee server platform, bringing you speed and stability, while Ortus provides the Hibernate integration for a powerful database ORM layer.

What Now?

Since Ortus Solutions has committed to ongoing support of the Hibernate extension, there is no concern for the future of Hibernate ORM on Lucee. The Ortus-maintained extension (termed "Ortus ORM extension") has had over 500 commits and 9 releases since forking, and the upcoming 7.0.0 release will upgrade to Hibernate 5.6. We're not going away!

While it is possible to continue using the Lucee Hibernate extension, we highly recommend switching to the Ortus ORM extension for speed improvements, security patches, and ongoing support.

As a quick example, take a look at the ORMReload times across the Lucee Hibernate and the Ortus ORM Extension. On the left are several versions of the Lucee Hibernate extension (3.5.5.87, 5.4.29.20-BETA, and 5.4.29.27-BETA), and on the right is the Ortus ORM Extension (version 6.1.0). You can see that the ORMReload time is over 50% faster using the Ortus ORM extension!

ORMReload times compared with the Lucee Hibernate extension (blue) vs. the Ortus ORM Extension (right)

Installing the Ortus ORM Extension with CommandBox

Installing at Server Start Time

To install the Ortus ORM extension with CommandBox at server start time, pass the -Dlucee-extensions environment variable containing a list of extension IDs to install:

box server start cfengine=lucee@5.4 -Dlucee-extensions='D062D72F-F8A2-46F0-8CBC91325B2F067B;version=6.1.0'

Running this command server start in CommandBox will start the Lucee server using the lucee-extensions environment variable to configure any additional extensions beyond the default bundled ones. This environment variable will instruct Lucee to install the Ortus ORM extension v6.1.0 at startup. By the time your CFML code is executing, the extension will be fully installed and ready to go.

Installing on a Pre-Existing Lucee Server

For a pre-built Lucee server isntance, you can opt to install the extension without restarting the server using CommandBox's install command:

box install D062D72F-F8A2-46F0-8CBC91325B2F067B@6.1.0

This will install the extension to the Lucee server's deploy/ directory, where it will be picked up (usually within 30 seconds) and installed into the running Lucee server.

Installing the Ortus ORM Extension on Vanilla Lucee

To install the extension without assistance from CommandBox, append the extension ID ( D062D72F-F8A2-46F0-8CBC91325B2F067B ) to the LUCEE_EXTENSIONS environment variable before starting the Lucee server. Exactly how you do these two steps will depend on your operating system and on the method you used to install Lucee server in the first place.

Alternately, you can browse to the Extension>Applications page in the Lucee Server Admin and click on the "Ortus ORM Extension" under "Not Installated". From there, you can choose and install versions at will.

See Lucee's "Extension Installation" documentation for more info.

Conclusion

The LAS team has long "carried the baton" in regards to Hibernate ORM. With that baton now passed firmly to Ortus Solutions, Hibernate in CFML is entering a new age of speed, stability, and ongoing support. For more information, you can check out the documentation, or our support page if you are looking for additional capabilities.

Add Your Comment

(2)

Jul 24, 2023 21:31:52 UTC

by Will Belden

Now you just need to make it ACF-compatible.

Jul 24, 2023 21:32:30 UTC

by Will Belden

Also! Congratulations! Ortus is keeping CFML alive!

Recent Entries

Partner with BoxLang and Ortus at Into the Box 2025: Empowering the Future of Modern Software Development!

Partner with BoxLang and Ortus at Into the Box 2025: Empowering the Future of Modern Software Development!

At Ortus Solutions, we’ve always been at the forefront of innovation in the ColdFusion ecosystem. From pioneering modern ColdFusion practices to developing cutting-edge tools and frameworks, we’ve been passionate to help and sup[port the community into shaping the future of web development.That’s why we decided to build BoxLang, our new JVM programming language that not only builds on the strengths of ColdFusion but takes modern software development to the next level.

Maria Jose Herrera
Maria Jose Herrera
December 23, 2024
Why BoxLang When You Have Kotlin, Groovy, Scala, and more…

Why BoxLang When You Have Kotlin, Groovy, Scala, and more…

As we approach a stable release of BoxLang and our continued marketing reaches more folks, many have asked about its purpose. Why create a new language when the JVM ecosystem already includes established languages like Kotlin, Groovy, and Scala, to name a few.

Luis Majano
Luis Majano
December 18, 2024