Check headers before setting charset

master
David BRASSELY 2013-11-15 14:40:26 +01:00
parent 16d4356f9f
commit bcdb13abe8
1 changed files with 7 additions and 4 deletions

View File

@ -3,6 +3,7 @@ package com.sun.jbi.restbc.jbiadapter.inbound;
import com.sun.jersey.spi.container.ContainerRequest;
import com.sun.jersey.spi.container.ContainerResponse;
import com.sun.jersey.spi.container.ContainerResponseFilter;
import java.util.List;
import javax.ws.rs.core.HttpHeaders;
import javax.ws.rs.core.MediaType;
@ -14,10 +15,12 @@ import javax.ws.rs.core.MediaType;
public class CharsetResponseFilter implements ContainerResponseFilter {
public ContainerResponse filter(ContainerRequest request, ContainerResponse response) {
MediaType contentType = (MediaType) response.getHttpHeaders().get(HttpHeaders.CONTENT_TYPE).iterator().next();
response.getHttpHeaders().putSingle("Content-Type", contentType.toString() + ";charset=UTF-8");
List<Object> headers = response.getHttpHeaders().get(HttpHeaders.CONTENT_TYPE);
if (headers != null) {
MediaType contentType = (MediaType) headers.iterator().next();
response.getHttpHeaders().putSingle("Content-Type", contentType.toString() + ";charset=UTF-8");
}
return response;
}
}