Olá pessoal, eu estou com um probleminha bastante chato. Eu desenvolvi um webservice rest json em java usando Spring. O método recebe uma sentença em lingua portuguesa e faz um processamento. O problema é que quando recebo uma sentença com acentos, os acentos vem zuados. Por exemplo:
enviando: “quem é o seu irmão” eu recebo: “quem é o seu irmão”
Já tentei um monte de coisas como colocar no pom.xml:
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
<java.version>1.8</java.version>
</properties>
também:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-resources-plugin</artifactId>
<configuration>
<encoding>UTF-8</encoding>
</configuration>
</plugin>
o meu método no controler está assim:
@RequestMapping(value={"/listNer"}, method = RequestMethod.GET,produces={“application/json;charset=UTF-8”})
public Map<String , List> listNer(@RequestParam(value=“sentence”) String sentence,
@RequestParam(value=“id”) int id)
{
if (na == null){
na = new NerAux(nerconfrepository.findByIdNerconf(id));
}
return na.getNerEntities(sentence);
}
meu retorno é sempre com os caracteres zuados. O que eu descobri que quando eu faço uma chamada ao método pela url. Exemplo:
http://localhost:8080/nlpservice-0.0.1/testT?sentence=quem%20é%20o%20seu%20irmão
As variáveis passadas pela chamada já chega com os caracteres zuados. Já tentei um monte de coisas e não dá certo. Alguém poderia me dar uma luz?