Thursday, January 21, 2021

Re: Datatrans payment system with JSinterop

Thanks Thomas,

I tried it but the compiler is complaining :
            [ERROR] Line 27: Native JsType method 'void DatatransOption.opened()' should be native or abstract.
As I would like to implement them myself, is there a workaround ?  

Le jeudi 21 janvier 2021 à 18:51:57 UTC+1, a écrit :
You could probably also use a non-native type:

public class DatatransOption {
  public String transactionId;
  public void opened() {
    Window.alert("payment form opened");

On Thursday, January 21, 2021 at 1:07:34 PM UTC+1 wrote:
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 {

public String transactionId;
public Func opened;
public static DatatransOption create(String transactionId)
DatatransOption option = new DatatransOption();
option.transactionId = transactionId;
option.opened = new Func() {
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, a écrit :

I am trying to integrate the Datatrans payment system with JSinterop

the js code to be executed should be :

payButton.onclick = function() {
    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

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
To view this discussion on the web visit

No comments:

Post a Comment