私はJavaエンタープライズとGlassfishを使用してアプリケーションを構築しています。クライアントとサーバー間の情報は通常少量のデータですが、クライアントはより大きなリソースを取得する必要がある場合があります(1〜20 MBが一般的です)。私はまだシステムのアーキテクチャを計画しており、サーバー上のリソースを複数のクライアントに公開する方法についてアドバイスが必要です。
もともと私は、javawsとglassfishによって提供されるACCでデスクトップクライアントアプリを実行するだけでした。リモートインターフェイスを別のjarに配置し、それらのインターフェイスを介して公開されたEJBメソッドを呼び出すことにより、すべてのクライアントサーバーインターフェイスを実行することを計画しました。これはすべて問題なく、Javaデスクトップクライアントにとっては問題ありません。Androidクライアントにとってはかなり簡単なはずです。しかし、iOSにとってはそれほど簡単ではないと思います。
iPhoneまたはiPadで実行されているObjective-cからEJBを呼び出す方法はありますか?きっとそう願っています。
ソリューションがRESTfulWebサービスであることを期待しています。私が理解していることから、これは、一般的なXMLまたはJSON形式でデータを渡すことにより、クライアントアプリケーションとサーバーアプリケーションを緩く結合する方法です。
非常に明白なものが欠けている場合は申し訳ありませんが、ここから2つのルートがあるようです。
私のEJBビジネスインターフェースを維持し、汎用クライアント(iOSおよび後で登場する可能性のあるもの)用に重複したRESTfulインターフェースを実装します。
すべてのクライアントに対して1つのRESTfulインターフェイスを作成します。
2番目のデザインはもっとすっきりしたデザインのように見えますが、それは私がすでに行った作業を破棄して残りについて学ぶ必要があることを意味します。より多くの経験を持つ誰かがいくつかの提案を提供できますか?よろしくお願いします。