2011-12-13 75 views
1

我正在與SAP系統集成的Java EE項目中工作,我試圖運行一個調用RFC的簡單獨立Java類。我的代碼段是連接SAP系統

JCO.Client mConnection = 
    JCO.createClient("dummy", // SAP client 
      "dummy", // userid 
      "dummy", // password 
       "dummy", // language (null for the default language) 
       "dummy", // application server host name 
       "dummy"); // system number 

它引發以下例外「JCO.classInitialize():無法加載中間件層 'com.sap.mw.jco.rfc.MiddlewareRFC' JCO.nativeInit():無法初始化動態鏈接庫sapjcorfc」 唯一的圖書館,我在這一刻將sapjco.jar,我在一些foruns已經看到,我需要這兩個庫(librfc32.dll,sapjcorfc.dll)才能在獨立應用程序中運行此代碼。是對的嗎 ?我在哪裏可以得到這兩個圖書館?最後一個是放在與sapjco.jar相同的文件夾中,可以嗎?

如果我不能在我的本地計算機上運行此我不得不說我想測試一下:(

+0

您是否成功? – BrOSs

回答

3

取決於你使用哪個版本的JCO每次部署應用程序(你沒有說明) ,你需要一個或兩個平臺特定的本地庫,它們與JCo軟件包以及一些安裝文檔捆綁在一起,如果你沒有這個,你會得到一個不完整的,可能是非法的軟件包(不允許重新分發) 。請轉至http://service.sap.com/connectors並獲取有效的密碼。

+2

值得一提的是,對於此鏈接,需要具有授權的SAP Service Marketplace用戶下載文件。這就是爲什麼人們在尋找其他地方的圖書館。我從來沒有理解過這個SAP決定,但現在看起來如此。 – Jagger

+0

@Jagger這個決定背後的基本原理是,這是一個來自安全POV的關鍵庫,SAP希望嚴格控制已發佈的版本 - 也就是說,停止一些可疑的站點,以免出現舊的,有缺陷的版本。我不同意這項政策,但這是官方原因。 – vwegert