Can't access data sources in admin for Lucee 5

Did a fresh install of Lrucee 4.5.1 on a Windows 8 machine. Upgraded to
Lucee 5 per the wiki instructions. Running on JDK 1.8.40.

Server admin works fine, except for the datasources page, which brings up
the following error:

Messageinvalid interface definition, can’t find interface [types.IDriver]
StacktraceThe Error Occurred in
C:\lucee\tomcat\lucee-server\context\context\admin\dbdriver\types\IDriverSelector.cfc:
line 1

1:
2:
3:

called from C:\lucee\tomcat\lucee-server\context\context\admin\dbdriver\MSSQLSelector.cfc:
line 18
called from /context/admin/services.datasource.cfm: line 14
called from /context/admin/web.cfm: line 389
called from /context/admin/server.cfm: line 2

Check your extensions and make sure the MSSQL extension is installed.
Datasource types/drivers are now extensions in Lucee 5.2015-04-09 2:28 GMT+02:00 Samuel W. Knowlton <@Samuel_W_Knowlton>:

Did a fresh install of Lrucee 4.5.1 on a Windows 8 machine. Upgraded to
Lucee 5 per the wiki instructions. Running on JDK 1.8.40.

Server admin works fine, except for the datasources page, which brings up
the following error:

Messageinvalid interface definition, can’t find interface [types.IDriver]
StacktraceThe Error Occurred in
C:\lucee\tomcat\lucee-server\context\context\admin\dbdriver\types\IDriverSelector.cfc:
line 1

1:
2:
3:

called from C:\lucee\tomcat\lucee-server\context\context\admin\dbdriver\MSSQLSelector.cfc:
line 18
called from /context/admin/services.datasource.cfm: line 14
called from /context/admin/web.cfm: line 389
called from /context/admin/server.cfm: line 2


You received this message because you are subscribed to the Google Groups
“Lucee” group.
To unsubscribe from this group and stop receiving emails from it, send an
email to lucee+unsubscribe@googlegroups.com.
To post to this group, send email to lucee@googlegroups.com.
To view this discussion on the web visit
https://groups.google.com/d/msgid/lucee/a98a71f8-11cc-4a76-b625-e140c31f4914%40googlegroups.com
https://groups.google.com/d/msgid/lucee/a98a71f8-11cc-4a76-b625-e140c31f4914%40googlegroups.com?utm_medium=email&utm_source=footer
.
For more options, visit https://groups.google.com/d/optout.


Michael van Leest

I have this error too, on latest Lucee version (5.2.5.70) with MySQL. I cannot change or access the Datasources page at all, which is rather worrysome :frowning:

# invalid interface definition, can't find interface [IDriver]
The error occurred in **/var/www/[websitedomain/WEB-INF/lucee/context/admin/dbdriver/ODBC.cfc](http://websitedomain/WEB-INF/lucee/context/admin/dbdriver/ODBC.cfc): line 1**
**Called from** /admin/services.datasource.cfm: line 16
**Called from** /admin/web.cfm: line 392
**Called from** /admin/server.cfm: line 2

**1: <cfcomponent extends="Driver" implements="IDriver">**

A possible fix:

I changed the lucee-web.xml.cfm in /domainname/WEB-INF/lucee by hand (altered one setting in the XML), saved it and restarted Tomcat (Lucee).

Suddenly everything works regarding the datasources! In both admins. Really weird in my opinion, but anyways, if it works I’m happy :wink:

I am on 5.1.38 of the MySQL driver and Lucee 5.2.5.70.

Altered which setting in lucee-web.xml.cfm ? I tried removing <data-sources>…</data-sources> from C:\lucee\tomcat\lucee-server\context\lucee-server.xml, but still got error 500 (so I added it back, because I needed those datasources), and then tried to force MSSQL driver to load IDriver.cfc by mapping the path of the types in the Component settings under additional resources as name=“types” resource=“C:\lucee\tomcat\lucee-server\context\context\admin\dbdriver\types”, but then I got an error “the interface [lucee-server.admin.dbdriver.IDriverSelector] cannot be used as a component.”

Okay, so I was doing something stupid, but I’m lost… Fortunately, I don’t actually need to edit my datasources right now, so I can leave it broken (my web app still works), but I would like to see the admin page working again.

So, what’s the stacktrace for the 500 error? we are all developers after all :slight_smile:

I would look spinning up a new host and moving your app to that.
While you are doing that, do not reboot or restart services.

Just my 2 cents.

For the Datasources page at [mysite]/lucee/admin/server.cfm?action=services.datasource , here is the error found in C:/lucee/tomcat/lucee-server/context/logs/application.log :

“ERROR”,“ajp-nio-8009-exec-5”,“04/22/2021”,“13:50:57”,“controller”,"invalid interface definition, can’t find interface [
IDriver];invalid interface definition, can’t find interface [IDriver];lucee.runtime.exp.ExpressionException: invalid int
erface definition, can’t find interface [IDriver]
at lucee.runtime.component.ComponentLoader._search(ComponentLoader.java:125)
at lucee.runtime.component.ComponentLoader.searchInterface(ComponentLoader.java:92)
at lucee.runtime.InterfaceImpl.loadInterfaces(InterfaceImpl.java:104)
at lucee.runtime.ComponentImpl.init(ComponentImpl.java:406)
at dbdriver.mssql_cfc$cf.initComponent(/lucee/admin/dbdriver/MSSQL.cfc)
at dbdriver.mssql_cfc$cf.newInstance(/lucee/admin/dbdriver/MSSQL.cfc:1)
at lucee.runtime.component.ComponentLoader.initComponent(ComponentLoader.java:548)
at lucee.runtime.component.ComponentLoader._loadComponent(ComponentLoader.java:472)
at lucee.runtime.component.ComponentLoader.load(ComponentLoader.java:410)
at lucee.runtime.component.ComponentLoader._search(ComponentLoader.java:222)
at lucee.runtime.component.ComponentLoader._search(ComponentLoader.java:117)
at lucee.runtime.component.ComponentLoader.searchComponent(ComponentLoader.java:79)
at lucee.runtime.PageContextImpl.loadComponent(PageContextImpl.java:3241)
at lucee.runtime.functions.other.CreateObject.doComponent(CreateObject.java:148)
at lucee.runtime.functions.other.CreateObject.call(CreateObject.java:70)
at lucee.runtime.functions.other.CreateObject.call(CreateObject.java:49)
at services_datasource_cfm414$cf.call(/admin/services.datasource.cfm:15)
at lucee.runtime.PageContextImpl._doInclude(PageContextImpl.java:1000)
at lucee.runtime.PageContextImpl._doInclude(PageContextImpl.java:923)
at lucee.runtime.PageContextImpl.doInclude(PageContextImpl.java:904)
at web_cfm$cf.call(/admin/web.cfm:492)
at lucee.runtime.PageContextImpl._doInclude(PageContextImpl.java:1000)
at lucee.runtime.PageContextImpl._doInclude(PageContextImpl.java:923)
at lucee.runtime.PageContextImpl.doInclude(PageContextImpl.java:904)
at server_cfm$cf.call(/admin/server.cfm:2)
at lucee.runtime.PageContextImpl._doInclude(PageContextImpl.java:1000)
at lucee.runtime.PageContextImpl._doInclude(PageContextImpl.java:923)
at lucee.runtime.listener.ModernAppListener._onRequest(ModernAppListener.java:217)
at lucee.runtime.listener.MixedAppListener.onRequest(MixedAppListener.java:44)
at lucee.runtime.PageContextImpl.execute(PageContextImpl.java:2457)
at lucee.runtime.PageContextImpl._execute(PageContextImpl.java:2447)
at lucee.runtime.PageContextImpl.executeCFML(PageContextImpl.java:2418)
at lucee.runtime.engine.Request.exe(Request.java:44)
at lucee.runtime.engine.CFMLEngineImpl._service(CFMLEngineImpl.java:1179)
at lucee.runtime.engine.CFMLEngineImpl.serviceCFML(CFMLEngineImpl.java:1125)
at lucee.loader.engine.CFMLEngineWrapper.serviceCFML(CFMLEngineWrapper.java:102)
at lucee.loader.servlet.CFMLServlet.service(CFMLServlet.java:51)

Yeah I’m migrating away from this Windows box to Linux anyway, and don’t seem to have the problem on the Linux box, using the latest release of Lucee. (I wonder if running Java 8 v181 from Oracle could be an issue on the Windows box… or perhaps running under Tomcat8 instead of Tomcat9)

I would try Tomcat 9 as that is what the newer versions of Lucee ship with.

it’s definitely nothing do do with tomcat

mssql.cfc extends and implements components in types subdirectory, there are no mappings involved, as it directly references those files

admin\dbdriver\mssql.cfc

<cfcomponent extends="types.Driver" output="false" implements="types.IDatasource">

admin\dbdriver\types\IDatasource.cfc

<cfinterface extends="IDriver">