2017-09-21 3 views
0

J'essaye de construire un POST http en Java avec la classe builder et ne peux pas comprendre comment combiner servlet avec hostname. Je ai essayé de trouver des exemples à ce sujet, mais ne pouvait pas.comment utiliser Servlet avec le nom d'hôte dans HTTP POST JAVA en utilisant la classe de construction

private static String HOSTNAME = "servlet.nuancemobility.net"; 
private static String SERVLET = "/NMDPAsrCmdServlet/dictation"; 

Et la classe constructeur J'utilise:

URIBuilder builder = new URIBuilder(); 
    builder.setScheme("https"); 
    builder.setHost(HOSTNAME); 
    builder.addParameter(SERVLET, SERVLET); 
    builder.setPort(443); 
    builder.build(); 
    return builder; 

Le URl devrait ressembler à ceci: https://servlet.nuancemobility.net:443/NMDPAsrCmdServlet/dictation

mais avec

builder.addParameter(SERVLET, SERVLET); 

il ressemble à ceci:

https://servlet.nuancemobility.net:443?%2FNMDPAsrCmdServlet%2Fdictation=%2FNMDPAsrCmdServlet%2Fdictation 

Répondre

0

La partie/NMDPAsrCmdServlet/dictée de l'URL est le chemin d'accès à la ressource de servlet, pas un paramètre. Essayez d'utiliser:

URIBuilder builder = new URIBuilder(); 
    builder.setScheme("https"); 
    builder.setHost(HOSTNAME); 
    builder.setPath(SERVLET); 
    builder.setPort(443); 
    builder.build(); 
    return builder; 

La liste de paramètres concerne les paramètres (paires nom/valeur) ajoutés à la chaîne de requête.