Jersey 2.x URLDecoder

messmar

Erfahrenes Mitglied
Hallo,

Web Service Methode vom Type: Response gibt die folgende URI zurück:
Code:
http://localhost:8090/home/index.jsp%3Fpage/%23/home

was eigentlich nicht funktioniert: Error 404 aufm Browser

Wie kann ich die URI decoden so, dass ich die folgende URL zurückbekomme:
Code:
http://localhost:8090/home/index.jsp?pge/#/home

Ich habe einiges versucht wie:
Code:
URLDecoder.decode(uri.toString(), "UTF-8")
oder auch
Code:
fragment
, aber es hat leider nicht geholfen.

Ein Teil des Codes:

Java:
URI uri;
uri = uriInfo.getBaseUriBuilder()    
        .path( "../home/index.jsp?page/#/home" )
        .queryParam("obj", URLEncoder.encode(updateProfileData, "UTF-8") ).build();
         System.out.println( "URI  " + URLDecoder.decode(uri.toString(), "UTF-8") );
         return Response.seeOther(uri).build();

Beim debugen mit System.out, erhalte ich die gewünschte URL, aber wenn ich das Dekodieren bei return innerhalb der Funktion seeOther:

Java:
return Response..seeOther( URLDecoder.decode(uri.toString(), "UTF-8")  )

verwende, dann erhalte ich: "String can't be converted to URI", was eigentlich richtige ist, da uri vom Type URI und nicht String. der Folgende Versuch ist auch gescheitert:

Java:
return Response.seeOther( URI.create(uri) ).build();

Hat irgendjemand einer besser Idee bitte? Ich wäre sehr dankbar wenn einer mir dabei helfen könnte.

Messmar
 
Zurück