私たちのアプリケーションは、Webサービス、MQ、JDBC、独自の(ダイレクトオーバソケット)およびその他のトランスポートの子供を介して、さまざまなバックエンドのバックエンドに接続することがよくあります。アプリケーションからこれらのバックエンドに接続できる数多くの実装がすでにありますが、これらの実装のすべてが共通のJavaインタフェースを実装していますが、他のものは共有していません。JCAのメリットは何ですか?
これらの特定のコネクタの実装に共通する意味のあるコードがあり、将来のコネクタの開発を1つのユニバーサルコネクタで合理化することを決定しました。このコネクタは、バックエンドによって要求される形式にメッセージをフォーマットし、利用可能な転送メカニズムを使用してメッセージを送信することができます。たとえば、MQまたはソケットを介した固定長メッセージ形式。
私たちが直面しているジレンマの1つは、この種のコネクタにとって最も適切な技術です。これまでのところ、私たちのコネクタは、共通のJavaインターフェイスを実装する基本的なJavaクラスでした。私たちは一般的に、いくつかのJava EEアプリケーションサーバーでアプリケーションをホストしているので、Java Connector Architectureはこのソフトウェアにとって最も適切な技術と思われます。しかし、JCA準拠のコネクタを実装するのは比較的複雑です。 JCAと一緒に行く利点は何ですか?また、利益は追加の努力を正当化するのでしょうか?
私はその組み合わせにJBIを含めるべきだと思います。その場合、問題は、JBIのメリットとJCAのメリットとPOJOのメリットのメリットです。 – Dan