2017-04-16 13 views
0

角度と春の起動を使用して簡単なユーザー作成プログラムを作成しようとしています。ユーザー作成部分で例外が発生しています:円形ビューパス[createUser]:現在のハンドラーURL [/ createUser]に再度ディスパッチします。 ViewResolverの設定を確認してください! (ヒント:これはデフォルトのビュー名の生成のため、不特定のビューの結果かもしれません)。円形ビューパス例外

同じ問題でスタックオーバーフローで複数の回答が見られましたが、解決できません。添付

コードです:

 @RequestMapping(value="/createUser",method=RequestMethod.POST,consumes = MediaType.APPLICATION_JSON_VALUE) 
public void createUser(@RequestBody String user) throws JsonParseException, JsonMappingException, IOException{ 
    ObjectMapper mapper=new ObjectMapper(); 
    User userObj=mapper.readValue(user, User.class); 
    UserFunction uf = new UserFunction(); 
    uf.createUser(userObj); 
} 

ウェブページ:私は設定でいくつかの変更を加える必要があり理解フォーラムでこの問題に対する答えから

<body> 
<div ng-app="MyApp" ng-controller="MyCtrl as ctrl"> 
    <form ng-submit="createUser()" name="myForm"> 
     <table> 
      <tr> 
       <td>Id</td> 
       <td><input type="text" ng-model="user.id" value="user.id"> 
      </tr> 
      <tr> 
       <td>Name</td> 
       <td><input type="text" ng-model="user.name" value="user.name"> 
      </tr> 
      <tr> 
       <td>Age</td> 
       <td><input type="text" ng-model="user.age" value="user.age"> 
      </tr> 
      <tr> 
       <td></td> 
      </tr> 
     </table> 
     <input type="submit"> 
     <h2>Id: {{user.id}}</h2> 
    <h2>Name: {{user.name}}</h2> 
    <h2>Age: {{user.age}}</h2> 
    </form> 
</div> 

<script> 
    var app = angular.module("MyApp", []); 
    app.controller("MyCtrl", function($scope, $http) { 
     $scope.user = { 
      name : "", 
      id : 0, 
      age : 0 
     }; 
     $scope.createUser = function() { 
      var data=JSON.stringify($scope.user); 

      $http.post("/createUser", data).then(function() { 
       alert("User created"); 
      }, function() { 

      }) 
     } 
    }) 
</script> 

が、どこへそれらの変更を行います。私は理解できません。 助けてください。 ありがとうございます!実際に一度createUserメソッドが実行される制御をリダイレクトする場所

@RequestMapping(value="/createUser",method=RequestMethod.POST,consumes = MediaType.APPLICATION_JSON_VALUE) 
public @ResponseBody ResponseEntity createUser(@RequestBody String user) throws JsonParseException, JsonMappingException, IOException{ 
    ObjectMapper mapper=new ObjectMapper(); 
    User userObj=mapper.readValue(user, User.class); 
    UserFunction uf = new UserFunction(); 
    uf.createUser(userObj); 
    return new ResponseEntity(HttpStatus.OK); 
} 
+0

'uf.createUser(...)'が処理した後で、create userリクエストがどこで終了すると思いますか? –

+0

ユーザーがUser.htmlページにリダイレクトするようにしたい – Jayant

答えて

1

問題は解決しました。 @ジャヤントと同様に、createUserメソッドに@ResponseBodyを追加して、ビューリゾルバがリダイレクトページを探すのではなく、そのまま応答を呼び出し場所に送信するようにしてください。

0

ここではあなたのビューリゾルバが知っていない:私は私のコントローラ機能を変更した後