Weblogic 如何覆盖编辑锁

Weblogic 如何覆盖编辑锁,weblogic,wlst,Weblogic,Wlst,我正在写一个WLST脚本来部署一些WAR和EAR。但是,脚本会间歇性超时,因为它似乎无法获得编辑锁(此脚本是许多其他脚本链的一部分)。我想知道,有没有办法覆盖或停止服务器上的任何当前锁?这只是一个暂时的解决办法,但为了时间的利益,现在就可以了 谢谢。您可以尝试设置等待时间和超时: startEdit([waitTimeInMillis], [timeoutInMillis], [exclusive]). 其他脚本是否出错,导致会话锁定?您可以尝试在这些方面添加异常处理。此外,如果您在管理控

我正在写一个WLST脚本来部署一些WAR和EAR。但是,脚本会间歇性超时,因为它似乎无法获得编辑锁(此脚本是许多其他脚本链的一部分)。我想知道,有没有办法覆盖或停止服务器上的任何当前锁?这只是一个暂时的解决办法,但为了时间的利益,现在就可以了


谢谢。

您可以尝试设置等待时间和超时:

startEdit([waitTimeInMillis], [timeoutInMillis], [exclusive]).  
其他脚本是否出错,导致会话锁定?您可以尝试在这些方面添加异常处理。此外,如果您在管理控制台中启用了“自动获取锁”,并且您使用管理控制台,那么如果您同时运行脚本,即使您没有进行“需要锁”的更改,有时也会导致问题


此外,您是否对链接脚本使用同一用户?

在WLST中,您可以将一个数字作为参数传递以获得独占锁。这允许该脚本获取与管理员从控制台锁定时使用的常规锁不同的锁。它还可以防止同一脚本的两个实例在每个o上执行ther

但是,这会创建复杂的更改合并场景,最好(通过流程)避免这些场景

可以找到Oracle关于配置锁的文档

或者,如果您希望脚本临时解除任何现有锁,而不考虑挂起的更改,那么您也可以从控制台禁用更改管理,从而最大限度地减少由此带来的不便


WLST还包含
cancelEdit
命令,您可以在
startEdit
之前运行该命令。希望这些选项之一能够成功!

只要您作为管理用户运行WLST,就应该能够使用edit()跳转到现有的编辑会话命令-我已经对两个管理员用户做了一个快速测试,一个在管理控制台,一个使用WLST,它似乎工作正常-我可以在WLST解释器中看到管理控制台会话中的更改

您可以在对
startEdit
的调用周围放置一个非常简单的异常处理程序,该处理程序将记录异常的堆栈跟踪,但不执行其他操作。然后依靠
edit
调用将您弹出到更改会话中


但是,如果另一个脚本启动了编辑会话,并且希望能够提交该更改会话本身,那么依赖它将是一件棘手的事情——您将在多次调用中遇到异常和不可靠的行为。

要从另一个管理员处获取配置更改锁,请执行以下操作: 如果其他管理员已拥有配置锁,则会显示以下消息:另一个用户已拥有该锁。您需要等待释放该锁,或者获取该锁

  • 将更改中心定位在屏幕的左上角 管理控制台
  • 单击“获取锁定并编辑”
  • 进行配置更改
  • 在更改中心中,单击“激活更改”。并非所有更改都会生效 立即生效。有些需要重新启动(请参阅使用更改) 中)

  • 其他脚本都没有出错。肯定需要更多的异常处理,但我必须在截止日期前完成。我将不得不调查是否让管理控制台保持打开状态,我没有意识到它可能会自动锁定。这很可能是问题所在。所有脚本都是同一用户。谢谢谢谢你的帮助!