Estou tendo problemas com caracteres especiais em javascript, no caso abaixo quando tento dar um alert com a string JSON q recebo simplesmente nao funciona, quando dou um alert com um texto qualquer funciona... ja tentei dar um eval(), mas o erro continua... acredito que o problema seja com as aspas...
como eu conseguiria resolver isso? como posso tratar a string no JSP pra passar pro javascript ?
ja tentei forçar na mão um \ antes das aspas, mas tbm nao funciona...
vlu!
Minha Classe que transforma dados de retorno para o JSP em JSON...
List params = new ArrayList();
params.add(ai.getNomeArquivo());
ReturnHelper retHelp = new ReturnHelper();
retHelp.cdRet = cdRet;
retHelp.descMsg = descMsg;
retHelp.params = params;
request.setAttribute("dados", jsonReturn(retHelp));
return paginaSucesso;
public String jsonReturn(ReturnHelper rh){
XStream xs = new XStream(new JettisonMappedXmlDriver());
xs.setMode(XStream.NO_REFERENCES);
xs.alias("ret", rh.getClass());
return xs.toXML(rh);
}
...
<%
String dados = (String) request.getAttribute("dados");
%>
<script>
alert('<%=dados%>');
</script>
Formato q o JSON chega no meu JSP
{"ret":{"cdRet":"##FD##","descMsg":"Upload do Arquivo Realizado com Sucesso.","params":[{"string":"Centro de negocios.gif"}]}}
