2013-07-23 100 views
0

我正在從java類調用Web服務。在這個工作正常的java類中,我避免了證書檢查 - 因爲我正在調用一個請求Authentication Header數據(Web服務給出的用戶名和密碼)的Web服務,所以我使用java類來完成此操作。使用Java類來調用Web服務返回沒有結果

現在我想使用ColdFusion中的這個java類。我升級了我的ColdFusion以使用jre 1.7,並且像這樣從ColdFusion中調用了我的java類。該服務需要some_company_number並返回一個公司的數據字符串(ADRESS,名稱...)

<cfobject action="create" type="Java" class="nbs.PozivServisaNbs" name="myObj"> 
<cfset ret=myObj.init("some_username","some_password","some_licence")> 
<cfset retVal = ret.PozivServisu(ret,"some_company_number")>//calls for class method 
<cfoutput>#retVal#</cfoutput> 

而且我沒有得到任何結果從ColdFusion的,階級的路徑,因爲當我把 PozivServisaNbs,而不是設置OK nbs.PozivServisaNbs我得到的類沒有找到異常 - 也就是說,我的類加載罰款。我該怎麼做,因爲我想從Java調用一個類。

回答

1

通常還有更多事情要調用Java類來爲參數設置類型。以下是一些嘗試的策略。

  • 嘗試< cfdump VAR = 「#MyObj中#」/ > ...查看被實例化。這是你期望的嗎?
  • 嘗試< cfdump var =「#ret#」/ > ...這是你期望的嗎?
  • 嘗試使用JavaCast()作爲參數,以確保它們作爲函數的正確類型的arg進行傳遞。有時你正在絆倒一個不同的簽名。

在CF中使用Java通常是一個試驗和錯誤的過程。在您移動步驟時,慢慢地傾出每種類別或對象。

+0

當我使用時,不會打印任何內容。我升級到Java 7,ColdFusion工作正常。這可能與我的Java ColdFusion類設置有關。我已將jar文件放在正確的位置並重新啓動應用程序服務。什麼都不打印...... –

+0

''應該打印* something *。除非發生錯誤。你檢查了日誌嗎?有了java對象,你偶爾會得到嚴重錯誤,在屏幕上什麼都不顯示,所以你必須檢查日誌文件。此外,大概你在升級之前使用1.6。它與1.6工作? – Leigh

相關問題