2012-01-17 12 views
0

私はGWTの学習を始めました。ユーザー登録などのプロセスのためにGWTでフォームを作成し、登録のロジックを処理できるかどうかを知りたいと思います。 、データをデータベースに追加するなど)を行うことができる。私は今までこれを行うためにウェブ上のリソースを見つけることができなかったので、私は後のことが不可能かもしれないと推測しています。これは、ビデオチュートリアルthisに示すように、RemoteServiceServletを拡張するクラスを使用してのみ行うことができますか?Spring ControllerからのGWTフォームの値へのアクセス

request.getParameter()メソッドコールを使用してスプリングコントローラからデータにアクセスしようとしましたが、Postメソッドを使用したときにフォームパラメータにアクセスできませんでしたが、Getを使用するとそれらにアクセスしてください。

GWT:

 HorizontalPanel hrzPnlname = new HorizontalPanel(); 
     hrzPnlname.add(new Label("User Name: ")); 

     final TextBox txtUserName = new TextBox(); 
     txtUserName.setName("userName");   
     hrzPnlname.add(txtUserName);... 

春:私はGWT 2.4を使用しています

@RequestMapping(method = RequestMethod.POST) 
    public ModelAndView helloWorldFromForm(HttpServletRequest request) 
    { 
     Map<String, Object> model = new HashMap<String, Object>(); 
     System.out.println("------>\n\n\n\n\n\n" + request.getParameter("userName") + "\n\n\n\n\n<-------");... 

これは私が使用していたコードの一部です。これに関する情報は高く評価されます。

ありがとうございます!

答えて

2

あなたはいくつかの方法でGWTクライアントと春のコントローラ間でデータを共有することができます Calling REST from GWT with a little bit of JQuery
も参照元GWTのドキュメント(セクション「との通信:

  1. REST/JSON要求を
    はどのように参照してください。サーバー/ JSON ")
    JSONは純粋な標準プロトコルであり、サードパーティのプラグイン(jQueryなど)やその他のWebサービスで使用できるため、これは私の意見ではサーバーと通信するための最良の方法です。 Googleの
    によって提供さ

  2. 非同期GWT RMI(リモートメソッド呼び出し)、私は理由を知る、これはGWT RPCを使用するには、最高のアイデアではないと思う: 4 More GWT Antipatterns

  3. がPOSTとして春のコントローラに直接フォームを送信/ GETリクエスト(あなたがしようとしている)
    com.google.gwt.user.client.ui.FormPanelを参照してください
    ブラウザがフォーム提出を使用してファイルをアップロードするだけなので、ファイルアップロード用に送信するフォームを使用するようにユーザーを調整できます。その他のすべての操作では、GWTではフォームは必要ありません.AJAXを使用して実装することが可能なリクエストです。

+0

情報ありがとうございます。私は 'FormPanel'を使用しています。これは何らかの理由でPOSTリクエストを使用したときにデータを渡さないのですが、Getを使用するとうまく動作します。正直言って最後の手段として最初の方法を残したいと思う。 – npinti

+0

また、GWT 2.4を使用している場合は、GWT AutoBeanフレームワークを使用して、JSONデータのシリアライズを簡素化し、GWT側のサードパーティコンポーネントの使用を避けることができます。 サンプルを含むAuto Beanドキュメント: http://code.google.com/p/google-web-toolkit/wiki/AutoBean –

関連する問題