2017-08-04 21 views
0

値が正しく読み込まれている場合は、角のあるサービスでパラメータを前から後ろに取得しません。 embarnoがバックエンドに到達しない場合、この同じコードはJhipsterの独占アプリケーション4.4.1。 私は移行しておらず、バージョン4.6.2のマイクロサービスに入っています。パラメータを送信する構文が変更されたかどうかはわかりません。パラメーター・マイクロサービスを送信します。 Jhipster 4.6.2

コントローラー:

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

サービス:

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(); 
    }); 
} 

戻る(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); 
} 

エラー:

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

は、それがすでに固定されます。 –

+0

ヘルプを得るための詳細が不十分です。ブラウザから送信されたリクエストのHTTPのダンプはどうですか? –

答えて

1

あなたのサービスでAPIを呼び出すときに、URLに直接パラメータを配置しようとすると:私はプライバシーの問題のためにそれを名前を変更していた

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