powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Java [игнор отключен] [закрыт для гостей] / JSF проблемы с выводом ссылок с русскими символами
8 сообщений из 8, страница 1 из 1
JSF проблемы с выводом ссылок с русскими символами
    #34631733
vzf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
vzf
Гость
У меня возникли проблемы с выводом ссылок на локальные ресурсы, содержащие символы русского алфавита.

Вот написал простенькую страницу JSF и бин к ней для демонстрации проблемы.

Бин.

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
 import  java.io.UnsupportedEncodingException;
 import  java.net.URLEncoder;
 public   class  LinkBean {
     public  LinkBean() {
    }
     private  String link = "\\\\host531\\Книги";
     public   void  setLink(String link) {
         this .link = link;
    }
     public  String getLink() {
         try  {
            System.out.println("original link: " + link);
            link = URLEncoder.encode(link,"UTF-8");
            System.out.println("encoded link: " + link);
        }  catch  (UnsupportedEncodingException e) {
            e.printStackTrace();
        }
         return  link;
    }
}



Страница

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
<!DOCTYPE HTML  PUBLIC  "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<%@ page contentType="text/html;charset=UTF-8"%>
<%@ taglib uri="http://java.sun.com/jsf/html" prefix="h"%>
<%@ taglib uri="http://java.sun.com/jsf/core" prefix="f"%>
<f:view>
  <html>
    <head>
      <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
      <title>Page  1 </title>
    </head>
    <body>
    <h:form>
    <h:outputText value="Link"/>
    <br/>
    <h:outputLink value="#{linkBean.link}"
                  title="тест">
    <h:outputText value="click me"/>
    </h:outputLink>
    
    </h:form>
    </body>
  </html>
</f:view>


После перекодировки получаю.

Код: plaintext
encoded link: %5C%5Chost531%5C%D0%9A%D0%BD%D0%B8%D0%B3%D0%B8

На странице получается ссылка

Код: plaintext
http://localhost: 8991 /linkTest/faces/%5C%5Chost531%5C%D0%9A%D0%BD%D0%B8%D0%B3%D0%B8;jsessionid=0a10095e231f83040d7ca8364824b1338f56cfa42e47


Но это ладно, самое обидное что даже если в браузере вручную вбить

Код: plaintext
%5C%5Chost531%5C%D0%9A%D0%BD%D0%B8%D0%B3%D0%B8

Ресурс не откроется :(

Кто-нибудь может подсказать как решить эту проблему ?
...
Рейтинг: 0 / 0
JSF проблемы с выводом ссылок с русскими символами
    #34633544
y3u
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
по-моему, тут енкодить урл - лишнее, страница и так в UTF-8...
...
Рейтинг: 0 / 0
JSF проблемы с выводом ссылок с русскими символами
    #34634028
vzf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
vzf
Гость
Если не кодировать, то JSF выводит эту ссылку так:

Код: plaintext
file://host531/%251A%253D% 2538 % 2533 % 2538 ;jsessionid=0a10095e2320291af6848d574711aa9099363de8d1cb

Это в IE 7.

А фаерфоксе получается так:

http://localhost:8992/linkTest/faces/%5C%5CEppw531%5C%1A%3D%38%33%38;jsessionid=0a10095e23209f3f90d1f3b54c99b3fec21687b1891e
...
Рейтинг: 0 / 0
JSF проблемы с выводом ссылок с русскими символами
    #34634185
vzf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
vzf
Гость
Точнее в фаерфоксе так будет

Код: plaintext
1.
http://localhost:8992/linkTest/faces/%5C%5Chost531%5C%1A%3D%38%33%38;jsessionid=0a10095e23209f3f90d1f3b54c99b3fec21687b1891e

перепутал хосты, но суть та же :)
...
Рейтинг: 0 / 0
JSF проблемы с выводом ссылок с русскими символами
    #34651540
Alexei Rublov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
1.
2.
3.
4.
5.
<%  
    request.setCharacterEncoding("utf-8");
    response.setCharacterEncoding("utf-8");
%> 

Мож поможет.
...
Рейтинг: 0 / 0
JSF проблемы с выводом ссылок с русскими символами
    #34663677
vzf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
vzf
Гость
Не помогает :(
...
Рейтинг: 0 / 0
JSF проблемы с выводом ссылок с русскими символами
    #34663743
ksm80
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В JDeveloper попробуй
1. Tools->project properties->Compiler
Character Encoding = cp1251 (или windows-1251)
2. Tools->Default Project properties->Compiler
Character Encoding = cp1251 (или windows-1251)
3. Tools->Preference->Environment
Encoding= cp1251 (или windows-1251)
ну и в проекте прибить папку classes, deploy (ment)
...
Рейтинг: 0 / 0
JSF проблемы с выводом ссылок с русскими символами
    #34663860
vzf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
vzf
Гость
Тоже не помогло. Если посмотреть в свойства ссылки получаю

Код: plaintext
file://host531/%251A%253D% 2538 % 2533 % 2538 ;jsessionid=0a10095e2320a2f62dd9dd1b4b5ebedfadfb32a5d0da

Когда нажимаю, в браузере появляется следующая ссылка (в поле ввода адреса)

Код: plaintext
\\host531\%1A%3D% 38 % 33 % 38 ;jsessionid=0a10095e2320a2f62dd9dd1b4b5ebedfadfb32a5d0da
...
Рейтинг: 0 / 0
8 сообщений из 8, страница 1 из 1
Форумы / Java [игнор отключен] [закрыт для гостей] / JSF проблемы с выводом ссылок с русскими символами
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]