Olá seguindo a sugestão do Matheus Brandino, resolvi e retirar o HttpServletRequest e colocar um retorno como String no meu método que retorna um json:
Esse é o método com o HttpServletRequest
@RequestMapping(value = "listJson", method = RequestMethod.GET, produces = "application/json")
public @ResponseBody void doPost(HttpServletRequest request, HttpServletResponse response) throws Throwable {
List<MinhasReceitas> listMinhasReceitas = receitasService.findAll();
ObjectWriter objW = new ObjectMapper().writer().withDefaultPrettyPrinter();
DataTableMinhasReceitas dataTableMinhasReceitas = new DataTableMinhasReceitas();
dataTableMinhasReceitas.setData(listMinhasReceitas);
String json = objW.writeValueAsString(dataTableMinhasReceitas);
response.getWriter().print(json);
}
que retorna no navegador o json nesse formato:
{
"iTotalRecords" : 0,
"iTotalDisplayRecords" : 0,
"data" : [ {
"id" : 4,
"descricaoReceita" : "Rceita 4",
"dataReceita" : {
"year" : 2017,
"month" : "MAY",
"chronology" : {
"id" : "ISO",
"calendarType" : "iso8601"
},
"dayOfMonth" : 25,
"dayOfWeek" : "THURSDAY",
"era" : "CE",
"dayOfYear" : 145,
"leapYear" : false,
"monthValue" : 5
},
"valorReceita" : 9000.00,
"receitaFixa" : false,
"receitaFixaQuantidade" : 0,
"receitaFixaTempo" : null,
"repetirLancReceita" : false,
"repetirPorPeriodo" : null,
"pagamento" : false,
"addObservacao" : "",
"tipoReceitas" : [ {
"id" : 2,
"nome" : "Tipo da conta 2",
"corTipoReceita" : "#werwd",
"nomeTipoReceita" : "Tipo da conta 2"
} ],
"minhasContas" : [ {
"id" : 1,
"nome" : "Conta 1",
"saldoAnterior" : 0.00,
"saldoAtual" : 59000.00,
"saldoFinal" : 59000.00,
"cor" : "#dffsd",
"dashBoard" : true
} ]
} ]
}
Até aqui tranquilo; Agora o meu método para que passou a retornar uma String
@RequestMapping(value = "listJson", method = RequestMethod.GET, produces = "application/json")
public @ResponseBody String doPost() throws Throwable {
List<MinhasReceitas> listMinhasReceitas = receitasService.findAll();
ObjectWriter objW = new ObjectMapper().writer().withDefaultPrettyPrinter();
DataTableMinhasReceitas dataTableMinhasReceitas = new DataTableMinhasReceitas();
dataTableMinhasReceitas.setData(listMinhasReceitas);
String json = objW.writeValueAsString(dataTableMinhasReceitas).toString();
System.out.println("Lista retornada com todos os itens: " + json);
return json;
}
Mas que retorna agora um json cheio de barras.
"{\r\n \"iTotalRecords\" : 0,\r\n \"iTotalDisplayRecords\" : 0,\r\n \"data\" : [ {\r\n \"id\" : 1,\r\n \"descricaoReceita\" : \"Receita 1\",\r\n \"dataReceita\" : {\r\n \"year\" : 2017,\r\n \"month\" : \"FEBRUARY\",\r\n \"chronology\" : {\r\n \"id\" : \"ISO\",\r\n \"calendarType\" : \"iso8601\"\r\n },\r\n \"dayOfMonth\" : 2,\r\n \"dayOfWeek\" : \"THURSDAY\",\r\n \"era\" : \"CE\",\r\n \"dayOfYear\" : 33,\r\n \"leapYear\" : false,\r\n \"monthValue\" : 2\r\n },\r\n \"valorReceita\" : 45000.00,\r\n \"receitaFixa\" : false,\r\n \"receitaFixaQuantidade\" : 0,\r\n \"receitaFixaTempo\" : null,\r\n \"repetirLancReceita\" : false,\r\n \"repetirPorPeriodo\" : null,\r\n \"pagamento\" : true,\r\n \"addObservacao\" : \"\",\r\n \"tipoReceitas\" : [ {\r\n \"id\" : 1,\r\n \"nome\" : \"Tipo da conta\",\r\n \"corTipoReceita\" : \"#drqas\",\r\n \"nomeTipoReceita\" : \"Tipo da conta\"\r\n } ],\r\n \"minhasContas\" : [ {\r\n \"id\" : 1,\r\n \"nome\" : \"Conta 1\",\r\n \"saldoAnterior\" : 0.00,\r\n \"saldoAtual\" : 59000.00,\r\n \"saldoFinal\" : 59000.00,\r\n \"cor\" : \"#dffsd\",\r\n \"dashBoard\" : true\r\n } ]\r\n }, {\r\n \"id\" : 2,\r\n \"descricaoReceita\" : \"Receita 2\",\r\n \"dataReceita\" : {\r\n \"year\" : 2017,\r\n \"month\" : \"MARCH\",\r\n \"chronology\" : {\r\n \"id\" : \"ISO\",\r\n \"calendarType\" : \"iso8601\"\r\n },\r\n \"dayOfMonth\" : 20,\r\n \"dayOfWeek\" : \"MONDAY\",\r\n \"era\" : \"CE\",\r\n \"dayOfYear\" : 79,\r\n \"leapYear\" : false,\r\n \"monthValue\" : 3\r\n },\r\n \"valorReceita\" : 30000.00,\r\n \"receitaFixa\" : false,\r\n \"receitaFixaQuantidade\" : 0,\r\n \"receitaFixaTempo\" : null,\r\n \"repetirLancReceita\" : false,\r\n \"repetirPorPeriodo\" : null,\r\n \"pagamento\" : true,\r\n \"addObservacao\" : \"\",\r\n \"tipoReceitas\" : [ {\r\n \"id\" : 2,\r\n \"nome\" : \"Tipo da conta 2\",\r\n \"corTipoReceita\" : \"#werwd\",\r\n \"nomeTipoReceita\" : \"Tipo da conta 2\"\r\n } ],\r\n \"minhasContas\" : [ {\r\n \"id\" : 3,\r\n \"nome\" : \"Conta 3\",\r\n \"saldoAnterior\" : 0.00,\r\n \"saldoAtual\" : 30800.00,\r\n \"saldoFinal\" : 30800.00,\r\n \"cor\" : \"#fdfsddf\",\r\n \"dashBoard\" : true\r\n } ]\r\n }, {\r\n \"id\" : 3,\r\n \"descricaoReceita\" : \"Receita 3\",\r\n \"dataReceita\" : {\r\n \"year\" : 2017,\r\n \"month\" : \"FEBRUARY\",\r\n \"chronology\" : {\r\n \"id\" : \"ISO\",\r\n \"calendarType\" : \"iso8601\"\r\n },\r\n \"dayOfMonth\" : 28,\r\n \"dayOfWeek\" : \"TUESDAY\",\r\n \"era\" : \"CE\",\r\n \"dayOfYear\" : 59,\r\n \"leapYear\" : false,\r\n \"monthValue\" : 2\r\n },\r\n \"valorReceita\" : 50000.00,\r\n \"receitaFixa\" : false,\r\n \"receitaFixaQuantidade\" : 0,\r\n \"receitaFixaTempo\" : null,\r\n \"repetirLancReceita\" : false,\r\n \"repetirPorPeriodo\" : null,\r\n \"pagamento\" : false,\r\n \"addObservacao\" : \"\",\r\n \"tipoReceitas\" : [ {\r\n \"id\" : 1,\r\n \"nome\" : \"Tipo da conta\",\r\n \"corTipoReceita\" : \"#drqas\",\r\n \"nomeTipoReceita\" : \"Tipo da conta\"\r\n } ],\r\n \"minhasContas\" : [ {\r\n \"id\" : 2,\r\n \"nome\" : \"Conta 2\",\r\n \"saldoAnterior\" : 0.00,\r\n \"saldoAtual\" : 50600.00,\r\n \"saldoFinal\" : 50600.00,\r\n \"cor\" : \"#fdfsddf\",\r\n \"dashBoard\" : true\r\n } ]\r\n }, {\r\n \"id\" : 4,\r\n \"descricaoReceita\" : \"Rceita 4\",\r\n \"dataReceita\" : {\r\n \"year\" : 2017,\r\n \"month\" : \"MAY\",\r\n \"chronology\" : {\r\n \"id\" : \"ISO\",\r\n \"calendarType\" : \"iso8601\"\r\n },\r\n \"dayOfMonth\" : 25,\r\n \"dayOfWeek\" : \"THURSDAY\",\r\n \"era\" : \"CE\",\r\n \"dayOfYear\" : 145,\r\n \"leapYear\" : false,\r\n \"monthValue\" : 5\r\n },\r\n \"valorReceita\" : 9000.00,\r\n \"receitaFixa\" : false,\r\n \"receitaFixaQuantidade\" : 0,\r\n \"receitaFixaTempo\" : null,\r\n \"repetirLancReceita\" : false,\r\n \"repetirPorPeriodo\" : null,\r\n \"pagamento\" : false,\r\n \"addObservacao\" : \"\",\r\n \"tipoReceitas\" : [ {\r\n \"id\" : 2,\r\n \"nome\" : \"Tipo da conta 2\",\r\n \"corTipoReceita\" : \"#werwd\",\r\n \"nomeTipoReceita\" : \"Tipo da conta 2\"\r\n } ],\r\n \"minhasContas\" : [ {\r\n \"id\" : 1,\r\n \"nome\" : \"Conta 1\",\r\n \"saldoAnterior\" : 0.00,\r\n \"saldoAtual\" : 59000.00,\r\n \"saldoFinal\" : 59000.00,\r\n \"cor\" : \"#dffsd\",\r\n \"dashBoard\" : true\r\n } ]\r\n } ]\r\n}"
Como posso resolver isso?