BiTel

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

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




Начать новую тему Ответить на тему  [ Сообщений: 3 ] 
Автор Сообщение
 Заголовок сообщения: Получение ip адреса в AbstractSevice
СообщениеДобавлено: 25 ноя 2015, 18:38 
Не в сети

Зарегистрирован: 25 ноя 2015, 18:31
Сообщения: 3
Карма: 0
Добрый день.

Подскажите пожалуйста как получить ip адрес клиента при обращении к кастомному веб сервису.

Объект MessageContext присутствует в классе JaxWsHandler (который судя по трейсу вызывается до запуска моего сервиса (и как я понимаю стартует мой класс)), но он отсутствует в самом объекте AbstractService.

Спасибо заранее.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Получение ip адреса в AbstractSevice
СообщениеДобавлено: 25 ноя 2015, 19:04 
Не в сети
Разработчик
Аватара пользователя

Зарегистрирован: 19 дек 2006, 21:04
Сообщения: 5970
Карма: 256
Попробуйте указать в вашем веб-сервисе поле
Код:
@Resource
private WebServiceContext wsc;
...
...
...
wsc.getMessageContext();


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Получение ip адреса в AbstractSevice
СообщениеДобавлено: 25 ноя 2015, 19:45 
Не в сети

Зарегистрирован: 25 ноя 2015, 18:31
Сообщения: 3
Карма: 0
К сожалению такое не проходит.

Сервер выбрасывает 500 ошибку.

Вот стек трейс, может он чем то поможет......

Код:
<?xml version="1.0" ?>
<S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/">
    <S:Body>
        <S:Fault xmlns:ns4="http://www.w3.org/2003/05/soap-envelope">
            <faultcode>S:Server</faultcode>
            <faultstring>Name [WebServiceContext] is not bound in this Context. Unable to find [WebServiceContext].</faultstring>
            <detail>
                <ns2:exception xmlns:ns2="http://jax-ws.dev.java.net/" class="javax.naming.NameNotFoundException" note="To disable this feature, set com.sun.xml.ws.fault.SOAPFaultBuilder.disableCaptureStackTrace system property to false">
                    <message>Name [WebServiceContext] is not bound in this Context. Unable to find [WebServiceContext].</message>
                    <ns2:stackTrace>
                        <ns2:frame class="org.apache.naming.NamingContext" file="NamingContext.java" line="819" method="lookup"/>
                        <ns2:frame class="org.apache.naming.NamingContext" file="NamingContext.java" line="167" method="lookup"/>
                        <ns2:frame class="ru.bitel.bgbilling.kernel.container.resource.ResourceManager" file="ResourceManager.java" line="186" method="inject"/>
                        <ns2:frame class="ru.bitel.bgbilling.kernel.container.resource.ResourceManager" file="ResourceManager.java" line="105" method="inject"/>
                        <ns2:frame class="ru.bitel.bgbilling.kernel.container.managed.ManagedBeanInfo" file="ManagedBeanInfo.java" line="83" method="postConstruct"/>
                        <ns2:frame class="ru.bitel.bgbilling.kernel.container.service.server.ServiceInfo" file="ServiceInfo.java" line="154" method="postConstruct"/>
                        <ns2:frame class="ru.bitel.bgbilling.kernel.container.service.server.ServiceInfo" file="ServiceInfo.java" line="97" method="invoke"/>
                        <ns2:frame class="ru.bitel.bgbilling.kernel.container.ws.server.AbstractJaxWsHandler" file="AbstractJaxWsHandler.java" line="195" method="invoke0"/>
                        <ns2:frame class="ru.bitel.bgbilling.kernel.container.ws.server.AbstractJaxWsHandler" file="AbstractJaxWsHandler.java" line="166" method="invoke"/>
                        <ns2:frame class="ru.bitel.bgbilling.kernel.container.ws.server.AbstractJaxWsHandler$ServiceInstanceResolver$1" file="AbstractJaxWsHandler.java" line="335" method="invoke"/>
                        <ns2:frame class="com.sun.xml.ws.server.InvokerTube$2" file="InvokerTube.java" line="150" method="invoke"/>
                        <ns2:frame class="com.sun.xml.ws.server.sei.EndpointMethodHandler" file="EndpointMethodHandler.java" line="261" method="invoke"/>
                        <ns2:frame class="com.sun.xml.ws.server.sei.SEIInvokerTube" file="SEIInvokerTube.java" line="100" method="processRequest"/>
                        <ns2:frame class="com.sun.xml.ws.api.pipe.Fiber" file="Fiber.java" line="641" method="__doRun"/>
                        <ns2:frame class="com.sun.xml.ws.api.pipe.Fiber" file="Fiber.java" line="600" method="_doRun"/>
                        <ns2:frame class="com.sun.xml.ws.api.pipe.Fiber" file="Fiber.java" line="585" method="doRun"/>
                        <ns2:frame class="com.sun.xml.ws.api.pipe.Fiber" file="Fiber.java" line="482" method="runSync"/>
                        <ns2:frame class="com.sun.xml.ws.server.WSEndpointImpl$2" file="WSEndpointImpl.java" line="314" method="process"/>
                        <ns2:frame class="com.sun.xml.ws.transport.http.HttpAdapter$HttpToolkit" file="HttpAdapter.java" line="608" method="handle"/>
                        <ns2:frame class="com.sun.xml.ws.transport.http.HttpAdapter" file="HttpAdapter.java" line="259" method="handle"/>
                        <ns2:frame class="com.sun.xml.ws.transport.http.servlet.ServletAdapter" file="ServletAdapter.java" line="162" method="handle"/>
                        <ns2:frame class="ru.bitel.bgbilling.kernel.container.ws.server.JaxWSAdapter" file="JaxWSAdapter.java" line="288" method="handle"/>
                        <ns2:frame class="ru.bitel.bgbilling.server.api.ApiExecuter" file="ApiExecuter.java" line="48" method="doPost"/>
                        <ns2:frame class="javax.servlet.http.HttpServlet" file="HttpServlet.java" line="646" method="service"/>
                        <ns2:frame class="javax.servlet.http.HttpServlet" file="HttpServlet.java" line="727" method="service"/>
                        <ns2:frame class="org.apache.catalina.core.ApplicationFilterChain" file="ApplicationFilterChain.java" line="303" method="internalDoFilter"/>
                        <ns2:frame class="org.apache.catalina.core.ApplicationFilterChain" file="ApplicationFilterChain.java" line="208" method="doFilter"/>
                        <ns2:frame class="org.apache.catalina.core.StandardWrapperValve" file="StandardWrapperValve.java" line="220" method="invoke"/>
                        <ns2:frame class="org.apache.catalina.core.StandardContextValve" file="StandardContextValve.java" line="122" method="invoke"/>
                        <ns2:frame class="org.apache.catalina.authenticator.AuthenticatorBase" file="AuthenticatorBase.java" line="504" method="invoke"/>
                        <ns2:frame class="org.apache.catalina.valves.AccessLogValve" file="AccessLogValve.java" line="950" method="invoke"/>
                        <ns2:frame class="org.apache.catalina.core.StandardHostValve" file="StandardHostValve.java" line="170" method="invoke"/>
                        <ns2:frame class="org.apache.catalina.valves.ErrorReportValve" file="ErrorReportValve.java" line="103" method="invoke"/>
                        <ns2:frame class="org.apache.catalina.core.StandardEngineValve" file="StandardEngineValve.java" line="116" method="invoke"/>
                        <ns2:frame class="org.apache.catalina.connector.CoyoteAdapter" file="CoyoteAdapter.java" line="421" method="service"/>
                        <ns2:frame class="org.apache.coyote.http11.AbstractHttp11Processor" file="AbstractHttp11Processor.java" line="1074" method="process"/>
                        <ns2:frame class="org.apache.coyote.AbstractProtocol$AbstractConnectionHandler" file="AbstractProtocol.java" line="611" method="process"/>
                        <ns2:frame class="org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor" file="JIoEndpoint.java" line="314" method="run"/>
                        <ns2:frame class="java.util.concurrent.ThreadPoolExecutor" file="ThreadPoolExecutor.java" line="1142" method="runWorker"/>
                        <ns2:frame class="java.util.concurrent.ThreadPoolExecutor$Worker" file="ThreadPoolExecutor.java" line="617" method="run"/>
                        <ns2:frame class="org.apache.tomcat.util.threads.TaskThread$WrappingRunnable" file="TaskThread.java" line="61" method="run"/>
                        <ns2:frame class="java.lang.Thread" file="Thread.java" line="745" method="run"/>
                    </ns2:stackTrace>
                </ns2:exception>
            </detail>
        </S:Fault>
    </S:Body>
</S:Envelope>


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

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


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

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


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

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