Lucee 7 Issue Running Java App - cfPassphrase

I need some help with a strange issue… I have two versions of a website running on my Windows 2019 Server / IIS 10 / Lucee 7.0.0.395 / Java 21.0.9 / FW/1. I use “cfpassphrase” which is a java app for BCrypt password hashing. I installed it as a LEX file in the Lucee 7 administrator on the Applications page. It has worked fine for years with Lucee 5, & 6, but only starting giving me problems after upgrading to Lucee 7 / Java 21.

Here’s my issue. When I call PassphraseCheck(Password & Password_Salt, Password_Hash, ‘bcrypt’) from one website, it works perfectly. When I call it with the exact same code from my other website, I get:

Error: cannot load class through its string name, because no definition for the class with the specified name [sorcerersisle.cfpassphrase.lucee.PassphraseCheck] could be found; failed to load class with multiple classloaders, every cause in the stacktrace represents a classloader

Both are using the exact same installed Lucee / Java. What could cause one website to find the Java function just fine and the other nearly identical website not to?

Here’s a pure CFC version using the lovely new java support in Lucee 7.0, it only works in 7.0, there’s some known classloader issues with 6.2 which means this won’t work

Passphrase.cfc (10.5 KB)

I’ve recently updated these docs to be clearer and more orientated towards CFML devs, let me know if there’s anything which needs improvement!

The new version 0.3 of cfpassphrase works PERFECTLY with Lucee 7! Problems solved! THANK YOU SO MUCH!

1 Like

Awesome! If your company is able to, if you aren’t already, it would be great if you could consider supporting Lucee?

Done. I just became an individual contributor for starters. Thanks again for your help!

2 Likes