Здравствуйте! Имеется jsp:
| Код | <% String category = request.getParameter("category"); %> <table> <tr> <td> <div class='title' style='padding-left: 50px; padding-bottom: 10px;'>Изменить</div> <form action="ecategory.htm" method="post"> <input type="hidden" value='<%= request.getParameter("id") %>' name="id" /> <input type="text" class="span5" value='<%= category %>' name="newCategoryName" /> <input type="submit" class="btn success" value="Сохранить" /> <a href="category.jsp" class="btn danger">Отмена</a> </form> </td> </tr> </table>
|
Сюда уже category приходит в неправильной кодировке (не видны русские буквы).
Данный параметр приходит с другой jsp (которая была сгенерирована сервлетом)
Сервлет вот такой:
| Код | writer.append("<tr>"); writer.append("<td>"); writer.append("<b>" + list.getString("category") + "</b>"); writer.append("</td>"); writer.append("<td>"); writer.append("<a class='btn primary small' href='categoryEdit.jsp?id=" + list.getInt("id") + "&category=" + list.getString("category") + "'>Редактировать</a>"); writer.append("</td>"); writer.append("<td style='width:100%;'>"); writer.append("<a class='btn danger small' href='dcategory.htm?id=" + list.getInt("id") + "'>Удалить</a>"); writer.append("</td>"); writer.append("</tr>");
|
На самой jsp, в сревлете, в строке параметров все отображается нормально.
был добавлен фильтр:
| Код | public class CharsetFilter implements Filter { // кодировка private String encoding;
public void init(FilterConfig config) throws ServletException { // читаем из конфигурации encoding = config.getInitParameter("requestEncoding");
// если не установлена - устанавливаем Cp1251 if (encoding == null) encoding = "UTF-8"; }
public void doFilter(ServletRequest request, ServletResponse response, FilterChain next) throws IOException, ServletException { request.setCharacterEncoding(encoding); next.doFilter(request, response); }
public void destroy() { } }
|
Пытался везде придерживаться единой кодировки, а именно UTF-8.
Поиск юзал, не один из найденных методов не помог ( |