Hybris бросает исключение во время геолокации - PullRequest
0 голосов
/ 31 октября 2018

У меня проблемы с использованием точек обслуживания в Hybris 6.5 Когда я запускаю cronjob или пытаюсь определить местоположение POS вручную, я получаю следующую ошибку:

ERROR [Geolocalizar Centros de Servicio::de.hybris.platform.servicelayer.internal.jalo.ServicelayerJob] (Geolocalizar Centros de Servicio) [GeocodingJob] Failed to Geocode POS (8796551972856) CelayaPOS Error: null Address: Carr. Ind Celaya-Villagrán km 3.57, 38158, Celaya, MX

Я отладил код, и ошибка сгенерирована следующим образом:

final PointOfServiceModel pos = context.getData();
    final DistanceUnawareLocation location = new DistanceUnawareLocation(pos);

    try
    {
        final GPS e1 = this.geoServiceWrapper.geocodeAddress(location);//Throws Error

Ниже приведена ошибка трассировки стека при нажатии значка POS геолокации:

 [exec] de.hybris.platform.storelocator.exception.GeoServiceWrapperException
 [exec]     at de.hybris.platform.storelocator.impl.GoogleMapTools.geocodeAddress(GoogleMapTools.java:206)
 [exec]     at de.hybris.platform.storelocator.impl.GoogleMapsServiceWrapper.geocodeAddress(GoogleMapsServiceWrapper.java:56)
 [exec]     at com.mabe.core.pos.backoffice.PointOfServiceGeolocationAction.perform(PointOfServiceGeolocationAction.java:62)
 [exec]     at com.hybris.cockpitng.actions.impl.DefaultActionRenderer.perform(DefaultActionRenderer.java:241)
 [exec]     at com.hybris.cockpitng.actions.impl.DefaultActionRenderer.lambda$createEventListener$2(DefaultActionRenderer.java:450)
 [exec]     at org.zkoss.zk.ui.AbstractComponent.onEvent(AbstractComponent.java:3163)
 [exec]     at org.zkoss.zk.ui.AbstractComponent.service(AbstractComponent.java:3133)
 [exec]     at org.zkoss.zk.ui.AbstractComponent.service(AbstractComponent.java:3075)
 [exec]     at org.zkoss.zk.ui.impl.EventProcessor.process(EventProcessor.java:138)
 [exec]     at org.zkoss.zk.ui.impl.UiEngineImpl.processEvent(UiEngineImpl.java:1853)
 [exec]     at org.zkoss.zk.ui.impl.UiEngineImpl.process(UiEngineImpl.java:1625)
 [exec]     at org.zkoss.zk.ui.impl.UiEngineImpl.execUpdate(UiEngineImpl.java:1328)
 [exec]     at org.zkoss.zk.au.http.DHtmlUpdateServlet.process(DHtmlUpdateServlet.java:606)
 [exec]     at org.zkoss.zk.au.http.DHtmlUpdateServlet.doGet(DHtmlUpdateServlet.java:482)
 [exec]     at org.zkoss.zk.au.http.DHtmlUpdateServlet.doPost(DHtmlUpdateServlet.java:490)
 [exec]     at javax.servlet.http.HttpServlet.service(HttpServlet.java:650)
 [exec]     at javax.servlet.http.HttpServlet.service(HttpServlet.java:731)
 [exec]     at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:303)
 [exec]     at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
 [exec]     at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
 [exec]     at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
 [exec]     at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
 [exec]     at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:208)
 [exec]     at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:177)
 [exec]     at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:346)
 [exec]     at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:262)
 [exec]     at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
 [exec]     at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
 [exec]     at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:99)
 [exec]     at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
 [exec]     at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
 [exec]     at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
 [exec]     at com.hybris.backoffice.mobile.filter.BackofficeMobileFilter.doFilter(BackofficeMobileFilter.java:63)
 [exec]     at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
 [exec]     at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
 [exec]     at de.hybris.platform.servicelayer.web.WebAppMediaFilter.doFilter(WebAppMediaFilter.java:141)
 [exec]     at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:346)
 [exec]     at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:262)
 [exec]     at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
 [exec]     at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
 [exec]     at de.hybris.platform.servicelayer.web.AbstractPlatformFilterChain$InternalFilterChain.doFilter(AbstractPlatformFilterChain.java:301)
 [exec]     at de.hybris.platform.servicelayer.web.AbstractPlatformFilterChain$StatisticsGatewayFilter.doFilter(AbstractPlatformFilterChain.java:390)
 [exec]     at de.hybris.platform.servicelayer.web.AbstractPlatformFilterChain$InternalFilterChain.doFilter(AbstractPlatformFilterChain.java:271)
 [exec]     at de.hybris.platform.servicelayer.web.WebAppMediaFilter.doFilter(WebAppMediaFilter.java:141)
 [exec]     at de.hybris.platform.servicelayer.web.AbstractPlatformFilterChain$InternalFilterChain.doFilter(AbstractPlatformFilterChain.java:271)
 [exec]     at com.hybris.cockpitng.modules.spring.filter.ExternalModuleContextClassLoaderFilter.doFilter(ExternalModuleContextClassLoaderFilter.java:44)
 [exec]     at de.hybris.platform.servicelayer.web.AbstractPlatformFilterChain$InternalFilterChain.doFilter(AbstractPlatformFilterChain.java:271)
 [exec]     at de.hybris.platform.servicelayer.web.DynamicCatalogVersionActivationFilter.doFilter(DynamicCatalogVersionActivationFilter.java:90)
 [exec]     at de.hybris.platform.servicelayer.web.DynamicCatalogVersionActivationFilter$$FastClassBySpringCGLIB$$2d468805.invoke(<generated>)
 [exec]     at org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:204)
 [exec]     at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.invokeJoinpoint(CglibAopProxy.java:720)
 [exec]     at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:157)
 [exec]     at org.springframework.aop.support.DelegatingIntroductionInterceptor.doProceed(DelegatingIntroductionInterceptor.java:133)
 [exec]     at org.springframework.aop.support.DelegatingIntroductionInterceptor.invoke(DelegatingIntroductionInterceptor.java:121)
 [exec]     at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:179)
 [exec]     at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:655)
 [exec]     at de.hybris.platform.servicelayer.web.DynamicCatalogVersionActivationFilter$$EnhancerBySpringCGLIB$$a8cac040.doFilter(<generated>)
 [exec]     at de.hybris.platform.servicelayer.web.AbstractPlatformFilterChain$InternalFilterChain.doFilter(AbstractPlatformFilterChain.java:271)
 [exec]     at de.hybris.platform.servicelayer.web.DataSourceSwitchingFilter.doFilter(DataSourceSwitchingFilter.java:70)
 [exec]     at de.hybris.platform.servicelayer.web.AbstractPlatformFilterChain$InternalFilterChain.doFilter(AbstractPlatformFilterChain.java:271)
 [exec]     at de.hybris.platform.servicelayer.web.SessionFilter.doFilter(SessionFilter.java:99)
 [exec]     at de.hybris.platform.servicelayer.web.AbstractPlatformFilterChain$InternalFilterChain.doFilter(AbstractPlatformFilterChain.java:271)
 [exec]     at de.hybris.platform.servicelayer.web.RedirectWhenSystemIsNotInitializedFilter.doFilter(RedirectWhenSystemIsNotInitializedFilter.java:101)
 [exec]     at de.hybris.platform.servicelayer.web.AbstractPlatformFilterChain$InternalFilterChain.doFilter(AbstractPlatformFilterChain.java:271)
 [exec]     at de.hybris.platform.servicelayer.web.TenantActivationFilter.doFilter(TenantActivationFilter.java:88)
 [exec]     at de.hybris.platform.servicelayer.web.AbstractPlatformFilterChain$InternalFilterChain.doFilter(AbstractPlatformFilterChain.java:271)
 [exec]     at de.hybris.platform.servicelayer.web.Log4JFilter.doFilter(Log4JFilter.java:44)
 [exec]     at de.hybris.platform.servicelayer.web.AbstractPlatformFilterChain$InternalFilterChain.doFilter(AbstractPlatformFilterChain.java:271)
 [exec]     at de.hybris.platform.servicelayer.web.AbstractPlatformFilterChain.processStandardFilterChain(AbstractPlatformFilterChain.java:201)
 [exec]     at de.hybris.platform.servicelayer.web.AbstractPlatformFilterChain.doFilterInternal(AbstractPlatformFilterChain.java:179)
 [exec]     at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
 [exec]     at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:346)
 [exec]     at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:262)
 [exec]     at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
 [exec]     at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
 [exec]     at de.hybris.platform.servicelayer.web.XSSFilter.processPatternsAndDoFilter(XSSFilter.java:358)
 [exec]     at de.hybris.platform.servicelayer.web.XSSFilter.doFilter(XSSFilter.java:306)
 [exec]     at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
 [exec]     at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
 [exec]     at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:218)
 [exec]     at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:110)
 [exec]     at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:506)
 [exec]     at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:169)
 [exec]     at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103)
 [exec]     at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:116)
 [exec]     at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:962)
 [exec]     at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:445)
 [exec]     at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1115)
 [exec]     at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:637)
 [exec]     at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:318)
 [exec]     at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
 [exec]     at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
 [exec]     at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
 [exec]     at java.lang.Thread.run(Thread.java:748)

Я использую функциональность OOTB hybris store locator. Мой apikey действителен.

Ответы [ 3 ]

0 голосов
/ 02 ноября 2018

Реальная причина исключения зависит от используемой реализации GeoWebServiceWrapper. Вы используете реализацию OOTB?

На самом деле GeoServiceWrapperException должен содержать реальную причину, которая должна быть зарегистрирована, но в вашем случае это null (CelayaPOS Error: null)

Не могли бы вы предоставить стековую трассировку для более подробной информации?

0 голосов
/ 14 декабря 2018

Я только что получил ту же ошибку в моем экземпляре hybris, где раньше работала геолокация. Я все отладил и обнаружил, что hybris звонит без ключа API Google, это вызывает неверный запрос.

0 голосов
/ 01 ноября 2018

Это может означать, что он не может интерпретировать или геокодировать адрес. Проверьте правильность "Carr. Ind Celaya-Villagrån km 3.57, 38158, Celaya, MX".

...