2016-11-24 4 views
0

Ich versuche, die Antwort von einem REST-Service von meinem GWTP-Presenter zu bekommen. Meine securityDelegate löst die onSuccess-Methode aus, aber die UserDTO scheint leer zu sein. Das Netzwerk-Tool zeigt mir die Anfrage mit HTTP-Code 200 und die Antwort mit dem aktuellen Benutzer an. Aus irgendeinem Grund scheint das UserDTO leer zu sein.GWTP ResourceDelegate Antwort undefined

Die mich LOGGER

CLASS zeigen: [email protected]

Name: undefined

//LoginPresenter.java 
    securityDelegate.withCallback(new AsyncCallback<UserDTO>() { 
     @Override 
     public void onFailure(Throwable throwable) { 
      Window.alert("fail"); 
     } 

     @Override 
     public void onSuccess(UserDTO user) { 
      LOGGER.info("CLASS:"+user.toString()); 
      LOGGER.info("Name:"+user.getName()); 
     } 
    }).authenticate(username,password); 

    //SecurityResource.java 
    @Path("/security") 
    @Produces (MediaType.APPLICATION_JSON) 
    @Consumes (MediaType.APPLICATION_JSON) 
    public interface SecurityResource { 

     @POST 
     @Path ("/authenticate") 
     RestAction<UserDTO> authenticate(@HeaderParam ("username") String username,@HeaderParam("password") String password); 
    } 

    //SecurityResourceImpl.java 
    @Path ("/security") 
    @Produces(MediaType.APPLICATION_JSON) 
    @Consumes (MediaType.APPLICATION_JSON) 
    public class SecurityResourceImpl { 

     @EJB 
     private SecurityBean securityBean; 

     @POST 
     @Path("/authenticate") 
     @Override 
     public Response authenticate(@HeaderParam ("username") 
    String username, @HeaderParam("password") String password){ 

     User currentUser = securityBean.find(username,password); 
     return Response.ok().entity(new UserDTO(currentUser)).build(); 
     } 
} 

    //UserDTO.java 
    public class UserDTO implements Serializable { 

     private String name; 

     public UserDTO(){ 
     } 

     public UserDTO(User user){...} 
     //getters/setters 
    } 

Antwort

0

Meine schlecht, vergessen definiere ich die Setzer! Ich habe UserDTO als Builder-Muster definiert.