7

SAP Connector for .NETはSAP によって保守されなくなったため、Microsoft の世界と SAP の世界を接続するための代替手段を探しています。「ERPConnect」のようなサードパーティ製品があることは知っていますが、これを SAP のツールで実行したいと考えています (ちなみに、対象の SAP システムがSAP 4.6Cであるため、 Enterprise Servicesは使用できません)。そのため、ツール IKVM.NET (www.ikvm.net/devguide/net2java.html) と組み合わせてSAP Java コネクタを使用するというクレイジーなアイデアが生まれました。IKVM.NETは、 IKVMCを提供します。Java バイトコードを .NET dll および exe に変換するツール。"否や言うほどない!" SAP JCo を .NET dll に変換し、新しい Visual Studio ソリューションを作成しました。すべての JCO ファイルをソリューションのサブディレクトリに配置しました。生成された IKVM.OpenJDK.Core.dll と sapjco.dll への 2 つの参照を設定しました。すべての JCO クラスが .NET クラスとして利用できるようになりました。楽観主義に満ちた私は、SAP システムに接続するための小さなコードをいくつか書きました。

JCO.Client クライアント = null; client = JCO.createClient(...)

私のテストコードのコンパイルにはエラーがありませんでした。"素晴らしい !" と思いました。次に、tetst アプリケーションを開始しました。残念ながら、JCO.createClient の呼び出しで例外が発生しました。

ミドルウェア レイヤ 'com.sap.mw.jco.rfc.MiddlewareRFC' をロードできませんでした\r\njava.library.path に sapjcorfc がありません

このトピックについて2つの質問があります。

1) SAP Java Connector (SAP JCo) を使用して .NET を SAP に接続するという私の考えは良い考えだと思いますか、それともナンセンスですか? おそらく誰かがすでに同じ考えを持っていました;-)

2) 上記の例外はどのように解決できますか?

4

5 に答える 5

4

1) このアプローチは良い考えではないと思います。sap への実際の接続は、Java からではなく (または古い .net コネクタの .net から) 行われます。ただし、ac dll からは、librfc32.dll という名前が付けられます。JNI の IKVM サポートは完全ではないと思います。

うまくいくかもしれませんが、それよりも壊れやすいでしょう。

于 2010-06-07T09:20:22.110 に答える
1

この方法はお勧めしません!直接的な方法を使用する必要があります。たとえば、SAP RFC SDK を使用できます。

于 2010-06-18T10:58:59.243 に答える
1

SAP .Net Connector 3がリリースされました。仕事で毎日使って...

于 2012-03-10T13:17:12.327 に答える
0

これは、IKVMのクラスローダーの問題のように聞こえます。wikiの説明を見てください。

于 2012-03-11T10:20:25.477 に答える
0

Web サービスを検討する必要があると思います。Web サービスの方が簡単で柔軟です。

よろしく

于 2010-09-22T12:07:15.710 に答える