2013-07-08 73 views
3

我知道可以從ColdFusion實例化Java類,但是有可能從Java代碼實例化ColdFusion CFC?Coldfusion CFCs可以從Java實例化嗎?

例如(在Java中):

ColdFusionCFC obj = new ColdFusionCFC("filename.cfc"); 

我想知道是否有可能逐步過渡從現有的ColdFusion代碼庫與其他一些基於JVM的語言遠,而無需重寫一切的時候了。

回答

6

Calling ColdFusion CFCs from Java是ColdFusion 10的一項功能。如果您不使用CF10,則可以使用遠程函數將具有HTTP功能的CFC作爲HTTP Web服務調用。

+0

太棒了!我不知道CF10。不幸的是,我在CF9上。我不是HTTP解決方案的粉絲,所以這將是我的最後一招。如果任何人有CF9解決方案,我會在選擇答案之前等一會兒。 – danmcardle

+2

@crazedgremlin - 實際上CFCProxy的某些版本已經出現[自v7以來](http://www.forta.com/misc/cfcproxy.htm)。早期版本可能不具備所有相同的功能,但可以在CF10之前訪問。 – Leigh

+0

我總是從@Leigh學到一些新東西。我記得Adobe爲CF10做了一個關於CFCProxy的大事,所以我認爲這是一個新功能。似乎Adobe在CF10之前故意保密。 – imthepitts

1

Adob​​e的本·福爾塔對CFCProxy一些文檔,你可能會發現有用,網址爲: http://www.forta.com/misc/cfcproxy.htm

我也曾經在博客中CF集羣這裏使用CFCProxy,當時指的ColdFusion 8: http://www.talkingtree.com/blog/index.cfm/2008/2/6/Using-the-CFC-Proxy-in-a-ColdFusion-Cluster

+0

愚蠢的問題......因爲cfc需要cf servlet上下文,你是如何測試java代碼的? :) – Leigh

+0

過了幾年,但看着我的博客條目我看到,java調用者類導入了以下內容: import coldfusion.cfc.CFCProxy; import coldfusion.bootstrap.BootstrapClassLoader; import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpServletRequest; 然後,類路徑被設置爲包含ColdFusion和JRun jar文件,以便能夠重新使用這些依賴關係: set CLASSPATH =。;%CF_HOME%\ WEB-INF \ cfusion \ lib \ cfusion.jar;%CF_HOME %\ WEB-INF \ lib \ cfmx_bootstrap.jar;%JRUN_HOME%\ lib \ jrun.jar –

+0

(補時五分鐘時間..)也許有所改變。我從Eclipse中嘗試過。只是一個基本的Java項目(添加了所有的cf9 jar和import - cfusion,jrun,bootstrap,servlet)。它編譯,但是當我運行它時,我得到一個「CFCServlet必須初始化」的錯誤。我會再玩一些。感謝您的檢查。 (你的記憶力比我的好;-) – Leigh

相關問題