Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Java EE (J2EE) и Spring > параметр сервлета с символом '#'


Автор: olegrolik 10.9.2007, 15:23
http:// localhost:8080/ServletApplication/show_file?name=c:\1#2.xml

Как видно, параметр сервлета - c:\1#2.xml
Но но практике выходит, что параметр сервлета - 1
Т.е. то, что после символа '#' обрезается, включая этот символ.

Очень много xml-файлов. И почти во всех названиях есть эта решётка.

Вопрос - как передать сервлету в качестве параметра c:\1#2.xml ?

Автор: yar 10.9.2007, 15:41
Сделать параметру escape. Заменить # на %23, \ на %5C, и тд.


Автор: olegrolik 11.9.2007, 12:48
Спасибо за совет. А как сделать это программно? Т.е. если мой запрос c:/123#4.xml, мне надо сделать c:%5c123%234.xml
Как?

Автор: tux 11.9.2007, 13:09
http://java.sun.com/j2se/1.5.0/docs/api/java/net/URLEncoder.html#encode(java.lang.String,%20java.lang.String).

Автор: olegrolik 11.9.2007, 15:32
Цитата(tux @ 11.9.2007,  13:09)
http://java.sun.com/j2se/1.5.0/docs/api/java/net/URLEncoder.html#encode(java.lang.String,%20java.lang.String).

Спасибо!

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)