forum.bitel.ru http://forum.bitel.ru/ |
|
[6.1] WebService InetServService inetServTree http://forum.bitel.ru/viewtopic.php?f=44&t=9368 |
Страница 1 из 1 |
Автор: | Bazhutyan [ 24 июн 2014, 06:32 ] |
Заголовок сообщения: | [6.1] WebService InetServService inetServTree |
Пытаюсь обернуть InetServService, а именно надо изменить inetServTree: dynservice:ru.bitel.bgbilling.modules.inet.api.InetServService=ru.iks.dyn.myInetServServiceImpl Код: @WebService(endpointInterface = "ru.bitel.bgbilling.modules.inet.api.common.service.InetServService") public class myInetServServiceImpl extends ru.bitel.bgbilling.modules.inet.api.server.service.InetServServiceImpl implements InetServService { @Override public InetServ inetServTree(int contractId) throws BGException { return super.inetServTree(contractId); } } Получаю ошибку в клиенте: Код: javax.xml.ws.soap.SOAPFaultException: java.lang.NullPointerException at com.sun.xml.ws.fault.SOAP11Fault.getProtocolException(SOAP11Fault.java:193) at com.sun.xml.ws.fault.SOAPFaultBuilder.createException(SOAPFaultBuilder.java:134) at com.sun.xml.ws.client.sei.SyncMethodHandler.invoke(SyncMethodHandler.java:123) at com.sun.xml.ws.client.sei.SyncMethodHandler.invoke(SyncMethodHandler.java:93) at com.sun.xml.ws.client.sei.SEIStub.invoke(SEIStub.java:144) at com.sun.proxy.$Proxy36.inetServTree(Unknown Source) at ru.bitel.bgbilling.modules.inet.api.client.contract.InetServPanel$2.actionPerformedImpl(InetServPanel.java:227) at ru.bitel.common.client.AbstractBGUPanel.actionPerformed(AbstractBGUPanel.java:237) at ru.bitel.common.client.AbstractBGUPanel$DefaultAction.actionPerformed(AbstractBGUPanel.java:91) at ru.bitel.bgbilling.modules.inet.api.client.ServicePropertiesPanel.fireAction(ServicePropertiesPanel.java:76) at ru.bitel.bgbilling.modules.inet.api.client.ServicePropertiesPanel.setData(ServicePropertiesPanel.java:36) at bitel.billing.module.contract.ContractSubPanel_Module.setData(ContractSubPanel_Module.java:145) at bitel.billing.module.contract.ContractPanel_Parameters$5.run(ContractPanel_Parameters.java:628) at java.awt.event.InvocationEvent.dispatch(Unknown Source) at java.awt.EventQueue.dispatchEventImpl(Unknown Source) at java.awt.EventQueue.access$200(Unknown Source) at java.awt.EventQueue$3.run(Unknown Source) at java.awt.EventQueue$3.run(Unknown Source) at java.security.AccessController.doPrivileged(Native Method) at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source) at java.awt.EventQueue.dispatchEvent(Unknown Source) at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source) at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source) at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source) at java.awt.EventDispatchThread.pumpEvents(Unknown Source) at java.awt.EventDispatchThread.pumpEvents(Unknown Source) at java.awt.EventDispatchThread.run(Unknown Source) Caused by: java.lang.NullPointerException at ru.bitel.bgbilling.modules.inet.api.server.service.InetServServiceImpl.inetServTree(InetServServiceImpl.java:177) at ru.iks.dyn.myInetServServiceImpl.inetServTree(myInetServServiceImpl.java:50) 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.bitel.bgbilling.kernel.container.service.server.ServiceInfo.invoke(ServiceInfo.java:101) at ru.bitel.bgbilling.kernel.container.ws.server.AbstractJaxWsHandler.invoke(AbstractJaxWsHandler.java:244) 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:336) at java.security.AccessController.doPrivileged(Native Method) at javax.security.auth.Subject.doAs(Subject.java:415) at ru.bitel.bgbilling.kernel.container.ws.server.JaxWsHandler.invoke(JaxWsHandler.java:330) at ru.bitel.bgbilling.kernel.container.ws.server.AbstractJaxWsHandler$ServiceInstanceResolver$1.invoke(AbstractJaxWsHandler.java:356) 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:388) at bitel.billing.server.Executer.doPost(Unknown Source) at javax.servlet.http.HttpServlet.service(HttpServlet.java:647) at javax.servlet.http.HttpServlet.service(HttpServlet.java:728) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:222) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:123) at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472) at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:936) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:171) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:99) 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:1004) at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:589) at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:312) 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:745) Научите, как правильно сделать? |
Автор: | Cromeshnic [ 24 июн 2014, 07:29 ] |
Заголовок сообщения: | Re: [6.1] WebService InetServService inetServTree |
Интересно, я аж загуглил. Цитата: public Method[] getDeclaredMethods() throws SecurityException Returns an array of Method objects reflecting all the methods declared by the class or interface represented by this Class object. This includes public, protected, default (package) access, and private methods, but excludes inherited methods. Т.е. при инициализации сервиса не был вызван метод init() родительского класса, т.к. он ищет его только у конечного класса. |
Автор: | Cromeshnic [ 24 июн 2014, 07:30 ] |
Заголовок сообщения: | Re: [6.1] WebService InetServService inetServTree |
Короче, добавьте в ваш класс такой метод: Код: @PostConstruct
void init() throws BGException { super.init(); } |
Автор: | Bazhutyan [ 24 июн 2014, 07:33 ] |
Заголовок сообщения: | Re: [6.1] WebService InetServService inetServTree |
Насколько я смог разобраться, там проблема в том, что в InetServServiceImpl не инициализируются куча объектов, которые в init(). А init() самому вызывать не получается, т.к. он private. И еще там какой-то @PostConstruct, который я вообще не знаю что это. |
Автор: | Bazhutyan [ 24 июн 2014, 07:34 ] |
Заголовок сообщения: | Re: [6.1] WebService InetServService inetServTree |
Пока писал ответ, вы уже успели свой написать. Ну собственно как я и написал, private: init() is not public in ru.bitel.bgbilling.modules.inet.api.server.service.InetServServiceImpl; cannot be accessed from outside package /usr/local/bg/BGBillingServer/dyn/ru/iks/dyn/myInetServServiceImpl.java |
Автор: | Cromeshnic [ 24 июн 2014, 07:35 ] |
Заголовок сообщения: | Re: [6.1] WebService InetServService inetServTree |
щиит, ну тогда похоже только копипастить их метод ![]() |
Автор: | Cromeshnic [ 24 июн 2014, 07:36 ] |
Заголовок сообщения: | Re: [6.1] WebService InetServService inetServTree |
Или, как вариант, переместить свой класс в тот же package, чтобы родительский init стал доступен: ru.bitel.bgbilling.modules.inet.api.server.service.myInetServServiceImpl |
Автор: | Bazhutyan [ 24 июн 2014, 07:40 ] |
Заголовок сообщения: | Re: [6.1] WebService InetServService inetServTree |
Уважаемые разработчики, а нельзя сделать init public'ом? |
Автор: | Cromeshnic [ 24 июн 2014, 07:45 ] |
Заголовок сообщения: | Re: [6.1] WebService InetServService inetServTree |
Достаточно protected, на самом деле |
Автор: | stark [ 24 июн 2014, 12:06 ] |
Заголовок сообщения: | Re: [6.1] WebService InetServService inetServTree |
Исправлено, в следующем обновлении будет. |
Автор: | Bazhutyan [ 25 июн 2014, 06:56 ] |
Заголовок сообщения: | Re: [6.1] WebService InetServService inetServTree |
Спасибо! Работает. А нельзя-ли еще до getTitlePattern доступ дать? P.S. И нельзя-ли вообще отказаться от private в пользу protected? |
Автор: | Bazhutyan [ 25 июн 2014, 09:42 ] |
Заголовок сообщения: | Re: [6.1] WebService InetServService inetServTree |
getTitlePattern меня не спасёт, так что можете ничего не менять. Хотел в клиенте выводить закрытие на текущий момент сервисы серым цветом, но это можно только на половину, т.е. можно покрасить только поля *title*, остальное всё-равно будет как обычно. |
Автор: | nikav80 [ 10 май 2016, 17:12 ] |
Заголовок сообщения: | Re: [6.1] WebService InetServService inetServTree |
Уважаемые разработчики! А можно тоже самое сделать с ru.bitel.bgbilling.kernel.tariff.option.server.service.TariffOptionServiceImpl? |
Автор: | nikav80 [ 11 май 2016, 12:03 ] |
Заголовок сообщения: | Re: [6.1] WebService InetServService inetServTree |
Версия 6.2 |
Автор: | nikav80 [ 13 май 2016, 17:18 ] |
Заголовок сообщения: | Re: [6.1] WebService InetServService inetServTree |
В 7.0 тоже самое! Код: @PostConstruct void init() throws BGException { Сделайте Код: @PostConstruct protected void init() throws BGException { Версия 6.2 и 7.0 - Пожалуйста! |
Автор: | dmitry_P [ 16 май 2016, 15:27 ] |
Заголовок сообщения: | Re: [6.1] WebService InetServService inetServTree |
Ну тогда уж и 5.2 до кучи |
Автор: | nikav80 [ 17 май 2016, 19:52 ] |
Заголовок сообщения: | Re: [6.1] WebService InetServService inetServTree |
Разработчики, ответьте пожалуйста! |
Автор: | stark [ 24 май 2016, 14:45 ] |
Заголовок сообщения: | Re: [6.1] WebService InetServService inetServTree |
nikav80 писал(а): Уважаемые разработчики! А можно тоже самое сделать с ru.bitel.bgbilling.kernel.tariff.option.server.service.TariffOptionServiceImpl? Исправлено. Будет в следующем обновлении. |
Автор: | nikav80 [ 24 май 2016, 14:54 ] |
Заголовок сообщения: | Re: [6.1] WebService InetServService inetServTree |
Спасибо! ![]() |
Страница 1 из 1 | Часовой пояс: UTC + 5 часов [ Летнее время ] |
Powered by phpBB® Forum Software © phpBB Group http://www.phpbb.com/ |