jquery Struts2 Java $.getJSON params UTF-8 encoding (Tomcat 5.5) -


i'm getting mad this:

tomcat 5.5, jre 1.6 (compliance level) using jdk 1.7

headers:

<%@ page language="java" contenttype="text/html; charset=utf-8" pageencoding="utf-8"%> ... <!doctype html> <meta http-equiv="content-type" content="text/html; charset=utf-8"/> <script src="js/jquery-ui/jquery-1.9.0.js"></script> 

json request:

params = $("#formlist").serializearray(); $.getjson(url, params, function(data) {...}); 

when pass ñ alias parameter, on localhost machine (win) workin ok, in production server (linux) i'm getting double encoding param or similar:

webbrowserrequest (same request localhost & production):

userlist.action?pagination.currentpage=1&pagination.sortcolumn=&pagination.sortcolumnorder=&user.alias=%c3%b1&user.email=&selectedrole=-1&selectedcountry=-1&selectedtown=-1&selectedlanguage=-1&selecteduserenabled=0&__multiselect_selectedcategories=&jsonrequest=true&back=false

server-side url output (localhost):

userlist.action?pagination.currentpage=1&jsonrequest=true&user.email=&selectedlanguage=-1&selectedtown=-1&selectedcountry=-1&pagination.sortcolumn=&selectedrole=-1&back=false&user.alias=ñ&selecteduserenabled=0&pagination.sortcolumnorder=&__multiselect_selectedcategories=

server-side url output (production):

userlist.action?jsonrequest=true&selectedtown=-1&pagination.sortcolumn=&user.alias=ñ&back=false&pagination.sortcolumnorder=&pagination.currentpage=1&user.email=&selectedlanguage=-1&selectedcountry=-1&selectedrole=-1&selecteduserenabled=0&__multiselect_selectedcategories=

finally solved changing getjson (get) request $.ajax (post):

getjson:

$.getjson(url, params, function(data) {     showdata(data); }).error(function(data) {     showfail(data); }); 

ajax:

$.ajax({     type: "post",     url: url,     data: params }).done(function( data ) {     showdata(data,page); }).fail(function(jqxhr, textstatus) {     showfail(jqxhr, textstatus); }); 

Comments