
Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
|
17.04.2013, 15:07:21
|
|||
|---|---|---|---|
|
|||
java и xml |
|||
|
#18+
всем привет, ситуация такая, получаю ответ от веб сервиса в виде строки с xml и там вместо кириллицы спецсимволы Оплата в и т.д. Сам вебсервис менять не могу, надо обработать строку так чтобы все было корректно. Какой есть способ менее ресурсоемкий чем создавать таблицу символов и соответсвий и потом string.replaceall? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
17.04.2013, 15:11:37
|
|||
|---|---|---|---|
|
|||
java и xml |
|||
|
#18+
miklouhaвсем привет, ситуация такая, получаю ответ от веб сервиса в виде строки с xml и там вместо кириллицы спецсимволы Оплата в и т.д. Сам вебсервис менять не могу, надо обработать строку так чтобы все было корректно. Какой есть способ менее ресурсоемкий чем создавать таблицу символов и соответсвий и потом string.replaceall? 1) Пофиксить чтение HTTP отклика, чтобы читать в правильной кодировке, а не в какой попало. 2) Использовать инструменты работы с XML вместо работы со строкой. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
17.04.2013, 15:13:08
|
|||
|---|---|---|---|
|
|||
java и xml |
|||
|
#18+
Blazkowicz, а там все выставил ка кнадо httpConn.setRequestProperty("Content-Length",String.valueOf(b.length)); httpConn.setRequestProperty("Content-Type", "text/xml; charset=utf-8"); , можно пример если не затруднит? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
17.04.2013, 15:17:05
|
|||
|---|---|---|---|
|
|||
java и xml |
|||
|
#18+
miklouhaа там все выставил ка кнадо httpConn.setRequestProperty("Content-Length",String.valueOf(b.length)); httpConn.setRequestProperty("Content-Type", "text/xml; charset=utf-8"); Это кодировка запроса. Сервер вам присылает ответ в какой-то кодировке. Вы его читаете тоже в какой-то кодировке. К этому коду чтение ответа сервера отношение не имеет. miklouha, можно пример если не затруднит? Чего пример? Взяли бы jaxws, да за 10 минут сварганили клиента по WSDL. http://docs.oracle.com/cd/E17802_01/webservices/webservices/docs/2.0/tutorial/doc/JAXWS.html ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
17.04.2013, 15:17:41
|
|||
|---|---|---|---|
|
|||
java и xml |
|||
|
#18+
Blazkowicz http://docs.oracle.com/cd/E17802_01/webservices/webservices/docs/2.0/tutorial/doc/JAXWS.html Ой, не та ссылка. Смотри ответ WGA выше. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
17.04.2013, 15:22:30
|
|||
|---|---|---|---|
|
|||
java и xml |
|||
|
#18+
WGA, не совсем то, веб сервис вызывается без JAX-WSи прочих библиотек, делается вот так http://technology.amis.nl/2011/06/29/how-to-call-a-call-a-webservice-directly-from-java-without-webservice-library. Проблема не в вызове вебсервиса, он вызывается и отрабатывает нормально, нужно в обратном полученном потоке вместо спец символов отображать их реальные значения. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
17.04.2013, 15:23:53
|
|||
|---|---|---|---|
|
|||
java и xml |
|||
|
#18+
Blazkowicz, мне клиент не нужен, у меня с вебсервисом проблем нет, мне надо заменить спецсимволы. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
17.04.2013, 15:31:48
|
|||
|---|---|---|---|
|
|||
java и xml |
|||
|
#18+
miklouhaWGA, не совсем то, веб сервис вызывается без JAX-WSи прочих библиотек, делается вот так http://technology.amis.nl/2011/06/29/how-to-call-a-call-a-webservice-directly-from-java-without-webservice-library. Проблема не в вызове вебсервиса, он вызывается и отрабатывает нормально, нужно в обратном полученном потоке вместо спец символов отображать их реальные значения. Ну, и зачем вы всякой фигней пользуетесь? Бага вот тут: Код: java 1. 2. Вместо той кодировки в которой сервер ответил, ваш код использует текущую системную. Очевидно они разные. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
17.04.2013, 15:32:57
|
|||
|---|---|---|---|
|
|||
java и xml |
|||
|
#18+
miklouhaмне клиент не нужен Вы же его пишете. Зачем вы его пишете, если он не нужен? miklouha, у меня с вебсервисом проблем нет, ОК. miklouhaмне надо заменить спецсимволы. Это не "спецсимволы". Это испорченый текст из-за баги в вашем коде. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
17.04.2013, 15:37:57
|
|||
|---|---|---|---|
|
|||
java и xml |
|||
|
#18+
пишите кто сталкивался с такой проблемой...грубо говоря есть строка xml надо там заменить спец символы... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
17.04.2013, 15:44:08
|
|||
|---|---|---|---|
|
|||
java и xml |
|||
|
#18+
miklouhaпишите кто сталкивался с такой проблемой...грубо говоря есть строка xml надо там заменить спец символы... Это ты так вежливо послал тех кто тебе пытаеться помочь? Ну, удачи. Разбирайся сам. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
17.04.2013, 16:13:04
|
|||
|---|---|---|---|
|
|||
java и xml |
|||
|
#18+
извиняюсь если кого обидел, может толком не описал задачу полностью. Попробую еще раз... Веб сервис работает правильно, и ответ возвращает правильный, но вместо скобок приходят спец символы, а вместо кириллицы Escape-символы. Тут дело не в кодировке, просто веб сервис такой ответ возвращает и мне нужно заменить в тексте спец символы и Escape-символы на то чем они должны быть. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
17.04.2013, 16:18:38
|
|||
|---|---|---|---|
|
|||
java и xml |
|||
|
#18+
Тю. Если последовательности, то вот: http://commons.apache.org/proper/commons-lang/apidocs/org/apache/commons/lang3/StringEscapeUtils.html Но это скользкий путь работы с XML как со строкой. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
17.04.2013, 16:25:50
|
|||
|---|---|---|---|
|
|||
java и xml |
|||
|
#18+
Blazkowicz, спасибо, уже скачал...там есть функция StringEscapeUtils.unescapeXml(). Понимаю что скользкий, просто вебсервис не я писал и менять никто не будет... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
17.04.2013, 16:29:27
|
|||
|---|---|---|---|
|
|||
java и xml |
|||
|
#18+
miklouhaBlazkowicz, спасибо, уже скачал...там есть функция StringEscapeUtils.unescapeXml(). Понимаю что скользкий, просто вебсервис не я писал и менять никто не будет... При чем тут сервис? Просто если с XML работать через XML API, то вопросов не возникнет. Поэтому решение работать с XML как со строкой немного странное. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
17.04.2013, 16:36:36
|
|||
|---|---|---|---|
|
|||
java и xml |
|||
|
#18+
Blazkowicz, даже если xml возвращается в soap конверте? как сам текст xml оттуда вычленить? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
17.04.2013, 16:44:50
|
|||
|---|---|---|---|
|
|||
java и xml |
|||
|
#18+
А между тем, генерация JAX-WS клиента и 10 минут не заняла бы, и спецсимволы автоматом бы распарсились. А вот с этим "у меня все и так работает, только кодировка какая-то не такая" - до сих пор задача не решена ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
17.04.2013, 16:47:51
|
|||
|---|---|---|---|
|
|||
java и xml |
|||
|
#18+
ivanra, в этом приложении нельзя использовать этот клиент, задача так стоит...с кодировкой все нормально, просто надо обратно преобразовать escape последовательность. И почему решили что JAX-WS клиент вернет что то другое? он вернет тоже самое не в клиенте дело. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
17.04.2013, 16:49:34
|
|||
|---|---|---|---|
|
|||
java и xml |
|||
|
#18+
miklouhaв этом приложении нельзя использовать этот клиент, задача так стоит...с кодировкой все нормально, просто надо обратно преобразовать escape последовательность. И почему решили что JAX-WS клиент вернет что то другое? он вернет тоже самое не в клиенте дело. Потому что JAX-WS включает в себя функиции XML парсера и все escape последовательности нормально преобразует в String значения. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
17.04.2013, 16:52:58
|
|||
|---|---|---|---|
|
|||
java и xml |
|||
|
#18+
Blazkowicz, сомневаюсь что то...попробовал только что StringEscapeUtils.unescapeXml(s) и преобразовались только escape символы для скобок, кириллические символы так и остались в escape виде. я раньше использовал этот пакет кстати для другой задачи c сервером приложений bi publisher..сейчас просто именно задача стоит сделать без сторонних пакетов. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
17.04.2013, 16:54:16
|
|||
|---|---|---|---|
|
|||
java и xml |
|||
|
#18+
miklouhaBlazkowicz, сомневаюсь что то...попробовал только что StringEscapeUtils.unescapeXml(s) и преобразовались только escape символы для скобок, кириллические символы так и остались в escape виде. я раньше использовал этот пакет кстати для другой задачи c сервером приложений bi publisher..сейчас просто именно задача стоит сделать без сторонних пакетов. Значит вы нас где-то обманываете с Escape последователностями. Покажите какой текст на входе? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
17.04.2013, 17:01:22
|
|||
|---|---|---|---|
|
|||
java и xml |
|||
|
#18+
Blazkowicz, да он походу только для символов скобок и т.д. попробуйте напрмер использовать функцию для создания escape последовательности из обычных символов System.out.println(StringEscapeUtils.escapeXml("sdfsd")) не сработает... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
17.04.2013, 17:01:53
|
|||
|---|---|---|---|
|
|||
java и xml |
|||
|
#18+
miklouhaв этом приложении нельзя использовать этот клиент, задача так стоит...с кодировкой все нормально, просто надо обратно преобразовать escape последовательность. И почему решили что JAX-WS клиент вернет что то другое? он вернет тоже самое не в клиенте дело. Даже если нельзя использовать JAX-WS (ну, там, протокол связи не тот, библиотека недоступна, какие-то еще причины), то все равно можно воспользоваться сгенерированными классами и десериализовать пришедший поток в эти классы с использованием JAXB. rt.jar, надеюсь, в этом проекте доступна полностью? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|

start [/forum/topic.php?fid=59&mobile=1&tid=2129519]: |
0ms |
get settings: |
19ms |
get forum list: |
27ms |
check forum access: |
6ms |
check topic access: |
6ms |
track hit: |
52ms |
get topic data: |
20ms |
get forum data: |
4ms |
get page messages: |
93ms |
get tp. blocked users: |
2ms |
| others: | 277ms |
| total: | 506ms |

| 0 / 0 |
