2016-11-08 8 views
0

最近、私は自分のアプリケーションにAcaptureプロセッサゲートウェイを統合しようとしました。私のアプリケーションはJavaバージョン1.7で動作しています。私はAcapture支払い要求のタイムアウト例外が発生しました:Acapture - Java 7でペイメントゲートウェイサービスが動作しない

java.util.concurrent.TimeoutException:先物は

[20000ミリ秒]後にタイムアウトになりました。しかし、私は、Java 1.6と1.8に対応しました。 Java 1.7では動作しません。

Javaバージョン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:先物はscala.concurrent.impl.Promise $ DefaultPromiseで[20000ミリ秒] 後にタイムアウトになりました。 scala.concurrent.impl.Promise $ DefaultPromise.ready(Promise.scala:58) at scala.concurrent.Await $$ anonfun $ ready $ 1.apply(package.scala:86)を準備中です。 at scala.concurrent.Await $$ ano nfun $ ready $ 1.apply(package.scala:86) akka.dispatch.MonitorableThreadFactory $ AkkaForkJoinWorkerThread $$ anon $ 3.block(ThreadPoolBuilder.scala:173) at scala.concurrent.forkjoin.ForkJoinPool.managedBlock(ForkJoinPool.java) :86)play.api.libs.concurrent.PlayPromiseで :scala.concurrent.Await $ .ready(package.scalaで171) :akka.dispatch.MonitorableThreadFactory $ AkkaForkJoinWorkerThread.blockOn(ThreadPoolBuilder.scalaで2803) 。 (Promj.scala:134) at play.libs.F $ Promise.get(F.java:213) at play.libs.F $ Promise.get(F.java:224) at com.kachyng。 payment.gateway.acapture.service.AcapturePaymentService.processPaymentService(AcapturePaymentService.java:115) at com.kachyng.payment.gateway.acapture.service.Acaptルート$$ anonfunの$ルートでcontrollers.PaymentGateway.processでcom.kachyng.processor.ProcessorGateway.process(ProcessorGateway.java:222) (PaymentGateway.java:28) でurePaymentService.makePaymentRequest(AcapturePaymentService.java:63) $ 1 $$ anonfun $ applyOrElse $ 9 $$ anonfun $ apply $ 9.apply(routes_routing.scala:145) (ルート)$$ 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 $ルート$$ anon $ 1.invocation(Router.scala:373) playCore.j.JavaAction $$ anon $ 1.call(JavaAction.scala:50) at play.GlobalSettings $ 1.call .app play.libs.F $ Promise $ PromiseActor.onReceive(F.java:425) のplay.libs.F $ 0 anon $ 2.apply(JavaAction.scala:79) akka.actor.UntypedActor $$ anonfun $ $ 1.applyOrElse(UntypedActor.scala:159)受信時 akka.actor.ActorCell.receiveMessageで を(ActorCell.scala:425) akka.actor.ActorCell.invokeで(ActorCell。スカラ:386) akka.dispatch.Mailbox.processMailboxで(Mailbox.scala:230) akka.dispatch.Mailbox.runで(Mailbox.scala:212) はakka.dispatch.ForkJoinExecutorConfigurator $ MailboxExecutionTask.exec(AbstractDispatcherで。 scala:502) (scala.concurrent.forkjoin.ForkJoinTool.doExec(ForkJoinTask.java:262) at scala.concurrent.forkjoin.ForkJoinPool $ WorkQueue)。 runTask(ForkJoinPool.java:975) at scala.concurrent.forkjoin.ForkJoinPool.runWorker(ForkJoinPool。Javaの:

応答::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"}} 
} 

は親切に私が解決するのに役立ちますこの。

答えて

0

Acaptureのテクニカルサポートチームから回答がありました。 PCIによると、AcaptureはTLS 1.2のみをサポートしなければなりません。 Java 7はそれをサポートしていません。これはJavaの制限です。 AcaptureはJava 8を使用することを提案します。

関連する問題