質問

Excel から一部の EJB にアクセスできるようにしたいと考えています。目標は、VBA から使用できる API を提供することです。

EJB の大部分は、POJO を使用して単純な CRUD 操作を実行するステートレス セッション Bean です。

いくつかの考えられる解決策:

  • EJB を WebService として公開し、それらをラップする VB/C# DLL を作成します。
  • Corba を使用して C# から EJB にアクセスします。
  • Java を使用して EJB にアクセスする COM ライブラリを作成する。

これらのソリューションのフレームワークやその他のアイデアへのポインタは大歓迎です。

役に立ちましたか?

解決

見てみるといいでしょう IIOP.NET, 、この問題に対処します。

他のヒント

かなり最近の ejb コンテナーがある場合、Bean を Web サービスとして公開し、VB/C# から呼び出すのが最も安価で簡単です。これには追加のツールやライブラリは必要ありません。

私はオープンソース プロジェクトに取り組んでいます。 XLループ - このフレームワークを使用すると、POJO 関数を Excel 関数として公開できます。

内容は以下のとおりです。

  1. Excel アドイン (XLL)。TCP 経由で以下と通信します。
  2. Java メソッドを呼び出す Java サーバー/ライブラリ。

この Java 関数サーバーを EJB に埋め込み、アプリ サーバーの一部としてデプロイすることができます。

VB6/COM/DCOM スイートを使用していた時代に戻ってください。 J-インテグラ このタスクを達成するために。ただし、.NET バージョンを使用した経験はありません。

強くお勧めします IKVM. 。これは、.NET アセンブリ コンパイラへの Java バイト コードです (つまり、JAR --> DLL) を使用して、Excel オートメーション サーバーにライブ JMX リンクとリスナーを作成しました。EJB クライアント スタブとサポート ライブラリの .NET アセンブリを作成するのは難しくありません。

//ニコラス

試してみてもいいでしょう オバ (私はこのプロジェクトに取り組んでいます):

Obba は、スプレッドシート アプリケーション用の Java オブジェクト ハンドラーです。

スプレッドシートと Java クラスの間のブリッジを提供し、スプレッドシートを Java ライブラリのグラフィカル ユーザー インターフェイスとして使用できるようにします。スプレッドシートから Java ライブラリにアクセスするには、グルー コードは必要ありません (VBA も特別な Java コードも必要ありません)。オブジェクトは、元のコンストラクターによってインスタンス化されます。コンストラクターとメソッドは、「名前による」リフレクションを使用して呼び出されます。スプレッドシート固有のファクトリ メソッドは必要ありません。Obba は、スプレッドシート内のオブジェクトを処理する関数を提供します。

アドインを提供する Java 仮想マシンは、スプレッドシートに変更を加えることなく、同じコンピュータまたはリモート コンピュータ上で実行できます。つまり、スプレッドシートで参照されるオブジェクトはリモート Java 仮想マシン上に存在できます。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top