将GWT与数据库一起使用

时间:2009-10-27 21:13:24

标签: database postgresql gwt

如何配置GWT附带的嵌入式Jetty,以便在单击Eclipse中的运行按钮时,我的服务器应用程序可以访问postgresql数据库?

3 个答案:

答案 0 :(得分:1)

我们通过遵循配置Web应用程序的标准过程将我们的Tomcat Web应用程序(使用OpenEJB)移植到GWT嵌入式服务器(Jetty)有了一些运气。

但毕竟我们决定使用 noserver 选项以托管模式运行并改为连接到Tomcat服务器。

答案 1 :(得分:1)

是的,GWT嵌入式Jetty服务器适用于简单的servlet,但大多数时候你需要更多Jetty不提供的东西。除了简单的测试servlet之外,我总是使用带有 noserver 选项的GlassFish和Tomcat容器。这使您的servlet可以充分利用Java Enterprise Bean和Java Persistence API(JPA)的强大功能。您测试的最简单方法是构建项目并将 WAR 部署到容器。然后修改您的GWT项目目标托管以使用 noserver 选项,并将 -startupUrl 选项与您的Tomcat / Glassfish的URL(项目的URL)一起传递在容器上)。当使用POJO DTO与纯JPA结合时,GWT可以非常精简。请参阅我的GWTPersistence示例> NingZhang.info

答案 2 :(得分:0)

原来我需要做的是在不同主机上的Tomcat服务器上运行应用程序(因为我需要的数据库太难以带到开发机器进行测试)。我最终使用“ant war&& scp Navaid.war foo:/ www / tomcat / webapps /”来部署服务器端,并且我将项目的Eclipse运行配置修改为

  • 取消点击“主要”标签上的“运行内置服务器”
  • 将以下选项添加到“Arguments”选项卡上的“Program Arguments”

    -noserver -whitelist“^ http [:] [/] [/] foo [。] bar [。] com [:] 8080”

我还设法修改build.xml,以便“ant hosted”将使用远程服务器运行托管模式。我找到了“托管”目标,并且< arg>看起来像这样的一行:

<arg value="-startupUrl"/>

并在其前添加以下行:

<arg value="-noserver"/>

并更改了

之后的行
<arg value="Navaid.html"/>

<arg value="http://foo.bar.com:8080/Navaid/Navaid.html"/>