View Full Version : مشکل در ارسال پارامترهای utf در حالت get
karimi5555
یک شنبه 15 تیر 1393, 18:55 عصر
با سلام
من با jsf کار میکنم
وقتی میخوام فرم رو به صورت get ارسال کنم پارامترهای فارسی به درستی ارسال نمیشن یعنی اینکه
پارامتر هایی که utf هستن به صورت کاراکتر های نامفهوم ارسال میشن
در ضمن من در توی فایل web.xml اینکدینگ رو utf-8 قرار دادم و تمام صفحه ها هم utf-8 هستن و تگ
<meta charset="UTF-8"/> رو هم دارن
ممنون میشن اگه کمک کنید
hamid1129
یک شنبه 15 تیر 1393, 20:34 عصر
استفاده از یک فیلتر مثل فیلتر زیر فکر میکنم مشکل شما رو حل کنه:
کدی مشابه کد زیر:
public class EncodingFilter implements Filter {
@Override
public void destroy() {}
@Override
public void doFilter(ServletRequest request, ServletResponse response,
FilterChain filterChain) throws IOException, ServletException {
request.setCharacterEncoding("UTF-8");
response.setCharacterEncoding("UTF-8");
filterChain.doFilter(request, response);
}
@Override
public void init(FilterConfig arg0) throws ServletException {
}
}
و نگاشت فایل به سرولت FacesServlet
<filter>
<filter-name>filter name</filter-name>
<filter-class>filter class name</filter-class>
</filter>
<filter-mapping>
<filter-name>filter name</filter-namFacesServlete>
<servlet-name>FacesServlet</servlet-name>
</filter-mapping>
karimi5555
دوشنبه 16 تیر 1393, 15:55 عصر
متاسفانه من این فیلتر رو هم دارم ولی فقط رو درخواست های POST کار میکنه و رو درخواست های get جواب نمیده
میخواستم بدونم بجز تغییر دادن در config سرور tomcat کار دیگه میشه انجام داد که این مشکل حل بشه؟
یعنی اینکه کدی وجود نداره که بشه از طریق برنامه،اینکدینگ URL های GET رو به UTF-8 تغییر داد؟
باز هم ممنون از اینکه جواب دادید
vBulletin® v4.2.5, Copyright ©2000-1404, Jelsoft Enterprises Ltd.