2008-09-17 15 views
0

ブラウザでJavaプロセスによって生成されたデータをレンダリングするには、どのような方法が適していますか?Java用Webスクリプティング

Iは、JSPおよび種々の関連するフレームワーク(JSTLStrutsTapestryなど)の広範な使用、ならびにJSP(GWTOpenLaszlo)に関連していない、より包括的な枠組みを作りました。ほとんどの場合、フレームワークは自分のニーズにあまりにも拘束されすぎたり、複雑すぎたりしますが、他のものは既存のコードを大幅にリファクタリングする必要があります。さらに、ほとんどのフレームワークにはパフォーマンスの問題があるようです。

現在、JSONを返す単純なサーブレットを使用してJavaデータを公開し、PHPまたはRubyを使用してデータを表示するソリューションに傾いています。これは私のサービスを即座にWebサービスとして公開するという追加の利点を持っていますが、私はここでその車輪を再構築しているのだろうかと思います。

答えて

2

私は個人的にはJavaでWebページを作成するのにTapestry 5を使用しますが、時には少し過度のことになることに同意します。私は、JAX-RS(java.net projectjsr311)を使って調べることにしました。使用するのは非常に簡単で、XMLからの/へのオブジェクトのマーシャリングとアンマーシャリングをサポートしています。 Jettison経由でJSONをサポートするように拡張することは可能です。 - JAX-RSのリファレンス実装

  • Jersey

    は、私が試してみました2つの実装があります。

  • Resteasy - 私が好む実装です。幅広いフォーマットを整列化および整列解除するのに適しています。また、かなり安定しており、そのジャージーより多くの機能を備えています。

はJAX-RSは、あなたのために何ができるかについて感覚を得るために、次のコードを見てみましょう:

@Path("/") 
class TestClass { 
    @GET 
    @Path("text") 
    @Produces("text/plain") 
    String getText() { 
     return "String value"; 
    } 
} 

この小さなクラスは@Path上(サーバーのルートに自身を公開しますクラス)を作成した後、getText()メソッドをURI/textで公開し、HTTP GETを使用してgetText()メソッドへのアクセスを許可します。 @Producesアノテーションは、メソッドの結果をプレーンテキストに変換しようとするJAX-RSフレームワークに指示します。

JAX-RSで可能なことを知る最も簡単な方法は、specificationです。

0

おそらく、データをXMLとして生成し、XSLTを使用してレンダリングできますか?

Javaがあなたのために十分に速くない場合は、PHPやRubyが答えになるかどうかわかりません!

1

Stripesを使用しています。それはあなたにストレートサーブレットより多くの構造を与えますが、@UrlBindingアノテーションによってURLを制御することができます。私たちはそれを使ってxmlとjsonをajax用のブラウザに戻します。

あなたはそのルートに行きたいなら別の技術で簡単にそれを消費することができますが、実際にはストライプを使って開発を楽しむことができます。

1

ドメインモデルをRESTサービス(JSONや簡単なXML出力を含む)として公開するための良いフレームワークについてはRestletをご覧ください。

あなたの情報をレンダリングするために、クライアント側でGWTを使用し、データサービスを使用することができますか? GWTがあなたのボートを浮かべていない場合、おそらくJQueryはどうでしょうか?

関連する問題