I can happily say we have this extension working in our DEV environment, in an ORM driven webapp. We need to change some stuff in the beans and controllers, but basically it’s running. We’ll use it to showcase a database driven website switching only the DB layer out (MSSQL => DuckDB).
In Lucee Administrator, I get an error adding a DuckDB Datasource of type “file” and specifying a full path to my .duckdb file.
Here’s the error - you see the extension I provided is .duckdb:
path [/home/webdude/Programs/LuceeExpress/nth.duckdb] needs to specify a file with a extension, i.e .duckdb, .db, etc
My system:
Linux Mint 22.1 Cinnamon
Lucee Express 6.2.2.91
DuckDB extension 1.3.2.1
OpenJDK21U-jdk_x64_linux_hotspot_21.0.8_9
I created the .duckdb file with the DuckDB CLI before specifying it in the Administrator.
lucee.runtime.exp.CustomTypeException: path [/home/webdude/Programs/LuceeExpress/nth.duckdb] needs to specify a file with a extension, i.e .duckdb, .db, etc at lucee.runtime.tag.Throw._doStartTag(Throw.java:225) at lucee.runtime.tag.Throw.doStartTag(Throw.java:212) at dbdriver.duckdb_cfc$cf$1.udfCall(/lucee/admin/dbdriver/DuckDB.cfc:134) at lucee.runtime.type.UDFImpl.implementation(UDFImpl.java:112) at lucee.runtime.type.UDFImpl._call(UDFImpl.java:357) at lucee.runtime.type.UDFImpl.call(UDFImpl.java:224) at lucee.runtime.ComponentImpl._call(ComponentImpl.java:731) at lucee.runtime.ComponentImpl._call(ComponentImpl.java:604) at lucee.runtime.ComponentImpl.call(ComponentImpl.java:2110) at lucee.runtime.util.VariableUtilImpl.callFunctionWithoutNamedValues(VariableUtilImpl.java:773) at lucee.runtime.PageContextImpl.getFunction(PageContextImpl.java:2081) at services_datasource_create_cfm1334$cf.call(/admin/services.datasource.create.cfm:26) at lucee.runtime.PageContextImpl._doInclude(PageContextImpl.java:1118) at lucee.runtime.PageContextImpl._doInclude(PageContextImpl.java:1012) at lucee.runtime.PageContextImpl.doInclude(PageContextImpl.java:993) at services_datasource_cfm414$cf.call(/admin/services.datasource.cfm:108) at lucee.runtime.PageContextImpl._doInclude(PageContextImpl.java:1118) at lucee.runtime.PageContextImpl._doInclude(PageContextImpl.java:1012) at lucee.runtime.PageContextImpl.doInclude(PageContextImpl.java:993) at web_cfm$cf.call_000007(/admin/web.cfm:521) at web_cfm$cf.call(/admin/web.cfm:515) at lucee.runtime.PageContextImpl._doInclude(PageContextImpl.java:1118) at lucee.runtime.PageContextImpl._doInclude(PageContextImpl.java:1012) at lucee.runtime.PageContextImpl.doInclude(PageContextImpl.java:993) at index_cfm$cf.call(/admin/index.cfm:3) at lucee.runtime.PageContextImpl._doInclude(PageContextImpl.java:1118) at lucee.runtime.PageContextImpl._doInclude(PageContextImpl.java:1012) at lucee.runtime.listener.ModernAppListener._onRequest(ModernAppListener.java:213) at lucee.runtime.listener.ModernAppListener.onRequest(ModernAppListener.java:100) at lucee.runtime.PageContextImpl.execute(PageContextImpl.java:2816) at lucee.runtime.PageContextImpl._execute(PageContextImpl.java:2803) at lucee.runtime.PageContextImpl.executeCFML(PageContextImpl.java:2774) at lucee.runtime.engine.Request.exe(Request.java:45) at lucee.runtime.engine.CFMLEngineImpl._service(CFMLEngineImpl.java:1113) at lucee.runtime.engine.CFMLEngineImpl.serviceCFML(CFMLEngineImpl.java:1070) at lucee.loader.engine.CFMLEngineWrapper.serviceCFML(CFMLEngineWrapper.java:97) at lucee.loader.servlet.jakarta.CFMLServlet.service(CFMLServlet.java:52) at jakarta.servlet.http.HttpServlet.service(HttpServlet.java:710) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:130) at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:53) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:109) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:167) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:79) at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:483) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:116) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:93) at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:666) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:343) at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:396) at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:63) at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:903) at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1773) at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:52) at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:637) at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:59) at java.base/java.lang.Thread.run(Thread.java:1583)