2017-08-04 1 views
0

Je ne reçois pas mon paramètre de l'avant vers l'arrière, dans le service Angulaire si une valeur est correctement chargée dans: Si embarno n'atteint pas le backend, ce même code fonctionne correctement dans une application monopole de Jhipster 4.4.1. Maintenant je n'ai pas migré et il est dans un microservice de la version 4.6.2, je ne sais pas s'il a changé la syntaxe d'envoi des paramètres.Envoie des microservices de paramètres. Jhipster 4.6.2

Controller:

this.contactoService.byCliente(this.cliente.id).subscribe(
      result => { this.contactos = result; }, 
      error => { console.debug(error); }); 

Service:

byCliente(clienteId?: any): Observable<Contacto[]> { 
    let params = new URLSearchParams(); 
    params.set('clienteId', clienteId); 
    return this.http.get(this.resourceUrl + "/bycliente", { search: params }).map((res: Response) => { 
     return res.json(); 
    }); 
} 

Retour (Microservice):

@GetMapping("/contactos/bycliente") 
@Timed 
public ResponseEntity<List<ContactoDTO>> getAllContactosByCliente(@RequestParam String clienteId) { 
    log.debug("REST request to get a page of Contactos"); 
    List<ContactoDTO> list = contactoService.findContactosByCliente(clienteId); 
    return new ResponseEntity<>(list, HttpStatus.OK); 
} 

Erreur:

An unexpected error occurred: Required String parameter 'clienteId' is not present org.springframework.web.bind.MissingServletRequestParameterException: Required String parameter 'clienteId' is not present 
+0

je l'avais renommé pour la question de la vie privée, il est déjà fixé. –

+0

Il n'y a pas assez de détails pour obtenir de l'aide. Qu'en est-il d'un vidage du HTTP la requête envoyée par le navigateur? –

Répondre

1

Essayez de mettre le paramètre directement dans l'URL lorsque vous appelez l'api dans votre service:

byCliente(clienteId?: any): Observable<Contacto[]> { 
    let params = new URLSearchParams(); 
    return this.http.get(this.resourceUrl + "/bycliente?clienteId="+clienteId).map((res: Response) => { 
     return res.json(); 
    }); 
}