Issue with Hibernate class property scope

OS: Linux 5.15.49
Java Version: 11.0.16
Tomcat Version: 9.0.65
Lucee Version:
Hibernate Version:

Hi all, I have come across a property scoping issue within Hibernate classes where properties that are of a complex type (eg. Struct) are not being local scoped.

Lets say we have the below Hibernate class:

<cfcomponent name="Foo" persistent="true" output="false" >
	<cfset = structNew( ) />
	<cfset = "" />

	<cffunction name="getSomeID" access="public" returntype="string" output="false">
	        <cfreturn />

	<cffunction name="setSomeID" hint="" access="public" returntype="void" output="false">
		<cfargument name="id" type="string" required="true" />
		<cfset = />

And we have the below test case:

<cfset x = EntityNew("Foo") />
<cfset x.setSomeID('1') />

<cfset y = EntityNew("Foo") />
<cfset y.setSomeID('2') />

<cfdump var="#x.getSomeID()#" />

The expected result would be 1, however the actual result is 2.

If we didn’t store SomeID within a Struct, but just as variables.SomeID, then the issue won’t occur. Similarly, if the property declarations are within the class constructor, the issue won’t occur.

Does this appear to be a bug or am I missing something?

Long time lurker here, love the project and appreciate the assistance!

Thanks :grinning: