0

我正在开发一个在 JBoss 7.1.x 中执行 EJB 编程部署的应用程序。这是代码片段:

// connect
CommandContext cmdCtx = 
  CommandContextFactory.getInstance().newCommandContext(...);
cmdCtx.connectController();
ModelControllerClient ctrlClient = cmdCtx.getModelControllerClient();
// deploy
String command = 
  String.format("deploy \"%s\" --name=%s --server-groups=%s", path, name, group);
ModelNode request = cmdCtx.buildRequest(command);
ctrlClient.execute(request);

现在,我如何确定部署实际上已经完成?调用ctrlClient.execute(request)几乎立即返回,但服务器会继续处理部署一段时间。我需要知道它什么时候真正完成,也许它是否成功。

我的一个想法是编写自己的日志附加程序,并查找一些预定义的消息,但有更好的解决方案吗?

4

1 回答 1

0

不要使用 CLI API,而是尝试使用org.jboss.as.controller.client.helpers.standalone.DeploymentPlanorg.jboss.as.controller.client.helpers.domain.DeploymentPlanAPI。您可以在maven-plugin源代码中看到一个示例。(请注意,这是您正在部署到域服务器的域之一)

于 2013-03-25T16:54:28.230 回答