Lucee Websockets Extension 3.0.0.17-SNAPSHOT

I’ve done some work on the websockets extension and it’s finally running for me on Lucee 6.2.1.112-RC

Details in the ticket, plus a modified playground example to try it out (between different browsers)

I also added a new section to the lucee docs explaining about how the logging works

https://luceeserver.atlassian.net/browse/LDEV-5385?focusedCommentId=60014

Let me know how you go!

2 Likes

Will you keep the hard coded paths to the endpoints and require that websocket components be located in the lucee install folder?

Or will you allow websocket components to be located in your application directory structure and allow the application to map endpoints to their corresponding websocket components? This would be preferable.

I can confirm that the websocket extension is working now in 6.2.1 :slight_smile:

The only thing that does not seem to be working, is that it is not installing via the docker environment variables (I am able to load it via the admin or copying over the LEX files directly).

"Severity","ThreadID","Date","Time","Application","Message"
"INFO","main","04/11/2025","13:23:07","controller","No extension(s) found to add/install"
"INFO","main","04/11/2025","13:23:07","controller","Extensions to install defined in env variable or system property:3F9DFF32-B555-449D-B0EB5DB723044045;version=3.0.0.17-RC,D062D72F-F8A2-46F0-8CBC91325B2F067B;name=ORM;version=6.5.2,CED6227E-0F49-6367-A68D21AACA6B07E8"
"INFO","main","04/11/2025","13:23:10","extension","copy [D062D72F-F8A2-46F0-8CBC91325B2F067B:6.5.2] to [/opt/lucee/server/lucee-server/context/extensions/available/D062D72F-F8A2-46F0-8CBC91325B2F067B-6.5.2.lex]"
"DEBUG","main","04/11/2025","13:23:10","extension","Deploy fld [ormFunctions.fld]"
"DEBUG","main","04/11/2025","13:23:10","OSGi","add bundle:/opt/lucee/server/lucee-server/bundles/orm-extension-6.5.2.jar"
"DEBUG","main","04/11/2025","13:23:10","OSGi","Start bundle: [orm-extension:6.5.2]"
"INFO","main","04/11/2025","13:23:10","extension","Update orm engine [class:ortus.extension.orm.HibernateORMEngine;name:orm-extension;version:6.5.2;] from extension [Ortus ORM Extension:6.5.2]"
"INFO","main","04/11/2025","13:23:11","extension","copy [CED6227E-0F49-6367-A68D21AACA6B07E8:1.0.0.5] to [/opt/lucee/server/lucee-server/context/extensions/available/CED6227E-0F49-6367-A68D21AACA6B07E8-1.0.0.5.lex]"
"DEBUG","main","04/11/2025","13:23:11","extension","Update Mapping [/lucee/admin]"
"Severity","ThreadID","Date","Time","Application","Message"
"INFO","main","04/11/2025","13:23:11","application","Lucee warmup completed. Shutting down."

Any idea of where to look at for that issue? I do have the logs set to debug, but I’m not seeing any errors downloading the file. It also does not appear in the available extensions directory in the container.

Misfire on my side with the extension installing. I had the wrong package version in my ENV variable.

Websocket extension is working as designed. Thanks team for taking care of this!

you can configure the location via this websockets.json in the context folder, where you find the the .CFConfig.json

{
	"directory":"{lucee-config}/websockets/",
	"requestTimeout":50, 
	"idleTimeout":300
}

the log level was set to info, not error for that, just fixed it

https://luceeserver.atlassian.net/browse/LDEV-5495

I see, but what if you’re running multiple apps on the same server? This is especially problematic on dev environments where each app might use the same websocket endpoints but different listeners.