3

在我们的 Silk4J 测试环境中,我们使用命名约定以便方便地访问窗口。例如我可以

SapWindow pt61 = sap.performTransaction("PT61");

在 SAP 中执行 PT61 事务,它将返回一个窗口,该窗口具有wndPT61Silk4J 对象映射中的标识符。

有时会发生窗口尚未映射的情况。在这种情况下,Silk4J 会导致RuntimeException. 不幸的是,RuntimeException到处都在使用,也就是说,它并不具体。

有没有办法检查对象映射是否存在标识符,以便我可以检测到丢失的标识符并抛出更具体的(自定义)异常来解释该怎么做?

我想做这样的事情:

if (!desktop.isValidIdentifier("wndPT61")) {
    throw new Exception("According to our naming convention ... etc.");
}

我努力了:

  • 我看过所有的方法Desktop,但恕我直言,不存在这样的方法。该exists() 方法已经抛出RuntimeException.
  • 我看过所有的方法Agent,但恕我直言,不存在这样的方法。
  • 我认为这种方法不应该在其他课程中可用,因为桌面和代理是可以进行搜索的最高级别。
  • 当然我可以捕捉到RuntimeException(这就是我目前所做的),但它不是很可靠(因为这样的异常可能有其他原因)而且我不想依赖异常消息。
4

0 回答 0