3

次の環境で実行されているクライアントにサービスを公開する必要がある Java バックエンドがあります。

  • J2ME
  • Windows モバイル
  • iPhone

各プラットフォームに最適なツールを探しています。
私は、どこでも機能するテクノロジーを探しているわけではありません。
低速インターネットアクセスに適応した「軽い」ものが必要です。

現在SOAPを使用しています。これは冗長で、モバイルでの解析は容易ではありません。問題は、私が実際の代替手段を見たことがないことです。

これらのプラットフォームのいずれかで「すぐに」使用できるフォーマットはありますか?
アプリケーションのダウンロード時間を大幅に増加させる肥大化したライブラリは使用したくありません。

誰もが JSON に同意しているようです。Objective-C、J2ME、Windows Mobile で実行される JSON に基づくソリューションを実装した人はいますか?

注 : これまでのところ、最善の解決策は Hessian のようです。Windows Mobile と Objective-C/iPhone でうまく動作します。大きな問題は J2ME です。Hessian の J2ME 実装には重大な制限があります。複雑なオブジェクトはサポートされていません。私はそれについて別の質問を書きました。

アイデアがあれば、大歓迎です。

4

5 に答える 5

9

JSONはかなりコンパクトで、ほとんどのフレームワークでサポートされています。標準のREST手法を使用して、HTTP 経由でデータを転送できます。

JavaObjective C、および他の多くの言語用の JSON ライブラリがあります(下にスクロール)。JSON は Web アプリケーションに使用されるため、サーバー側でフレームワークのサポートを見つけるのに問題はありません。

古い代替手段には、プレーンな XML と XML-RPC (SOAP に似ていますが、はるかに単純で、ほとんどの言語のライブラリがあります) が含まれます。

于 2008-09-17T12:45:56.740 に答える
5

ヘシアン。 http://hessian.caucho.com。複数の言語 (ObjC を含む) での実装、超軽量、ワイヤからオブジェクト モデルへの変換に dom/xml パーサーへの依存を必要としません。Hessian を見つけると、XML のことを忘れていました。

于 2008-09-17T16:17:53.407 に答える
2

REST + XML または JSON は良い代替手段です。それは RIA の世界で大きな進歩を遂げており、その美しさはそのシンプルさにあります。特別なツールを必要とせず、非常に簡単に使用できます。SOAP には長所がありますが、SOAP を強力にサポートするツールがある環境で最適に機能します。ご質問からそうではないと思います。

于 2008-09-17T12:47:35.130 に答える
2

2 番目の JSON。Stringtree JSON リーダーを J2MEに移植しました。これは、5KB のクラス ファイルにコンパイルされる単一クラスの JSON リーダーであり、JSON 構造を Hashtable や Vector などのネイティブ CLDC タイプに直接マップします。これで、デスクトップ ブラウザーの AJAX フロントエンドと J2ME クライアントの両方に同じサーバーを使用できるようになりました。

于 2008-09-18T20:47:27.837 に答える
1

単純な古い XML (残念ながら POX と呼ばれる) はどうですか?

別の非常に便利なオプションはJSONです。そこにはすべてのプログラミング言語のライブラリがあります。

おそらく、コンピューティング リソースとネットワーク リソースの両方に関して制約のある環境で作業していて、静的に型付けされた言語を使用している場合は、Google のプロトコル バッファが適しているでしょう。(そこにある RPC crud は無視してください。RPC は魅力的な厄介なものであり、有用なテクノロジではありません。)

あなたの質問の問題は、これがどのような種類のデータであり、どのようなユースケースであるかについて多くのコンテキストを提供していないため、非常に漠然とした一般論以外で話すのは難しいことです.

于 2008-09-17T12:48:20.633 に答える