forum.bitel.ru
http://forum.bitel.ru/

[3.0] NPE при поиске договоров BG
http://forum.bitel.ru/viewtopic.php?f=51&t=8967
Страница 1 из 1

Автор:  Phricker [ 18 фев 2014, 15:46 ]
Заголовок сообщения:  [3.0] NPE при поиске договоров BG

Собственно после
Администратор писал(а):
Выложено обновление BGCRM 3.0. Практически весь функционал ядра по управлению договором реализован

решил поставить BGCRM.
Скачал, установил. Поставил стандартный конфиг из доки. Добавил стандартный конфиг для плагина BGBilling.
Ловлю NPE.

Заменил конфиг плагина BGBilling на тот, что на demo.bgcrm.ru, и добавил в основную конфигурацию include.2=1
Все равно NPE
Код:
02-18/13:42:33 ERROR [http-bio-9088-exec-2] ContractAction - ru.bgcrm.model.BGException: java.lang.NullPointerException
ru.bgcrm.model.BGException: ru.bgcrm.model.BGException: java.lang.NullPointerException
        at ru.bgcrm.plugin.bgbilling.TransferData.postData(TransferData.java:121)
        at ru.bgcrm.plugin.bgbilling.proto.dao.ContractDAO.searchContractByTitleComment(ContractDAO.java:130)
        at ru.bgcrm.plugin.bgbilling.proto.struts.action.ContractAction.searchContract(ContractAction.java:121)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:606)
        at ru.bgcrm.struts.action.BaseAction$Invoker.invoke(BaseAction.java:125)
        at ru.bgcrm.struts.action.BaseAction.dispatchMethod(BaseAction.java:266)
        at org.apache.struts.actions.DispatchAction.execute(DispatchAction.java:170)
        at org.apache.struts.chain.commands.servlet.ExecuteAction.execute(ExecuteAction.java:58)
        at org.apache.struts.chain.commands.AbstractExecuteAction.execute(AbstractExecuteAction.java:67)
        at org.apache.struts.chain.commands.ActionCommandBase.execute(ActionCommandBase.java:51)
        at org.apache.commons.chain.impl.ChainBase.execute(ChainBase.java:191)
        at org.apache.commons.chain.generic.LookupCommand.execute(LookupCommand.java:305)
        at org.apache.commons.chain.impl.ChainBase.execute(ChainBase.java:191)
        at org.apache.struts.chain.ComposableRequestProcessor.process(ComposableRequestProcessor.java:283)
        at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1913)
        at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:462)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:641)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
        at ru.bgcrm.servlet.filter.SetRequestParamsFilter.doFilter(SetRequestParamsFilter.java:42)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
        at ru.bgcrm.servlet.filter.AuthFilter.doFilter(AuthFilter.java:170)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
        at ru.bgcrm.servlet.filter.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:38)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
        at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:224)
        at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:169)
        at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472)
        at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:928)
        at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:168)
        at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:98)
        at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)
        at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:407)
        at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:987)
        at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:539)
        at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:300)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
        at java.lang.Thread.run(Thread.java:744)
Caused by: ru.bgcrm.model.BGException: java.lang.NullPointerException
        at ru.bgcrm.plugin.bgbilling.TransferData.postData(TransferData.java:121)
        at ru.bgcrm.plugin.bgbilling.proto.dao.PluginDAO.getInstalledPlugins(PluginDAO.java:40)
        at ru.bgcrm.plugin.bgbilling.TransferData.postData(TransferData.java:110)
        ... 45 more
Caused by: java.lang.NullPointerException
        at java.lang.String.<init>(String.java:481)
        at ru.bgcrm.plugin.bgbilling.TransferData.postData(TransferData.java:113)
        ... 47 more

Автор:  Phricker [ 18 фев 2014, 15:46 ]
Заголовок сообщения:  Re: [3.0] NPE при поиске договоров BG

MAIN конфиг
Код:
# выводится в заголовке окна браузера при работе с BGCRM
title=BGCRM TEST
#
# формат адресного параметра, доступны переменные: index, сity, area, quarter, street, house, flat, room, pod, floor, comment
address.format=(${city})(, ${street})(, д. ${house})(, кв. ${flat})( ${room})
#
# шаблон описания контрагента для поиска
# в нём можно указать параметры контрагента подстановками вида (param:<code>); например: (${param:73} г.р.)(, ${param:12})
#customer.reference.pattern=
#
# минимальная длина подстроки в поиске контрагента
searchCustomerTitleMinSubstringLength=2
#
# форматирование параметра типа "phone", общий формат одного номера
param.phone.format=(${number})( [${comment}]);
# форматирование поля ${number} внутри каждого номера, в зависимости от формата
param.phone.format.number=+X XXX XXX-XX-XX
param.phone.format.number.f10=+X XXX-XXX-XX-XX
param.phone.format.number.f13=+X (XXX) XXX-XX-XX
param.phone.format.number.f14=+X (XXXX) XX-XX-XX
param.phone.format.number.f15=+X (XXXXX) X-XX-XX
# количество полей в параметре типа "телефон"
param.phone.item.count=4
# префикс по-умолчанию для параметра типа "телефон"
param.phone.default.prefix=3472
# ускорение ввода номеров - подстановка 7 в код страны
param.phone.part.1.default=7
# переход в третье поле при введение во втором кода российского мобильного, без удаление последнего символа
param.phone.part.2.jumpRegexp.1.regexp=^9\d{2}
param.phone.part.2.jumpRegexp.1.moveLastChars=0
# переход в третье поле с переносом последнего введённого во втором поле при наборе во втором поле 3472
param.phone.part.2.jumpRegexp.2.regexp=^3472
param.phone.part.2.jumpRegexp.2.moveLastChars=1
#
# при пробросе запросов на сервер с помощью Proxy сервера - имя HTTP заголовка, в котором передаётся адрес клиента
#header.name.remote.addr=X-Real-IP
#
# роли, в которых контрагент может быть привязан к процессу, роли должны начинаться с customer, например: customer:Контрагент;customerSogl:Согласователь
processCustomerLinkRoles=customer:Контрагент
#
# проверка прав доступа пользователей, 1 - включить
user.permission.check=0
#
# допустимые символы, диапазон длин пароля пользователей
user.password.chars=1234567890qwertyupasdfghjkzxcvbnmiloQWERTYUIOPASDFGHJKLZXCVBNM
user.password.length.min=5
user.password.length.max=10
#
# роли групп в процессах, добавляются через точку с запятой в виде <id>:<title>
processGroupRoles=0:Выполнение
#
# параметры EMail
mail.smtp.host=
mail.smtp.user=
mail.smtp.pswd=
#
# динамический код
dynamic.src.dir=dyn
dynamic.src.encoding=UTF-8
# перечень через запятую динамических или обычных классов, реализующих интерфейс java.lang.Runnable, запускаемых при старте сервера
#runOnStart=
# перечень через запятую динамических или обычных классов, объекты которых создаются при старте сервера, при перекомпиляции динамических классов создание объектов производится повторно
#createOnStart=
#
# планировщик, запуск - 1 
scheduler.start=1
#Включить конфигурации
# Плагин BGBilling
include.2=1

Автор:  Phricker [ 18 фев 2014, 15:47 ]
Заголовок сообщения:  Re: [3.0] NPE при поиске договоров BG

Плагин BGBilling
Код:
# Биллинги
bgbilling.1.id=bg
bgbilling.1.title=TEST
bgbilling.1.url=http://10.0.6.152:8080/executer
bgbilling.1.version=6.1
bgbilling.1.customerIdParam=8
#  форма собств., наименование
bgbilling.1.copyParamMapping=3[3,4,5]:9[5,6,7];7:1
# дата рождения, серия и номер паспорта
bgbilling.1.copyParamMapping+=;1:10;2:11
# должность руководителя, адрес юридический, ИНН
bgbilling.1.copyParamMapping+=;18[1,2]:3[1,2];4:13;6:14
#
# шаблоны договоров
bgbilling:contractType.1.title=Интернет физ. лицо
bgbilling:contractType.1.billing=bg
bgbilling:contractType.1.patternId=1
bgbilling:contractType.2.title=Интернет юр. лицо
bgbilling:contractType.2.billing=bg
bgbilling:contractType.2.patternId=2
#
# импорт контрагентов
#
# группа параметров контрагента - определение по имени договора
bgbilling:creator.parameterGroupRule.1.contractTitlePattern=^U.+$
bgbilling:creator.parameterGroupRule.1.paramGroupId=1
bgbilling:creator.parameterGroupRule.2.paramGroupId=2
#
# загрузчик контрагентов
# ИНН
bgbilling:creator.confirmParameters=6
# поиск по ИНН
bgbilling:creator.searchParameters=6
# расстояние по Левинштейну
bgbilling:creator.titleDistance=2
# по ИНН объединяем без различия наименований
bgbilling:creator.titleDistance.6=-1
#
# форма собственности, наименование
bgbilling:creator.importParameters=3,7
# должность руководителя, адрес юридический, ИНН
bgbilling:creator.importParameters+=,18, 4, 6
# дата рождения, серия и номер паспорта, адрес прописки
bgbilling:creator.importParameters+=,1, 2, 5
# адрес услуги
bgbilling:creator.importParameters+=,19
#
bgbilling:creator.server.1.billingId=bg
bgbilling:creator.server.1.user=bgcrm
bgbilling:creator.server.1.pswd=bgcrm
bgbilling:creator.server.1.paramMapping=3[3,4,5]:9[5,6,7];7:1
bgbilling:creator.server.1.paramMapping+=;18[1,2]:3[1,2];4:13;6:14
bgbilling:creator.server.1.paramMapping+=;1:10;2:11
bgbilling:creator.server.1.paramMapping+=;19:12
bgbilling:creator.server.1.pageSize=300
bgbilling:creator.server.1.minCustomerTitleLength=1
#

Автор:  Phricker [ 18 фев 2014, 15:47 ]
Заголовок сообщения:  Re: [3.0] NPE при поиске договоров BG

NPE в BGCRM выглядит следующим образом
Изображение

Автор:  Phricker [ 18 фев 2014, 15:48 ]
Заголовок сообщения:  Re: [3.0] NPE при поиске договоров BG

wireshark говорит, что 404 отдается.

Автор:  Phricker [ 18 фев 2014, 15:51 ]
Заголовок сообщения:  Re: [3.0] NPE при поиске договоров BG

Пробовал так же
Код:
bgbilling.1.url=http://127.0.0.1:8080/executer

Код:
bgbilling.1.url=http://127.0.0.1:8080/webexecuter


Если указывать без порта
Изображение

Автор:  Phricker [ 18 фев 2014, 15:52 ]
Заголовок сообщения:  Re: [3.0] NPE при поиске договоров BG

Возможно важно.
Версия биллинга 6.1. Это тестовый сервер.

Автор:  Phricker [ 18 фев 2014, 15:55 ]
Заголовок сообщения:  Re: [3.0] NPE при поиске договоров BG

selinux выключен, iptables так же

Автор:  Phricker [ 18 фев 2014, 18:06 ]
Заголовок сообщения:  Re: [3.0] NPE при поиске договоров BG

Решено.
Что-то затупил и прописал без сервлета.
Поэтому и не работало.
Хотя в доке есть это
Цитата:
<url> - URL для подключения к сервлету executer биллинга;


Ну может в туду занесут чтобы не NPE выдавало )

Страница 1 из 1 Часовой пояс: UTC + 5 часов [ Летнее время ]
Powered by phpBB® Forum Software © phpBB Group
http://www.phpbb.com/