BiTel

Форум BiTel
bgbilling.ru     docs.bitel.ru     wiki.bitel.ru     dbinfo.bitel.ru     bgcrm.ru     billing.bitel.ru     bitel.ru    
Текущее время: 27 дек 2024, 23:22

Часовой пояс: UTC + 5 часов [ Летнее время ]




Начать новую тему Ответить на тему  [ Сообщений: 2 ] 
Автор Сообщение
 Заголовок сообщения: OSMP и кодировка запроса
СообщениеДобавлено: 05 мар 2018, 09:59 
Не в сети
Клиент
Аватара пользователя

Зарегистрирован: 20 апр 2009, 12:03
Сообщения: 3092
Откуда: Иркутск
Карма: 338
Работаем со сбером по osmp.
Возникла необходимость принимать платежи на договора с кириллицей в номере.
Не получается.
Сначала была ошибка SQL: Illegal mix of collations.
Конвертнул contract в utf8 - ошибка исчезла - сейчас просто пишет, что договор не найден:

Код:
03-05/11:12:40 DEBUG [http-bio-0.0.0.0-8443-exec-9] MPSExecutor - request.getPathInfo() = /20/12; mpsId = 12; mid = 20; params = [, 20, 12]
03-05/11:12:40 DEBUG [http-bio-0.0.0.0-8443-exec-9] MPSExecutor - MPS (getLoginAndPasswordFromHeaderAuthorization): authorization=************; unencoded=sbrf:*******; encoding=utf-8
03-05/11:12:40 DEBUG [http-bio-0.0.0.0-8443-exec-9] MPSExecutor - MPS (getLoginAndPasswordFromHeaderAuthorization): userName=*****; userPswd=******
03-05/11:12:40 DEBUG [http-bio-0.0.0.0-8443-exec-9] MPSTransactionManager - userName = ****; userPswd=*******; mpsId=12
03-05/11:12:40 DEBUG [http-bio-0.0.0.0-8443-exec-9] MPSTransactionManager - conf.mpsSystems.length=12
03-05/11:12:40 DEBUG [http-bio-0.0.0.0-8443-exec-9] MPSTransactionManager - system=[protocol=osmp; protocol.isAuthBySign()=false; extNoBaseAuth=false; login=****; password=*******]
03-05/11:12:40 DEBUG [http-bio-0.0.0.0-8443-exec-9] MPSTransactionManager - Select MPSTransactionManager=ru.bitel.bgbilling.modules.mps.server.bean.OSMPTransactionManager@667a5a24
03-05/11:12:40 DEBUG [http-bio-0.0.0.0-8443-exec-9] MPSTransactionManager - system.certificateNeed = false
03-05/11:12:40 DEBUG [http-bio-0.0.0.0-8443-exec-9] Parameters - Set encoding to ISO-8859-1
03-05/11:12:40 DEBUG [http-bio-0.0.0.0-8443-exec-9] Parameters - Set query string encoding to ISO-8859-1
03-05/11:12:40 DEBUG [http-bio-0.0.0.0-8443-exec-9] Parameters - Decoding query null ISO-8859-1
03-05/11:12:40 DEBUG [http-bio-0.0.0.0-8443-exec-9] Parameters - Start processing with input [command=check&txn_id=1&account=%D0%91%2F12345&sum=10]
03-05/11:12:40 DEBUG [http-bio-0.0.0.0-8443-exec-9] WebappClassLoader - loadClass(org.apache.xml.serializer.ToXMLStream, false)
03-05/11:12:40 DEBUG [http-bio-0.0.0.0-8443-exec-9] WebappClassLoader -   Delegating to parent classloader1 ru.bitel.common.bootstrap.BootstrapClassLoader@2ff4f00f
03-05/11:12:40 DEBUG [http-bio-0.0.0.0-8443-exec-9] WebappClassLoader -   Loading class from parent
03-05/11:12:40 DEBUG [http-bio-0.0.0.0-8443-exec-9] MPSExecutor - Filter (mpsexecuterSetCharacterEncoding) = null
FilterCharacterEncoding=null
System: Сбербанк Online (ДСИ)
Request:
/20/12
command=check&txn_id=1&account=Ð<91>/12345&sum=10&
Response:
<?xml version="1.0" encoding="UTF-8"?><response><result>5</result><osmp_txn_id>1</osmp_txn_id><comment>Договор не найден [Ð&#145;/12345]</comment></response>


Смущают вот эти строки:
Код:
03-05/11:12:40 DEBUG [http-bio-0.0.0.0-8443-exec-9] Parameters - Set encoding to ISO-8859-1
03-05/11:12:40 DEBUG [http-bio-0.0.0.0-8443-exec-9] Parameters - Set query string encoding to ISO-8859-1
03-05/11:12:40 DEBUG [http-bio-0.0.0.0-8443-exec-9] Parameters - Decoding query null ISO-8859-1


А также любопытно вот это:
Код:
03-05/11:12:40 DEBUG [http-bio-0.0.0.0-8443-exec-9] MPSExecutor - Filter (mpsexecuterSetCharacterEncoding) = null
FilterCharacterEncoding=null


Вопрос: может быть в web.xml нужно прописать фильтр для mpsexecuter аналогично как сделано из коробки для executer?
Код:
   <filter>
      <filter-name>SetCharacterEncodingFilterUTF8</filter-name>
      <filter-class>ru.bitel.common.server.filters.SetCharacterEncodingFilter</filter-class>
      <init-param>
         <param-name>encoding</param-name>
         <param-value>UTF-8</param-value>
      </init-param>
   </filter>


В доках нет ничего про это.
Есть параметр конфига ПС request.encoding, но он для osmp не применяется, и вообще не про то немного.

Сервер: вер. 7.0.1263 / 13.09.2017 20:33:05
os: Linux; java: Java HotSpot(TM) 64-Bit Server VM, v.1.8.0_144

mps: вер. 7.0.221 / 11.09.2017 16:42:32


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: OSMP и кодировка запроса
СообщениеДобавлено: 05 мар 2018, 12:02 
Не в сети
Клиент
Аватара пользователя

Зарегистрирован: 20 апр 2009, 12:03
Сообщения: 3092
Откуда: Иркутск
Карма: 338
Поставил request.encoding=utf8 - заработало.


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 2 ] 

Часовой пояс: UTC + 5 часов [ Летнее время ]


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
POWERED_BY
Русская поддержка phpBB
[ Time : 0.072s | 22 Queries | GZIP : On ]