Cannot find component Mail?

I mentioned this in SLACK and didn’t get any assistance - so I am posting here, too.

This happened after upgrading to
Most annoying - it is persisting after downgrading to
And still so - even after retrying 5.4 .3.2 and the, again.

(The upgrades and downgrades are by completely blowing away the Lucee / Tomcat installations and then manually installing Tomcat 9 / mod_CFML and then the FULL lucee.jar)

I don’t get it - mail is a built-in component, right?

invalid component definition, can't find component [mail]

The erroring line is in Application.cfc in the onError handler;

var mailer = new mail();


OS: AWS Linux 2
Java Version: 11.latest
Tomcat Version: 8.latest / 9.latest
Lucee Version: / /

I think you might find it’s Mail not mail. Am pretty sure these references are case-sensitive on case-sensitive file systems.

Full disclosure: I did not test this.

Did you check the file’s location and whether you have a mapping to said location?

1 Like

TryCF runs this version and it works (mail() and Mail()).

1 Like

Thank-you both…

It isn’t case senstitive - AND - it only happened after the upgrade.
So the server settings and source code remain unchanged.

I am, not sure what to put it down to - as I can no longer replicate it, either - after manually inserting an ormReload() into the onApplicationStart() event handler.

And from a trtoubleshooting perspective - can’t repliucate it after removing the ormReload(), either. ;(

It is great, indeed, that it is no longer happening… But weird “shit” like this (no config / code changes) - effecting a previously sound application - behaving differently after a server restart or an upgrade… then not being able to duplicate it - once you get it fixed - seems to be happening fairly often in the dicscussion here.

And just "kicking the tyres, here…
Perhaps there is room for a “start from scratch” process of:

  • Clean-out everything from caches / class files / etc.
  • AND “Forcibly” Recreate “everything” as if it never, ever existed option?

I imagine this would be run as part of a “service” (server) start / restart?
(thus inherently used after upgrades)


also finding this exception in Docker using

FROM lucee/lucee:

along with the new cfconfig.json including websockets extension, “prewarm” to grab extensions …

first startup of the container and using the try block above receives the exception

invalid component definition, can’t find component [mail]

a simple restart of the container and it will work.

it appears to be related to additional bundles that are not ready at the first start at least in