2015-04-26 17 views
6

Tworzę aplikację w kanale js - jsp, dla której utworzyłem stronę logowania, również utworzyłem serwlet do pobierania bazy danych i porównywania nazwy użytkownika i hasła. utworzony formularz logowania i przekazane wartości mój kontroler kątowy na formularzu logowania prześlij. teraz muszę uzyskać dostęp do serwletu, który porównuje logowanie, w jaki sposób przekazuję informacje do serwletu? Stworzyłem dla tego fabrykę, również muszę użyć metody post do przekazywania danych.Sprawdzanie poprawności logowania za pomocą Angular Js i JSP

Wklejam kod do momentu, w którym skończyłem.

HTML

<div class="container"> 

     <form name="myForm" novalidate class="col-md-4 col-md-offset-4"> 
     <h2>{{login.username}}</h2> 
      <div class="form-group"> 
       <input type="email" ng-model="login.username" required class="form-control input-lg" placeholder="Email"> 
      </div> 

      <div class="form-group"> 
       <input type="password" required ng-model="login.password" class="form-control input-lg" 
        placeholder="Password"> 

      </div> 

      <div class="form-group"> 
       <input type="submit" ng-disabled="myForm.user.$dirty && myForm.user.$invalid || 
myForm.email.$dirty && myForm.email.$invalid" ng-click="formSubmit(login)" class="btn btn-primary btn-lg btn-block" value="Sign In"/> 
       <span><a href="#">Need help?</a></span> <span class="pull-right"><a 
        href="#">New Registration</a></span> 
      </div> 

     </form> 

    </div> 

Controller.js

var appController = angular.module('appController', []); 


appController.factory('AccountGroup', ['$resource', 'Data', function ($resource, Data) { 
    return $resource( 
    { 
     query: { 
     isArray: true, 
     method: 'POST' 
     } 
    } 
); 
}]); 

appController.controller('LoginController', ['$scope','$http', function ($scope,$http) { 

     $scope.formSubmit = function(item) { 
      debugger; 
      console.log(item); 
      }; 


}]); 

To mój zaćmienie struktura katalogów

enter image description here

LoginValdiator.java to serwlet używany do porównywania loginów

+0

Od swojej funkcji kontrolera „formSubmit” trzeba zadzwonić do serwletu. Coś jak $ http.post ("URL serwletu logowania", pozycja); Nie jestem zaznajomiony z backendem Java, ale czy znasz ścieżkę do serwletu, aby wykonać logowanie? – shivas

+0

@shivas tak naprawdę również szukam ścieżki. – droidev

Odpowiedz

1

Aby otworzyć aplet dodaj mapowanie serwletu dla tego serwletu w pliku deskryptora wdrażania (web.xml).

Np

<servlet> 
    <servlet-name>servlet1</servlet-name> 
    <servlet-class>org.mycompany.test1</servlet-class> 
</servlet> 
<servlet-mapping> 
    <servlet-name>servlet1</servlet-name> 
    <url-pattern>/path/test</url-pattern> 
</servlet-mapping> 

Tutaj można uzyskać dostęp do servelet przez .../ścieżka/testowym

+0

sprawdzę to – droidev

1

Nie udało Ci się dodać atrybutów name w polu formularza, co umożliwia ustawienie reguły walidacji formularza na tym polu za pomocą kątów.

Markup

<div class="container"> 

    <form name="myForm" novalidate class="col-md-4 col-md-offset-4"> 
     <h2>{{login.username}}</h2> 
     <div class="form-group"> 
      <input type="email" name="email" ng-model="login.username" required class="form-control input-lg" placeholder="Email"> 
     </div> 
     <div class="form-group"> 
      <input type="password" name="password" required ng-model="login.password" class="form-control input-lg" placeholder="Password"> 
     </div> 

     <div class="form-group"> 
      <input type="submit" ng-disabled="myForm.user.$dirty && myForm.user.$invalid || 
myForm.email.$dirty && myForm.email.$invalid" ng-click="formSubmit(login)" class="btn btn-primary btn-lg btn-block" value="Sign In" /> 
      <span><a href="#">Need help?</a></span> <span class="pull-right"><a 
        href="#">New Registration</a></span> 
     </div> 
    </form> 
</div> 

Aby uzyskać więcej informacji, dlaczego są wymagane atrybuty name, można odnieść this Answer przeze mnie tylko

+0

To dobrze, ale nie szukam w tej chwili sprawdzania poprawności frontendu. – droidev

+0

@ShajeerAhmd, ale na pewno pomogłoby ci to podczas sprawdzania poprawności z przodu ' –

+1

@yes, wiem, że – droidev

Powiązane problemy