【问题标题】:GWT: Organizing WAR with multiple modulesGWT:用多个模块组织 WAR
【发布时间】:2012-11-03 19:39:55
【问题描述】:

我正在尝试创建一个包含两个模块的 GWT 应用:

  • WebModule - 包含所有看似“公共网站”的代码;和
  • AppModule - 出于安全和性能原因,仅在用户登录后加载(通过 WebModule 中的 LoginScreen

我不确定如何打包 WAR。对于一个模块(包含一个入口点),正常的结构似乎是这样的:

src/
    com.myapp
        MyApp.gwt.xml
    com.myapp.client
        MyApp.java
war/
    WEB-INF/
        lib/
        web.xml
    MyApp.css
    MyApp.html

但是对于 2+ 个模块,我很困惑我可以/应该在哪里放置各种文件。我想做这样的事情:

src/
    com.myapp
        WebModule.gwt.xml
        AppModule.gwt.xml
    com.myapp.client.modules
        WebModule.java (implements EntryPoint)
        AppModule.java (implements EntryPoint)
war/
    WEB-INF/
        lib/
        web.xml
    css/
        web-module.css
        app-module.css
    html/
        web-module.html
        app-module.html

但我不确定这是否是“合法”(GWT 和 Java EE 标准)结构,我也不确定如何将“MyApp”与“WebModule”链接起来,以便 WebModule 是用户访问http://www.myapp.com时下载的第一个模块。

【问题讨论】:

    标签: java gwt servlets war


    【解决方案1】:

    这是正确的结构。不过,您不必为 HTML 和 CSS 创建单独的文件夹,因为每个文件夹中只有两个文件。

    您在 web.xml 文件中指定当用户访问您的域时首先加载哪个文件:

    <welcome-file-list>
        <welcome-file>web-module.html</welcome-file>
    </welcome-file-list>
    

    【讨论】:

    • 谢谢@Andrei Volgin (+1) - 快速提问:我是否WebModule.gwt.xmlAppModule.gwt.xml放在src/com.myapp包下,或者我可以放置他们,比如说,在war/gwt/xml 下?再次感谢!
    • 它们必须在 src 文件夹中。编译器需要读取这些文件。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-05-18
    • 2012-06-29
    • 1970-01-01
    • 2011-05-05
    • 1970-01-01
    • 2023-03-28
    相关资源
    最近更新 更多