I was able to make it work using a DatatransOption class for the config :
@JsType(namespace = JsPackage.GLOBAL, name = "Object", isNative = true)
public class DatatransOption {
@JsProperty
public String transactionId;
@JsProperty
public Func opened;
...
@JsOverlay
public static DatatransOption create(String transactionId)
{
DatatransOption option = new DatatransOption();
option.transactionId = transactionId;
option.opened = new Func() {
@Override
public void call() {
Window.alert("payment-form opened ");
}
};
...
return option;
}
The Func interface is from Gwt-Material
Le jeudi 21 janvier 2021 à 09:19:48 UTC+1, [email protected] a écrit :
> Hi,
>
> I am trying to integrate the Datatrans payment system with JSinterop
> The js script is
> https://pay.sandbox.datatrans.com/upp/payment/js/datatrans-2.0.0.js
>
> the js code to be executed should be :
>
> payButton.onclick = function() {
> Datatrans.startPayment({
> transactionId: "{{transactionId}}",
> 'opened': function() {console.log('payment-form opened');},
> 'loaded': function() {console.log('payment-form loaded');},
> 'closed': function() {console.log('payment-page closed');},
> 'error': function() {console.log('error');}
> });
> };
>
> I created a Datatrans class :
>
> @JsType(namespace = JsPackage.GLOBAL, isNative = true)
> public class Datatrans {
> public native static void startPayment(String transactionId);
> }
>
> When clicking on the payButton, the startPayment function from the js code
> is executed but no dialog from datastrans is shown.
> I guess imy definition of my startPayment method doesnot include the
> functions callbacks for opened/loaded etc
> How can I define these functions and change my startPayment definition ?
>
> Thanks in advance for any help
> Pierre
>
--
You received this message because you are subscribed to the Google Groups "GWT
Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To view this discussion on the web visit
https://groups.google.com/d/msgid/google-web-toolkit/affed184-d0f1-430c-83f5-78c4718a0efdn%40googlegroups.com.