10

Our method of deploying a new version of an app for weblogic (11g) is to copy over top of the existing ear file and then stop and restart the weblogic server. We do a start/stop of weblogic rather than a redeployment, because of the known permgen issue (where eventually we will run out of perm gen and have to bounce the weblogic server).

However, this method of deploying has a drawback-- new JSP versions are not seen by weblogic. In order to fix this we have had to wipe out the contents of the tmp directory that maintain a cache of the compiled JSPs prior to restarting the server. Is there a setting that would tell weblogic to wipe the cache/reload/recompile JSPs when it starts back up?

4

2 回答 2

6

更改 JSP 刷新计时器

一个标准的解决方案是告诉 Weblogic 更频繁地检查 JSP 新鲜度,方法是在您的web.xml或您的weblogic.xml.

在生产模式下,Weblogic 不会检查新的 JSP 版本(默认值:-1),而在开发模式下(默认值:1)每秒都会检查一次。

web.xml修改或修改之间的选择weblogic.xml取决于您,关于您的目标应用程序服务器,是否仅是 WebLogic。

如果您更喜欢修改web.xml,则为 context 参数设置一个值,weblogic.jsp.pageCheckSeconds如下所示:

<context-param>
  <param-name>weblogic.jsp.pageCheckSeconds</param-name>
  <param-value>0</param-value>
</context-param>

如果您更喜欢修改,请在该部分中weblogic.xml为参数设置一个值。以下是文档的相关摘录:page-check-secondsjsp-descriptor

设置 WebLogic Server 检查 JSP 文件是否已更改并需要重新编译的时间间隔(以秒为单位)。如果更改,还会检查依赖项并递归重新加载。值 -1 表示从不检查页面。这是生产环境中的默认值。值 0 表示始终检查页面。值 1 表示每秒检查一次页面。这是开发环境中的默认值。在很少更改 JSP 的生产环境中,请考虑根据您的调整要求将 pageCheckSeconds 的值更改为 60 或更大。

来源:http ://docs.oracle.com/cd/E21764_01/web.1111/e13712/weblogic_xml.htm#i1038490

强制重新部署

重新启动 Weblogic 服务器不会强制它重新部署 Web 应用程序(尤其是在生产模式下)。

解决方案 使用命令行显式触发“重新部署”生命周期操作,如下所示:

java -cp weblogic.jar weblogic.Deployer -redeploy [-remote -adminurl t3://hostname:hostport] -username login -password password -name webapp.name [-upload -source webapp.war]
  • 请注意,这比, 尤其-redeploy是 WAYS 安全得多。-update使用 Weblogic <= 10.x

  • 仅当服务器不是本地服务器时,才在 [ ] 之间保留第一个块。在这种情况下删除 [ ]。

  • 在 [ ] 之间保留第二个块,如果您想在同一步骤中合并WAR 文件上传,这更简单。在这种情况下删除 [ ]。

于 2013-05-28T13:02:01.603 回答
1

为避免这种情况,您应该首先更新您的模块,然后重新启动服务器。这应该可以解决您的问题。

尽管提到的过程总是给出 100% 的正确性。但是您可以尝试上述步骤。

于 2012-10-08T10:52:59.817 回答