2008-11-06 76 views
1

我有一個我想在ColdFusion MX 7中運行的servlet。如果可能,我想使用現有的ColdFusion DSN作爲javax.sql.DataSource。從Java代碼訪問ColdFusion數據源

我覺得像

coldfusion.server.ServiceFactory.getDataSourceService().getDatasource(dsname); 

會的工作,但遺憾的是該servlet返回

java.lang.NoClassDefFoundError: coldfusion/server/ServiceFactory 

回答

0

看起來最簡單的方法是將額外的JNDI數據源添加到jrun-resources.xml中。這然後可以在傳統的方式來訪問:

Context context = new InitialContext(); 
DataSource ds = (DataSource)context.lookup("mydatasource"); 

它意味着複製數據庫連接配置,但我寧願這樣做不是與大部分無證coldfusion.server工作*類。

1

該代碼將正常工作,你只是沒有服務工廠在類路徑中。也就是說,Java無法加載該類。嘗試從C:\ CFusionMX7 \ lib中包含對cfusion.jar的依賴。

+0

現在得到:coldfusion.server.ServiceFactory $ ServiceNotAvailableException:DataSource服務不可用。 neo-query.xml沒問題,來自.cfm頁面的查詢仍然有效。 – AlexJReid 2008-11-06 14:57:05