0

我是 GWT 的新手,我需要解决这个问题。我需要用 gwt-links 创建一个小部件。为此,我需要从本体中获取一些数据,然后根据结果创建图形。问题是,当我将 java 代码与 gwt 代码混合时,它不想编译。

问题是,我如何创建一个上面解释的将放置在 http 页面中的 widged?

代码现在看起来像这样:

public class Example1 {

    @Override
    public void draw() {

        // Create the elements

        String ontology = Ontology.get(1);

        Widget labelHello = new BoxLabel(ontology);
        controller.addWidget(labelHello,25,115);


        // Add DnD logic
        PickupDragController dragController = new PickupDragController(controller.getView(), true);
        dragController.makeDraggable(labelHello);


    }


    public Widget asWidget() {
        return controller.getView();
    }

}

Ontology.get() 不想编译。

4

3 回答 3

1

GWT 项目使用三个包(默认情况下)

com.myapp.client
com.myapp.shared
com.myapp.server

默认情况下,共享包和客户端包中的所有内容都将编译为 JavaScript。导入到共享和客户端包中的类中的每个类必须是:

  1. 由 GWT 模拟
  2. 可编译到 GWT(以及在客户端或共享包内)
  3. 可编译为 GWT(并且包必须是 *.gwt.xml 中的白名单)

如果您的代码ISolver可以编译为 JavaScript,您将必须创建一个 module.gwt.xml 并从该模块继承您的项目。这可能使 GWT 编译器能够将 I Solver(及其实现)编译为 JavaScript。

如果您的代码无法编译为 GWT,您将不得不编写一个远程服务来进行计算。

于 2013-09-26T22:12:42.517 回答
1

GWT 不能只编译任何 java 代码。

这些是 GWT 模拟的包:请阅读

无法翻译成 javascript 的代码(未模拟的东西)您必须在服务器端处理。

于 2013-09-26T05:49:53.220 回答
0

我真的不想将代码编译为javascript。我要做的就是创建一个 GWT 小部件(这是一个图表)。

要创建小部件,我需要进行一些计算和存储库获取。我不想翻译它(存储库获取),我只需要使用它来创建图形模型。

基本上,这是我想做的事情:

String l = Repository.getLabel(); // Some advanced calculations that use many JavaSE classes;
GWTWidget widget = new GWTWidget(l);  // widget, that will be displayed on a page.

但是当我在方法 onModuleLoad 中放入一些东西时,它不会编译。

这可能是一个简单的问题,但我与 GWT 并没有真正的关系,我被迫重新制作某人的作品。


 public void onModuleLoad() {
        System.out.println("tes");
        VerticalPanel mainPanel = new VerticalPanel();
        RootPanel.get().add(mainPanel);

        //
        ISolver solver = null;
        System.out.println("TEST2");
    }
ERROR: Line 53: No source code is available for type pr.ISolver; did you forget to inherit a required module?
  ERROR: Unable to find type 'client.Link'
    ERROR: Hint: Previous compiler errors may have made this type unavailable

和其他以“No source code..”开头的行。

I Solver 是一个接口,但我不想翻译它。我想用它来计算。

于 2013-09-26T17:47:48.917 回答