无法在Tomcat 7和Jboss 7上部署GWT应用程序

时间:2013-08-23 16:16:44

标签: java eclipse gwt tomcat jboss

我已经部署了一个gwt应用程序,它在开发模式下工作正常,但是当我尝试在Tomcat或Jboss上传它时,我总是得到服务器所在的404页面。 我试图输入:http://localhost:8080/gwtexample , http://localhost:8080/gwtexample/index.html and 127.0.0.1:8080 / gwrexample`没有成功。

我将war文件放在jboss / standalone / deployment下 在C:\ Program Files \ Apache Software Foundation \ Tomcat 7.0 \ webapps \ ROOT

and here is my web.xml <?xml version="1.0" encoding="UTF-8"?>
 <web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee"
 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee                http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
<servlet>
<servlet-name>requestFactoryServlet</servlet-name>
<servlet-class>com.google.web.bindery.requestfactory.server.RequestFactoryServlet</servlet-class>
<init-param>
 <param-name>symbolMapsDirectory</param-name>
<param-value>WEB-INF/classes/symbolMaps/</param-value>
   </init-param>
  </servlet>
<servlet-mapping>
<servlet-name>requestFactoryServlet</servlet-name>
<url-pattern>/gwtRequest</url-pattern> </servlet-mapping>
<welcome-file-list>
<welcome-file>BfiWebTop.html</welcome-file></welcome-file-list>
 </web-app>

3 个答案:

答案 0 :(得分:1)

war文件应直接放在webapps C:\Program Files\Apache Software Foundation\Tomcat 7.0\webapps文件夹中。 ROOT文件夹也是一个Web应用程序。

请查看你的warfile:

warfile/<hostpage>.html    //maybe index.html
warfile/webtop/ *          //lots of HTML or JS files with silly names (GWT stongnames)
warfile/WEB-INF/web.xml    
warfile/WEB-INF/classes/ * //your compiled server classes
warfile/WEB-INF/lib/ *     //your libraries (including gwt)

答案 1 :(得分:1)

今天我遇到了同样的问题并找到了解决方案。由于我在研究这个悬而未决的问题时偶然发现,我想分享一个对我有用的解决方案 - 即使这个问题已经过了几个月了。

我的环境:Eclipse Kepler SR1, GWT SDK 2.5.1, Google Plugin for Eclipse 4.3

我的问题情况:

  • 使用GWT插件向导Google
  • 创建了"New Web Application Project"项目
  • 创建了"Hello World"问候语
  • GWT development mode中运行 - &gt;项目文件夹中的Right-mouse-click,选择"Run as"->"Web Application"

这很好用。现在我想在"Hello World"上运行Tomcat 7 server应用程序,之前我在Eclipse创建了一个服务器配置文件。最后以404结尾,如本问题所述。以下是我尝试创建和部署应用程序的war文件的方法:

  • 使用Google plugin wizard“GWT编译项目......”将项目编译成war文件夹
  • GWT项目设为动态网络项目,以便在项目文件夹的Tomcat -> Right-mouse-click上进行部署,选择"Properties"->"Project Facets"并启用"Dynamic Web Module".
  • 项目文件夹中的
  • Right-mouse-click,选择"Run as"->"Run on Server"并选择我为Tomcat Server配置的Eclipse
  • Eclipse使用404
  • 打开嵌入式浏览器

当我导出项目的war文件并将其部署到Tomcat 7以外的Eclipse安装的webapps文件夹时,我遇到了同样的错误。

出现问题。当我查看war文件本身时,我发现只有一个空的WebContet文件夹框架,其中包含META-INFWEB-INF文件夹。没有JavaScript个文件,没有HTML files,没有web.xml等等。

为了创建一个正确填充的war文件,我不得不再次操作项目属性。

    项目文件夹中的
  • Right-mouse-click,选择"Properties"->Deployment Assembly"
  • 删除WebContent来源
  • 条目
  • 添加一个以war文件夹作为源的条目:
    • 点击"Add"按钮
    • 选择"Folder",然后点击"Next"按钮
    • 从列表中选择war文件夹,然后点击"Finish"

现在"Run As"->"Run on Server"工作了。

希望这也有助于其他人。

答案 2 :(得分:0)

您可以尝试通过JBoss 7的管理控制台(“运行时”选项卡 - &gt;“管理部署” - >“添加内容”)部署您的战争。然后你可以得到一些例外来解释你的战争有什么问题。