4

我第一次在一个需要构建一个大量使用 JSF(尤其是 ICEfaces)的 web 应用程序的项目上工作。有很多东西需要编码,包括 CSS、HTML、JSP/Java,当然还有 JSF。

我在 Eclipse btw 中完成所有这些工作,并使用 eclipse 负责启动的本地 tomcat 服务器来运行应用程序。

无论如何,我注意到这一切都非常缓慢。当我更改一个 JSF 时,我必须重新启动网络服务器,以便查看新结果。通常我只是对布局和停止、重新启动、刷新所需的 10 到 15 秒以上的时间感兴趣,这让我发疯。我每天重启 Tomcat 一百次——啊!我需要更快的周转!

难道我做错了什么?这是所有 Web 开发人员的自然状态吗​​?

4

8 回答 8

8

我正在使用几乎相同的配置在 JSF 中开发我的应用程序(Tomcat 5.5 由我的 Eclipse 3.3 和 JBoss Tools 运行)。我也在使用 Facelets for JSF,并且我可以在 web.xml 中设置一个重要的上下文参数,以便能够通过自动刷新修改我的 XHTML 文件(即我不需要重新启动 Tomcat 来查看我的变化)。所以,在我的 web.xml 中,我有这个:

<context-param>
    <param-name>javax.faces.FACELETS_REFRESH_PERIOD</param-name>
    <param-value>1</param-value>
</context-param>
于 2009-01-15T13:30:54.910 回答
3

我正在使用 eclipse 和 maven 开发 JSF 应用程序。当对程序进行更改并保存该更改时,它会自动重新加载。更改任何配置文件时都必须重新启动。

于 2009-01-15T18:19:27.947 回答
0

您不必重新启动 Tomcat 即可看到您的更改。只需复制 $CATALINA_HOME/webapps 中的 WAR 即可使应用程序自行重新部署。不过,这需要几秒钟。

有多种部署方式,请参阅 Tomcat 6 的此文档:http ://www.mbaworld.com/docs/appdev/deployment.html

于 2009-05-15T08:47:44.287 回答
0

我使用 Jboss Developer Studio (v2.0) 并将我的项目设置为热部署。这意味着除了实体、EJB 和消息包之外的任何更改我都没有重新启动。非常适合大多数 POJO 项目。

于 2009-04-07T12:13:40.513 回答
0

我曾经有同样的问题。使用 JavaRevel 即时重新部署代码的快速解决方案(免费用于非商业用途,如果您想在公司中使用它,则需要花费几美分) http://www.zeroturnaround.com/javarebel/

希望这可以帮助,

于 2009-08-14T10:05:43.573 回答
0

您可以通过直接将更新的标记文件复制到适当的 webapp 目录中来解决这个问题,至少对于布局/标记位。

查看分解的 WAR 文件并找到您的标记文件所在的位置。您可以直接更改它,也可以将更新的文件移到那里。稍后刷新浏览器,您的标记应该更改!

您可以通过添加 ANT 命令来更快地完成此操作。我正在使用 Netbeans,但我对 ANT 不是很好(而且我的截止日期没有给我时间弄清楚),所以我制作了一个小 shell 脚本,将我的所有文件 cp 到爆炸的 WAR 目录中。

但是,如果您更改 Java 或配置文件,则需要重新部署 WAR。我不确定您正在运行什么版本的 Tomcat,但要在我的 Tomcat 6 实例上执行此操作,只需将 WAR 文件移动到 webapps 目录中,就会导致 Tomcat 将其拾取并重新部署。

不过要小心!Tomcat 6 的热部署功能运行良好,但它不能正确释放先前部署使用的 PermGen 内存。因此,经过几次热部署后,Tomcat 开始抛出“PermGen 错误:内存不足”异常,您唯一的办法就是重新启动。

于 2009-02-18T16:09:52.500 回答
0

如果您只是在玩 CSS,那么使用Firebug之类的东西就地编辑它,然后当您满意时,您可以将它全部复制并粘贴到 Eclipse 中。同上 HTML;事实上,当您知道 JSF 组件的去向时,只需制作一个虚拟页面,然后在快速 Web 开发 IDE中对其进行编辑。

Web 开发通常不需要频繁重启 Tomcat :)

于 2009-02-18T16:29:44.887 回答
0

我曾经在没有任何设计工具的情况下自己在 Eclipse 中开发 JSF 页面(我不喜欢它们)。使用设计器工具很难制作复杂的 UI 布局 - 工具仅适用于简单的布局。当您有很多 DHTML、CSS 时,您应该自己编写页面。

关于服务器重启:如果你以正确的方式配置你的 Tomcat,更改 JSP 页面不会导致服务器重启(热部署或类似这样的事情)。如果您更改 bean 中的方法签名,当然您必须重新启动。

于 2009-05-14T15:37:18.710 回答