BiTel

Форум BiTel
bgbilling.ru     docs.bitel.ru     wiki.bitel.ru     dbinfo.bitel.ru     bgcrm.ru     billing.bitel.ru     bitel.ru    
Текущее время: 30 июн 2025, 23:44

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




Начать новую тему Ответить на тему  [ Сообщений: 4 ] 
Автор Сообщение
 Заголовок сообщения: DeviceInterfaceService
СообщениеДобавлено: 28 окт 2015, 14:09 
Не в сети

Зарегистрирован: 22 окт 2015, 10:00
Сообщения: 5
Карма: 0
При написание dynservice-а возникла следующая проблема. После переопределения стандартного сервиса DeviceInterfaceServiceImpl, биллинг начинает выдавать exeption при вызове метода devicePortList. при этом данный метод не переопределялся. В настройках добавил следующую строку
Код:
dynservice:ru.bitel.oss.systems.inventory.resource.DeviceInterfaceService=ru.dsi.oss.systems.inventory.resource.common.DeviceInterfaceServiceImpl

Используемая версия билинга 5.2 jdk 1.6 . Код обертки
Код:
import javax.jws.WebService;
import org.apache.log4j.Logger;
import ru.bitel.bgbilling.common.BGException;
import ru.bitel.oss.systems.inventory.resource.common.DeviceInterfaceService;
import ru.bitel.oss.systems.inventory.resource.common.bean.DeviceInterface;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.List;
/**
 * Переопределение класса обработчика запросов на обновление/добавление порта
 */
@WebService(endpointInterface = "ru.bitel.oss.systems.inventory.resource.common.DeviceInterfaceService")
public class DeviceInterfaceServiceImpl
        extends ru.bitel.oss.systems.inventory.resource.server.DeviceInterfaceServiceImpl
        implements DeviceInterfaceService {
    private static final Logger logger = Logger.getLogger(DeviceInterfaceServiceImpl.class);
    @Override
    public void devicePortUpdate(DeviceInterface port) throws BGException {
        logger.debug("devicePortUpdate MID: " + this.moduleId);
        try {
            /**
             * Проверить наличие интерфейса с таким title.
             * Если интерфейс найден, запретить его создавать.
             */
            Statement pst = this.getSlaveConnection().createStatement();
            String sql = "SELECT 1 FROM inv_device_port_" + this.moduleId + " WHERE title='" + port.getTitle() + "'";
            logger.debug("devicePortUpdate SQL: " + sql);
            ResultSet result = pst.executeQuery(sql);
            if (result.first()) {
                throw new BGException("Вы не можете зарезервировать интерфейс " + port.getSubscriberTitle() + ", так как такой интерфейс уже существует.");
            }
            super.devicePortUpdate(port);
        } catch (SQLException e) {
            logger.error(e.getMessage());
            throw new BGException(e);
        }
    }
}

Ошибка следующего содержания "javax.xml.ws.soap.SOAPFaultExeption:java.lang.NullPointerExeption"
Логи
Код:
java.lang.NullPointerException
        at ru.bitel.oss.systems.inventory.resource.server.DeviceInterfaceServiceImpl.devicePortList(DeviceInterfaceServiceImpl.java:50)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        at ru.bitel.bgbilling.kernel.container.service.server.ServiceInfo.invoke(ServiceInfo.java:102)
        at ru.bitel.bgbilling.kernel.container.ws.server.AbstractJaxWsHandler.invoke(AbstractJaxWsHandler.java:192)
        at ru.bitel.bgbilling.kernel.container.ws.server.JaxWsHandler.access$1(JaxWsHandler.java:1)
        at ru.bitel.bgbilling.kernel.container.ws.server.JaxWsHandler$2.run(JaxWsHandler.java:312)
        at java.security.AccessController.doPrivileged(Native Method)
        at javax.security.auth.Subject.doAs(Subject.java:396)
        at ru.bitel.bgbilling.kernel.container.ws.server.JaxWsHandler.invoke(JaxWsHandler.java:306)
        at ru.bitel.bgbilling.kernel.container.ws.server.AbstractJaxWsHandler$ServiceInstanceResolver$1.invoke(AbstractJaxWsHandler.java:304)
        at com.sun.xml.ws.server.InvokerTube$2.invoke(InvokerTube.java:150)
        at com.sun.xml.ws.server.sei.EndpointMethodHandler.invoke(EndpointMethodHandler.java:261)
        at com.sun.xml.ws.server.sei.SEIInvokerTube.processRequest(SEIInvokerTube.java:100)
        at com.sun.xml.ws.api.pipe.Fiber.__doRun(Fiber.java:641)
        at com.sun.xml.ws.api.pipe.Fiber._doRun(Fiber.java:600)
        at com.sun.xml.ws.api.pipe.Fiber.doRun(Fiber.java:585)
        at com.sun.xml.ws.api.pipe.Fiber.runSync(Fiber.java:482)
        at com.sun.xml.ws.server.WSEndpointImpl$2.process(WSEndpointImpl.java:314)
        at com.sun.xml.ws.transport.http.HttpAdapter$HttpToolkit.handle(HttpAdapter.java:608)
        at com.sun.xml.ws.transport.http.HttpAdapter.handle(HttpAdapter.java:259)
        at com.sun.xml.ws.transport.http.servlet.ServletAdapter.handle(ServletAdapter.java:162)
        at ru.bitel.common.server.JaxWSAdapter.handle(JaxWSAdapter.java:389)
        at bitel.billing.server.Executer.doPost(Unknown Source)
        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:304)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
        at bitel.billing.server.filters.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:48)
        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:240)
        at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:164)
        at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:462)
        at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:563)
        at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:164)
        at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:100)
        at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)
        at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:403)
        at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:301)
        at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:162)
        at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:309)
        at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
        at java.lang.Thread.run(Thread.java:662)


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: DeviceInterfaceService
СообщениеДобавлено: 30 окт 2015, 08:49 
Не в сети
Клиент
Аватара пользователя

Зарегистрирован: 20 апр 2009, 12:03
Сообщения: 3092
Откуда: Иркутск
Карма: 338
Апну темку, это мы :)


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: DeviceInterfaceService
СообщениеДобавлено: 30 окт 2015, 15:54 
Не в сети
Клиент
Аватара пользователя

Зарегистрирован: 20 апр 2009, 12:03
Сообщения: 3092
Откуда: Иркутск
Карма: 338
Похоже не был переопределён метод init


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: DeviceInterfaceService
СообщениеДобавлено: 02 ноя 2015, 08:00 
Не в сети

Зарегистрирован: 22 окт 2015, 10:00
Сообщения: 5
Карма: 0
Да, действительно, требовалось переопределить init
Код:
@Override
    @PostConstruct
    protected void init() {
        super.init();
    }


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

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


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

Сейчас этот форум просматривают: Google [Bot] и гости: 1


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

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