최근에 내 응용 프로그램과 Acapture 프로세서 게이트웨이를 통합하려고했습니다. Java 버전 1.7에서 실행되는 내 응용 프로그램. 나는 Acapture 지급 요청에 대한 시간 제한 예외를 가지고 :Acapture - Java 7에서 지불 게이트웨이 서비스가 작동하지 않습니다.
java.util.concurrent.TimeoutException : 선물은
[20000 밀리 초] 후 시간 초과하지만 자바 1.6와 1.8에 응답을 얻었다. Java 1.7에서는 작동하지 않습니다.
자바 버전 1.7
요청 :
{ "action":"payment",
"header":{"businessId":"877777","additionalProperties":{}},
"body":{"transaction":{"trackingCode":"4381-65-0734","type":"SINGLE","brandId":"1010","amount":"52","currencyCode":"USD","countryCode":"US","additionalProperties":{}},
"card":{"holderName":"Sharon ","number":"4000000000000002","expiryMonth":"02","expiryYear":"2020","cvv":"123","additionalProperties":{}},
"additionalProperties":{}
},"additionalProperties":{}}
java.util.concurrent.TimeoutException : 선물은 [20000 밀리 초] 후 시간 초과 scala.concurrent.impl.Promise $ DefaultPromise에서 . scala.concurrent.impl.Promise $ DefaultPromise.ready (Promise.scala : 58) at scala.concurrent.Await $$ anonfun $ ready $ 1.apply (package.scala : 86)을 준비하십시오. scala.concurrent.Await $$ ano에 nfun $ 준비 $ 1.apply (package.scala : 86) akka.dispatch.MonitorableThreadFactory $ AkkaForkJoinWorkerThread $$ 곧 $ 3.block (ThreadPoolBuilder.scala : 173)에서 scala.concurrent.forkjoin.ForkJoinPool.managedBlock에서 (ForkJoinPool.java : 2803) at akka.dispatch.MonitorableThreadFactory $ AkkaForkJoinWorkerThread.blockOn (ThreadPoolBuilder.scala : 171) at scala.concurrent.Await $ .ready (package.scala : 86) at play.api.libs.concurrent.PlayPromise. play.libs.F $ Promise.get (F.java:213) play.libs.F $ Promise.get (F.java:224) com.kachyng에서 에서 에서 (Promise.scala 134)을 기다린다. payment.gateway.acapture.service.AcapturePaymentService.processPaymentService (AcapturePaymentService.java:115) at com.kachyng.payment.gateway.acapture.service.Acapt urePaymentService.makePaymentRequest (AcapturePaymentService.java:63) 경로 $$ anonfun의 $ 노선에서 controllers.PaymentGateway.process (PaymentGateway.java:28) 에서 com.kachyng.processor.ProcessorGateway.process (ProcessorGateway.java:222) 에서 $ 1 $$ anonfun $ applyOrElse $ 9 $$ anonfun $ apply $ 9.apply (routes_routing.scala : 145) at Routes $$ anonfun $ routes $ 1 $$ anonfun $ applyOrElse $ 9 $$ anonfun $ apply $ 9. $ apply (routes_routing.scala : 145) at play.core.Router $ HandlerInvoker $$ anon $ 6 $$ anon $ 2.invocation (Router.scala : 193) at play.core.Router $ Routes $$ anon $ 1.invocation (Router.scala : 373) at play.core.j.JavaAction $$ anon $ 1.call (JavaAction.scala : 50) at play.GlobalSettings $ 1.call (GlobalSettings.java:63) at play.core.j.JavaAction $$ anon $ 2 .앱 ly (JavaAction.scala : 80) at play.core.j.JavaAction $$ anon $ 2.apply (JavaAction.scala : 79) at play.libs.F $ Promise $ PromiseActor.onReceive (F.java:425) akka.actor.ActorCell.invoke에서 (ActorCell : akka.actor.ActorCell.receiveMessage (425 ActorCell.scala)에 : akka.actor.UntypedActor $$ anonfun $에서 은 $ 1.applyOrElse (UntypedActor.scala 159)를 수신한다. 스칼라 : 386) akka.dispatch.Mailbox.processMailbox (Mailbox.scala : 230) at akka.dispatch.Mailbox.run (Mailbox.scala : 212) at akka.dispatch.ForkJoinExecutorConfigurator $ MailboxExecutionTask.exec (AbstractDispatcher. scala : 502) (scala.concurrent.forkjoin.ForkJoinPool $ WorkQueue) .ForkJoinTask.doExec (ForkJoinTask.java:262) 에 있습니다. (ForkJoinPool.java:975) runTask자바 : 1478) scala.concurrent.forkjoin.ForkJoinWorkerThread.run (ForkJoinWorkerThread.java:104에서)
Java 버전 1.6 :
이응답 :
{ "result":"0",
"description":"Ok",
"header":{"requestTimestamp":"2016-11-08T07:23:49Z","requestCode":"FES.201.ea00df08-2868-42c5-a792-16c9c24f1651"},
"body":{"transaction":{"action":"payment","id":"996e7ed3-8a52-4dc4-bc0e-7fc15adb4a70","trackingCode":"7622-31-9702","amount":"5.00","currencyCode":"USD","brandId":"1010","descriptor":"0235.2924.3298 Kachyng CC 3D"},"card":{"firstSixDigits":"400000","lastFourDigits":"0002","expiryMonth":"02","expiryYear":"2020","holderName":"Sharon Jda"}}
}
이 친절하게 도와는 해결하기 이.