Blog

Ortus ORM Extension Version 6.4.0

Michael Born December 11, 2023

Spread the word

Michael Born

December 11, 2023

Spread the word


Share your thoughts

We're pleased to announce a minor release of the Ortus ORM Extension, v6.4.0! This release includes a vulnerability patch, so we'd recommend you upgrade as soon as possible.

Security Fixes

First and foremost, this release bumps the logback-core logging dependency to resolve a recently-disclosed Uncontrolled Resource Consumption vulnerability.

New Features

This release adds an ORMQueryExecute() alias for the ORMExecuteQuery() built-in function. While not a game-changer in any way, this brings a consistency to the method names for SQL vs HQL queries. Instead of queryExecute() and ORMExecuteQuery(), we now have queryExecute() and ORMQueryExecute():

// Vanilla SQL query
queryExecute( "SELECT * FROM users" );

// HQL query powered by Hibernate
ORMQueryExecute( "FROM User" );

Bug Fixes

This release includes a number of bug fixes, including named argument support for entityLoad() and entityLoadByPK(), as well as fixing support for a custom Hibernate configuration file via this.ormSettings.ormConfig.

Named Argument Support for EntityLoad*() Methods

Named arguments are now supported on EntityLoadByPK():

entityLoadByPK(
    name = "Dealership",
    id = variables.testDealerID
);

as well as entityLoad():

entityLoad(
    name = "Auto",
    id = "foo123"
)

See tickets:

Custom Hibernate Configuration File

The existing ormSettings.ormConfig configuration property is now fixed and documented as working, with passing tests to boot. This is the first iteration of the Hibernate 5+ where we can verify that configuration specified in this manner is taking effect.

this.ormSettings = {
    dbcreate  : "dropcreate",
	ormConfig : "/config/resources/hibernate.cfg.xml",
    // ...
};

Using this ormConfig property, we can point to an XML file containing additional Hibernate configuration:

<!DOCTYPE hibernate-configuration PUBLIC 
    "-//Hibernate/Hibernate Configuration DTD 3.0//EN" 
    "http://www.hibernate.org/dtd/hibernate-configuration-3.0.dtd">
<hibernate-configuration>
    <session-factory>
		<property name="hibernate.session_factory_name">OrtusForTheWin</property>
		<property name="hibernate.globally_quoted_identifiers">true</property>
    </session-factory>
</hibernate-configuration>

Other Improvements

While not technically a change in ORM functionality, the useDBforMapping implementation has been greatly improved "under the hood", with tests to boot.

Upgrade

To upgrade the Ortus ORM Extension version on a running Lucee server, use box install with the extension GUID and version number:

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

If you are using the lucee.extensions environment variable to configure extension installation, you'll want to update that as well:

-Dlucee-extensions='D062D72F-F8A2-46F0-8CBC91325B2F067B;version=6.4.0'

The exact syntax depends on the context. For more information, see Installing the Ortus ORM Extension and the lucee.extensions env var documentation.

For More Info

Check out the full release notes on the extension documentation gitbook, or see the full list of changes on github.com.

Add Your Comment

Recent Entries

Unveiling the Future of CFML Development - 3rd Round of Sessions

Unveiling the Future of CFML Development - 3rd Round of Sessions

Welcome back to our journey into the future of CFML development! As excitement continues to build for Into the Box 2024, we're thrilled to bring you the latest updates on what promises to be a transformative event. Continuing our blog post series, let's delve deeper into the third wave of session releases and discover the key surprises awaiting attendees. Learn More

Maria Jose Herrera
Maria Jose Herrera
March 01, 2024
Elevate Your ColdBox Experience and Skills

Elevate Your ColdBox Experience and Skills

We're thrilled to announce a significant overhaul of our ColdBox training experience to ensure it's nothing short of extraordinary! We've listened closely to your feedback and made significant improvements geared towards transforming you into a ColdBox superhero. Learn What's New!

Maria Jose Herrera
Maria Jose Herrera
February 20, 2024
Ortus Redis Extension v3.3.0 Released!

Ortus Redis Extension v3.3.0 Released!

We are very excited to bring you another release for our Redis Lucee Extension. The most significant feature in this release is the addition of the `` and `redisLock{}` tag, which allows you perform a lock across all instances in a cluster.

Ortus Redis Extension v3.3.0 gives you greater control over concurrent modifications in a distributed environment, utilizing your distributed cache to prevent overlaps!

Jon Clausen
Jon Clausen
February 16, 2024