Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to convert existing javascript to java to use with GWT?

Is there a tool to convert javascript to java, so I can handle the project using GWT?

update

For those who don't know, GWT (Google Web Toolkit) is a toolkit to write Java and get Javascript, so my question.

like image 864
The Student Avatar asked Dec 08 '22 01:12

The Student


2 Answers

What exactly do you have in mind? If you're looking for some sort of automatic tool, that generates GWT Java code from Javascript, then I'm afraid there's no such thing.

You can (and should) use JavaScript Native Interface (JSNI), probably in combination with JavaScript Overlay Types (JSO) to wrap your existing Javascript code, so that it's possible to interface with it from GWT's Java code. See the Getting to really know GWT, Part 1: JSNI (and Part 2) post on GWT's offcial blog for some pointers and use cases.

like image 139
Igor Klimer Avatar answered Dec 09 '22 14:12

Igor Klimer


As a proof-of-concept, I wrote a translator that converts a small subset of JavaScript into Java. It is based on the transpiler library for SWI-Prolog:

:- use_module(library(transpiler)).
:- set_prolog_flag(double_quotes,chars).
:- initialization(main).
main :- 
    Input = "function add(a,b){return a+b;} function squared(a){return a*a;} function add_exclamation_point(parameter){return parameter+\"!\";}",
    translate(Input,'javascript','java',X),
    atom_chars(Y,X),
    writeln(Y).

This is the Java source code that is generated by this program:

public static String add(String a,String b){
        return a+b;
}
public static int squared(int a){
        return a*a;
}
public static String add_exclamation_point(String parameter){
        return parameter+"!";
}
like image 21
Anderson Green Avatar answered Dec 09 '22 15:12

Anderson Green