UTF-8-codierten String in REST-WebService mit Apache CXF

Ich bin Einstellung, die eine REST-Web-Service auf einer 2,5-Web-Anwendung auf Tomcat 6 verwenden von CXF 3.0.2.
Der webservice erhält eine POST-Anforderung mit keine Parameter und gibt ein JSON-String mit internationalen Zeichen (z.B. é, è, à, ...).

Das problem ist, dass die aufrufende Anwendung scheint zu erhalten, die Zeichenkette nicht in UTF-8 codiert.
Ich habe versucht, mit SoapUI aber ähnliches problem mit der "RAW View" (die "JSON view" scheint OK).

Ich weiß wirklich nicht, was das problem sein könnte.
In der Tat, ich weiß nicht, ob die aufrufende app ist nicht zu Lesen, die in UTF-8 oder CXF sendet ein nicht UTF-8-codierte Antwort.

Java REST Web-Service :

 package test; 

@Path("/TestService") 
@Consumes(MediaType.APPLICATION_JSON) 
@Produziert(MediaType.APPLICATION_JSON + ";charset=UTF-8") 
public class TestService { 

@Path("/indicateurs") 
@POST 
public String indicateurs() { 
return "iiérrràr_îttt"; 
} 
} 

cxf-servlet.xml :

 
lt;bean id="testService" class=" - test.TestService"/> 
<jaxrs:server-id="testRestService" Adresse="/TestService"> 
<jaxrs:serviceBeans> 
<ref bean="testService"/> 
</jaxrs:serviceBeans> 
<jaxrs:providers> 
<bean class="org.apache.cxf.jaxrs.Anbieter.json.JSONProvider"> 
<property name="dropRootElement" value="true" /> 
<property name="supportUnwrapped" value="true" /> 
</Bohne> 
</jaxrs:providers> 
</jaxrs:server - > 

SoapUI JSON View :

 iiérrràr_îttt 

SoapUI RAW-Ansicht :

 
HTTP/1.1 200 OK 
Server: Apache-Coyote/1.1 
Datum: Tue, 09 Dec 2014 10:54:52 GMT 
Content-Type: application/json;charset=UTF-8 
Transfer-Encoding: chunked 
Anschluss: schließen 

iiérrràr_îttt 
  • Der Produzent sieht ok, aber was ist Ihre Berufung-code, fehlschlägt?
InformationsquelleAutor Der-3 | 2014-12-09
Schreibe einen Kommentar