Allegro Delivery – błąd ShipmentIdNotReceivedException (IN_PROGRESS) mimo utworzenia przesyłki – ryzyko duplikowania przesyłek
- Lingua principale
- Nessun dato sulla lingua
- Stelle
- 244
- Fork
- 40
- Metriche di merge delle PR
- Nessuna PR unita negli ultimi 30g
Descrizione
Dzień dobry,
Przesyłam następujący problem od naszego zespołu wprowadzającego nowe formy dostaw(allegro delivery) - aktualnie testują wszystko na testowej wersji sandbox i spotkali się z takimi problemami:
Zauważyliśmy dwa problemy przy testowaniu zakładania przesyłek.
Dla przykładu zlecenia 6t3vwekfmd+13e1f6199@user.allegrogroup.pl
Zlecenie ma dwie paczki.
Pierwsza paczka.
Utworzył się komunikat założenia przesyłki RFT:
{
"input" : {
"sender" : {
"company" : "STALCO",
"street" : "Ofiar Katynia 1",
"postalCode" : "32-050",
"city" : "Skawina",
"countryCode" : "PL",
"email" : "xxx,
"phone" : "xxx"
},
"receiver" : {
"company" : "Jakub xx",
"street" : "xx,
"postalCode" : "30-122",
"city" : "Kraków",
"countryCode" : "PL",
"email" : "6t3vwekfmd+13e1f6199@user.allegrogroup.pl",
"phone" : "+48 xxx,
"point" : "764630"
},
"packages" : [ {
"type" : "PACKAGE",
"length" : {
"value" : "44",
"unit" : "CENTIMETER"
},
"width" : {
"value" : "40",
"unit" : "CENTIMETER"
},
"height" : {
"value" : "20",
"unit" : "CENTIMETER"
},
"weight" : {
"value" : "5",
"unit" : "KILOGRAMS"
}
} ]
}
}
W odpowiedzi błąd:
RESPONSE BODY : {"RESPONSE_STATUS":"ER","RESPONSE_TXT":"pl.quantum.l4s.qallegro.exceptions.ShipmentIdNotReceivedException: {\"commandId\":\"fb4200b7-cb53-48d4-87ac-3d96c69dd78f\",\"status\":\"IN_PROGRESS\",\"errors\":null,\"shipmentId\":null}\r\n\tat pl.quantum.l4s.qallegro.services.QCreateCommandsStatus.getShipmentId(QCreateCommandsStatus.java:79)\r\n\tat pl.quantum.l4s.qallegro.services.QCreateCommandsStatus.createCommandsStatus(QCreateCommandsStatus.java:63)\r\n\tat pl.quantum.l4s.qallegro.services.QCreateCommandsService.readResponse(QCreateCommandsService.java:289)\r\n\tat pl.quantum.l4s.qallegro.services.QCreateCommandsService.createCommands(QCreateCommandsService.java:94)\r\n\tat java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103)\r\n\tat java.base/java.lang.reflect.Method.invoke(Method.java:580)\r\n\tat org.jboss.resteasy.core.MethodInjectorImpl.invoke(MethodInjectorImpl.java:154)\r\n\tat org.jboss.resteasy.core.MethodInjectorImpl.invoke(MethodInjectorImpl.java:118)\r\n\tat org.jboss.resteasy.core.ResourceMethodInvoker.internalInvokeOnTarget(ResourceMethodInvoker.java:560)\r\n\tat org.jboss.resteasy.core.ResourceMethodInvoker.invokeOnTargetAfterFilter(ResourceMethodInvoker.java:452)\r\n\tat org.jboss.resteasy.core.ResourceMethodInvoker.lambda$invokeOnTarget$2(ResourceMethodInvoker.java:413)\r\n\tat org.jboss.resteasy.core.interception.jaxrs.PreMatchContainerRequestContext.filter(PreMatchContainerRequestContext.java:321)\r\n\tat org.jboss.resteasy.core.ResourceMethodInvoker.invokeOnTarget(ResourceMethodInvoker.java:415)\r\n\tat org.jboss.resteasy.core.ResourceMethodInvoker.invoke(ResourceMethodInvoker.java:378)\r\n\tat org.jboss.resteasy.core.ResourceMethodInvoker.invoke(ResourceMethodInvoker.java:356)\r\n\tat org.jboss.resteasy.core.ResourceMethodInvoker.invoke(ResourceMethodInvoker.java:70)\r\n\tat org.jboss.resteasy.core.SynchronousDispatcher.invoke(SynchronousDispatcher.java:429)\r\n\tat org.jboss.resteasy.core.SynchronousDispatcher.lambda$invokePropagateNotFound$6(SynchronousDispatcher.java:275)\r\n\tat org.jboss.resteasy.core.SynchronousDispatcher.lambda$preprocess$0(SynchronousDispatcher.java:154)\r\n\tat org.jboss.resteasy.core.interception.jaxrs.PreMatchContainerRequestContext.filter(PreMatchContainerRequestContext.java:321)\r\n\tat org.jboss.resteasy.core.SynchronousDispatcher.preprocess(SynchronousDispatcher.java:157)\r\n\tat org.jboss.resteasy.core.SynchronousDispatcher.invokePropagateNotFound(SynchronousDispatcher.java:260)\r\n\tat org.jboss.resteasy.plugins.server.servlet.ServletContainerDispatcher.service(ServletContainerDispatcher.java:224)\r\n\tat org.jboss.resteasy.plugins.server.servlet.FilterDispatcher.doFilter(FilterDispatcher.java:62)\r\n\tat org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:162)\r\n\tat org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:138)\r\n\tat org.apache.logging.log4j.web.Log4jServletFilter.doFilter(Log4jServletFilter.java:70)\r\n\tat org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:162)\r\n\tat org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:138)\r\n\tat org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:165)\r\n\tat org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:88)\r\n\tat org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:482)\r\n\tat org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:113)\r\n\tat org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:90)\r\n\tat org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:664)\r\n\tat org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:72)\r\n\tat org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:342)\r\n\tat org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:399)\r\n\tat org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:63)\r\n\tat org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:903)\r\n\tat org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1776)\r\n\tat org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:52)\r\n\tat org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:975)\r\n\tat org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:493)\r\n\tat org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:63)\r\n\tat java.base/java.lang.Thread.run(Thread.java:1583)\r\n\n"}
Przesyłka nie złożona, błąd w odpowiedzi.
Druga paczka:
Utworzył się komunikat założenia przesyłki RFT:
{
"input" : {
"sender" : {
"company" : "STALCO",
"street" : "Ofiar Katynia 1",
"postalCode" : "32-050",
"city" : "Skawina",
"countryCode" : "PL",
"email" : "sxxxo.pl",
"phone" : "xxx"
},
"receiver" : {
"company" : "Jakub xx",
"street" : "Lxxx,
"postalCode" : "30-122",
"city" : "Kraków",
"countryCode" : "PL",
"email" : "6t3vwekfmd+13e1f6199@user.allegrogroup.pl",
"phone" : "+48 xxxx",
"point" : "764630"
},
"packages" : [ {
"type" : "PACKAGE",
"length" : {
"value" : "44",
"unit" : "CENTIMETER"
},
"width" : {
"value" : "40",
"unit" : "CENTIMETER"
},
"height" : {
"value" : "15",
"unit" : "CENTIMETER"
},
"weight" : {
"value" : "5",
"unit" : "KILOGRAMS"
}
} ]
}
}
W odpowiedzi potwierdzenie złożenia przesyłki : cc1ebd35-b337-441f-bd82-1da4a11d1526
RESPONSE BODY : {"RESPONSE_STATUS":"OK","RESPONSE_REF_NR":"cc1ebd35-b337-441f-bd82-1da4a11d1526","RESPONSE_PACKAGE_INFO":[{"TRACKING_NR":"3401009616921","ADDITIONAL_INFO":"AD0CBSF7BFMF6M1QN"}]}
Potem wyszedł komunikat na pobranie etykiety i tu przetworzyło się prawidłowo etykieta się pobrała.
Pierwszy problem jest taki, przy testach dostajemy bardzo często błąd:
RESPONSE BODY : {"RESPONSE_STATUS":"ER","RESPONSE_TXT":"pl.quantum.l4s.qallegro.exceptions.ShipmentIdNotReceivedException: {\"commandId\":\"fb4200b7-cb53-48d4-87ac-3d96c69dd78f\",\"status\":\"IN_PROGRESS\",\"errors\":null,\"shipmentId\":null}
Z czym jest on związany?
Drugi problem jest taki, że mimo odpowiedź o błędzie złożenia przesyłki to na koncie Allegro widać, że przesyłka się złożyła.
To potencjalnie tworzy problemy przy dalszym procesowaniu przesyłek z błędem.
Jak ponowimy komunikat na błędną przesyłkę i uda się go przetworzyć, to na koncie Allegro będą widoczne trzy przesyłki a realnie są dwie.
Tu powinien być mechanizm, że nie zakłada się przesyłka bez pozytywnej odpowiedzi na komunikat złożenia przesyłki.
Guida per i contributori
Nessuna guida per i contributori indicizzata per questo repository
Valutazione
Questa issue non è ancora stata valutata.