Java 在GWT中使用勘误表Ui

Java 在GWT中使用勘误表Ui,java,gwt,errai,Java,Gwt,Errai,我很想在我的GWT(2.8)应用程序中使用勘误表UI(3.2.4)。我已经有了一个带有入口点实现和onModuleLoad的设置。我已经安装了restGWT并与我的服务器(使用Jersey)交互 我找到的所有文档都假设您正在使用forge插件从头开始构建一个完整的Errai项目。我不是。我只想使用模板和数据绑定。我使用的是裸体设置,我甚至无法在我的应用程序中显示标签 我有一个GWT入口点: public class App implements EntryPoint { @Inj

我很想在我的GWT(2.8)应用程序中使用勘误表UI(3.2.4)。我已经有了一个带有入口点实现和onModuleLoad的设置。我已经安装了restGWT并与我的服务器(使用Jersey)交互

我找到的所有文档都假设您正在使用forge插件从头开始构建一个完整的Errai项目。我不是。我只想使用模板和数据绑定。我使用的是裸体设置,我甚至无法在我的应用程序中显示标签

我有一个GWT入口点:

public class App implements EntryPoint  
{  
    @Inject  
    private ApplicationContainer applicationContainer;  

    public void onModuleLoad()  
    {  
        RootPanel.get("root").add(applicationContainer);  
    }  
}  
以及ApplicationContainer:

@Templated  
public class ApplicationContainer extends Composite  
{  
    @DataField  
    private Element applicationContainer = DOM.createDiv();  


    @PostConstruct  
    public void init()  
    {  
        GWT.log("Initializing");  
    }  
}  
随附的模板:

<div id="applicationContainer" data-field="applicationContainer">  
    Application Container  
</div>  

应用程序容器
我应该在浏览器中看到“应用程序容器”,但我在浏览器控制台中看到此错误:

java:96未捕获类型错误:无法读取未定义的属性“removeFromParent\u 0\u g$”

小部件和模板的名称相同,并且位于同一个包中。“我的小部件”的创建与文档所示的一样:

有人能告诉我我错过了什么吗?这方面的例子非常少,它们都假设一个完整的勘误表项目。我还需要@EntryPoint吗?我需要@PostConstruct吗?Errai设计成这样工作吗


谢谢您的帮助。

是的,
@EntryPoint
注释很重要,我不确定您是否能够将此框架的一部分与其他方法混淆。这并不意味着你需要使用所有的模块,但是如果你使用的是什么部件,你应该遵循勘误表的指导方针

请参见此处的示例入口点:

您还可以在路径…/3.2.4.Final/errai-demos中找到更多示例/

以上是关于勘误表3.x。 还请注意,如果只是关于勘误表UI,勘误表4.x会带来一些更改。这里有很好的描述:

现在,您的
@Templated
bean不需要扩展复合。模板的根元素可以作为
@DataField
等进行访问


希望对您有所帮助。祝你好运

是的,
@EntryPoint
注释很重要,我不确定您是否能够将此框架的一部分与其他方法混为一谈。这并不意味着你需要使用所有的模块,但是如果你使用的是什么部件,你应该遵循勘误表的指导方针

请参见此处的示例入口点:

您还可以在路径…/3.2.4.Final/errai-demos中找到更多示例/

以上是关于勘误表3.x。 还请注意,如果只是关于勘误表UI,勘误表4.x会带来一些更改。这里有很好的描述:

现在,您的
@Templated
bean不需要扩展复合。模板的根元素可以作为
@DataField
等进行访问


希望对您有所帮助。祝你好运

您的问题的答案如下:

基本上,您需要将应用程序迁移到使用Maven,以便首先获得正确的依赖项,然后在此项目中使用POM并将其捕捉到项目中

然后,您可以包括一个引导文件来添加
@EntryPoint
类,但这不是必需的,您可以只在客户端路径中添加一个
页面
,例如:

com.mycompany.app.client
-->MyPage.html
-->MyPage.java
此处的java文件包含默认页面,即

@Dependent
@Templated
@Page(role = DefaultPage.class)
public class MyPage extends Composite{}

您的问题的答案如下:

基本上,您需要将应用程序迁移到使用Maven,以便首先获得正确的依赖项,然后在此项目中使用POM并将其捕捉到项目中

然后,您可以包括一个引导文件来添加
@EntryPoint
类,但这不是必需的,您可以只在客户端路径中添加一个
页面
,例如:

com.mycompany.app.client
-->MyPage.html
-->MyPage.java
此处的java文件包含默认页面,即

@Dependent
@Templated
@Page(role = DefaultPage.class)
public class MyPage extends Composite{}

你查过我们的答案了吗?你查过我们的答案了吗?