最近では、SOAP や REST を使用して Web サービスを簡単にセットアップできます。REST を使用すると、XML や JSON メッセージについて詳しく知らなくても使用できます。これらのタイプのサービスはすべて、.NET コード、PHP、または Javascript からアクセスできます。(うーん... SOAPは、.NETとJavaを除いて、ちょっと面倒です.//個人的な意見)
Spring はサービスのセットアップを支援し、それに対するクライアント インターフェイスは非常に簡単です。標準にかなり近い Bean クラスとビジネス メソッドのアノテーションがインターフェイスを定義し、Spring が面倒な作業を行います。(Spring Remoting ではなく、Spring Web Services について話しているのですが、Spring Remoting も同様に機能します。Spring Remoting は、RMI IMHO よりもはるかに優れているわけではありません。)
Jersey (JAX-WS) または Jackson (Parse JSON) を使用してリモート処理を行うこともできます。Bean クラスの標準アノテーションと、インターフェイスを構築するもの以外。CXF は JAX-WS と JAX-RS も同様に行います。これらは、リモート メッセージを介して通信するサービスとクライアントを構築するための Java 標準です。
別の方法として、リモート インターフェイスの両側を生成するための Eclipse ツールがあります。すべてが何らかのフレームワークに関連付けられています (Axis-2 または CXS は一部です)。コード生成のようなものです。
これらを少し調べて、どれがあなたの物事の見方に共鳴するかを確認したいかもしれません.
私は、RMI を使用するよりもこれらすべてを好むことを知っています。しかし、私は長い間 RMI を直接使用していません。