2017-01-09 16 views
0

Java Controllerなしで登録フォームを作成しようとしています。コントローラはAngularのみです。しかし、私はこのコントローラのUserRegistrationに問題があります。私のopionのアイデアは良いですが、私はJavaとして良い角度を知らない。ここで登録機能が動作しませんAngularJS and Java

は私のコードです:

ユーザーコンストラクタ パブリックユーザー(文字列名、文字列の電子メール、文字列passwordHash)

登録リソース:

@Component 
@Path("/register") 
public class RegisterResource { 

    @Autowired 
    private UserDao userDao; 

    @Path("registration") 
    @POST 
    @Produces(MediaType.APPLICATION_JSON) 
    public User user(User user) 
    { 
     user(user).addRole(Role.USER); 




     return this.userDao.save(user); 
    }} 

app.js

angular.module('exampleApp', ['ngRoute', 'ngCookies', 'exampleApp.services']) 
    .config(
     [ '$routeProvider', '$locationProvider', '$httpProvider', function($routeProvider, $locationProvider, $httpProvider) { 

      $routeProvider.when('/register', { 
       templateUrl: 'partials/register.html', 
       controller: UserController 
      }); 

function UserController($scope, $http) { 
    $scope.user = {}; 


    $scope.register = function() { 
     this.UserRegister.user({username: $scope.user.username, email: $scope.user.emailAddress, password: $scope.user.password}) 

     this.router.navigate(['/login']); 
    } 
    } 

var services = angular.module('exampleApp.services', ['ngResource']); 


services.factory('UserRegister', function($resource) { 

    return $resource('rest/register/:action', {}, 
     { 
      authenticate: { 
       method: 'POST', 
       params: {'action' : 'registration'}, 
       headers : {'Content-Type': 'application/x-www-form-urlencoded'} 
      } 
     } 
    ); 
}); 

と私のregister.htmlペーストビン:link

大きな感謝! (https://docs.angularjs.org/api/ngResource/service/ $リソースを参照してください)

return $resource('rest/register/:action', {}, 
    { 
     authenticate: { 
      method: 'POST', 
      params: {'action' : 'registration'}, 
      headers : {'Content-Type': 'application/x-www-form-urlencoded'} 
     } 
    } 
); 

をしかし、あなたがリソースを使用する場合、あなたはそのアクションを起動していない:あなたはそうのように取得したリソースへのアクションを宣言するための$resource構文を使用している

+0

UserRegisterサービスを注入する必要があります...が、問題は、正確に何ですか?関連するコードをここに掲載し、リンクを避けてください。 –

+0

機能登録()が動作しませんapp.jsに問題がありますが、どこに見つけることができません。 –

+0

@OvidiuDolhaお手伝いできますか? –

答えて

0

。あなたがこれを行う必要があります。

$scope.register = function() { 
    this.UserRegister.authenticate({username: $scope.user.username, email:  $scope.user.emailAddress, password: $scope.user.password}) 
    this.router.navigate(['/login']); 
} 

をまた、[OK]をクリックして、コントローラに

function UserController($scope, $http, UserRegister) { 
    this.UserRegister = UserRegister 
+0

これは同じではありません。 Skypeを持ってますか?私はあなたに私の画面を共有し、より簡単になります。 –

関連する問題