2012-07-26 34 views
1

我試圖在我的Coldfusion安裝中使用第三方JDBC驅動程序,但是我在某處出錯了,而且我不完全確定它在哪裏。在Coldfusion中使用第三方JDBC驅動程序?

我將.jar文件放在cfusion \ wwwroot以及WEB-INF \ lib中,但沒有將它添加到我的數據源中,因爲我不完全確定是否必須/是一個本地文件。

然後,我test.cfm文件中添加以下代碼:

<cfset objDriver = createObject("java","java.sql.DriverManager")> 
<cfset prop = createObject("java","java.util.Properties").init()> 

<cfset prop.put("prop1", "prop1")> 
<cfset prop.put("prop2", "prop2")> 
<cfset prop.put("prop3", "prop3")> 

<cfset conn = objDriver.getConnection("jdbc:mydriver:", prop) > 

我驗證了在Java性能和連接做工精細,所以這不是問題PerSay的,但是當我去該頁面getConnection()上出現以下錯誤:

No suitable driver found for jdbc:mydriver: 

我想知道我是否錯過了明顯或愚蠢的東西。

+5

不要這麼做。添加一個數據源並使用cfquery/cfstoredproc。 – 2012-07-26 18:19:18

+0

[This page](http://help.adobe.com/en_US/ColdFusion/9.0/Admin/WSc3ff6d0ea77859461172e0811cbf3639b1-7fe6.html)表示在「配置和管理ColdFusion」中有一章... – 2012-07-26 18:21:01

+0

謝謝,不是某些爲什麼我想要使用Java ...一直以來我做了任何ColdFusion – doyler 2012-07-26 20:00:52

回答

8

我會將它添加到數據源中。否則,你將最終編寫醜陋的Java代碼來「繞過」驅動程序。

要添加到DSN使用「其他」數據源並添加一個「連接字符串」。這些對驅動程序是特定的,您應該有一些與您下載的驅動程序相關的示例。它們是一個很好的起點。

您可以通過檢查CF安裝的/ lib目錄中的「neo-datasources.xml」文件來查看您添加的其他數據源的字符串。

您需要確保驅動程序位於舊版CF上的CF安裝(不同於WEB-INF/Lib)的/ lib目錄中 - 不確定CF 10.您還需要重新啓動CF把它放入目錄後。

或者,您可以通過編輯jvm配置文件將文件添加到類路徑中。

+0

謝謝,我已經完成了所有設置,現在我只需要連接工作,出於某種原因我無法獲得我的屬性作爲連接字符串工作(1是用戶,1是密碼,它與標準屬性一起工作,但第三個是AccessKey,似乎不想採取)。只要目錄10似乎滿意於WEB-INF/Lib – doyler 2012-07-26 20:01:53

+0

連接字符串因驅動程序而異。你在用什麼驅動程序?它是否有公共API? – Leigh 2012-07-26 20:13:19

+0

不幸的是,我使用了一個並不真正擁有公共API的內部程序,但是我使用以下代碼在Java中使用它: Properties prop = new Properties(); prop.put(「AccessToken」,「accesstoken」); prop.put(「用戶」,「用戶」); (「密碼」,「密碼」); prop.put conn = DriverManager.getConnection(「jdbc:mydriver:」,prop); 但我不確定我在做什麼錯嘗試添加AccessKey ... – doyler 2012-07-26 20:20:16

相關問題