Grails 我如何从我的服务中获得状态?

Grails 我如何从我的服务中获得状态?,grails,groovy,Grails,Groovy,我有服务类,我有一项服务: class service { def activate(def part1,def part2) { //here I check whether the provided part1 and part2 are correct //If so I open a keystore or else catch the exception. . try { //code goes here. . . . }

我有服务类,我有一项服务:

class service { 
  def activate(def part1,def part2) { 
    //here I check whether the provided part1 and part2 are correct 
    //If so I open a keystore or else catch the exception. . 
    try { 
      //code goes here. . . . 
    } 
    catch(IOException e) 
    { 
      log.error("") 
    } 
  } 
}
现在,在我的控制器代码中,我称之为服务。我想通过提供的
part1
part2
知道
activate
服务是否成功打开密钥库。最初,我在
try/catch
块中添加了一个布尔变量来获取状态,但我想这是一个糟糕的做法

除此之外,我如何知道主动服务是否成功


提前感谢。

您可以在这里采取以下几种方法:

activate
可以在打开密钥库失败时引发异常,而不是仅仅记录错误(而不是捕获并记录错误)。但这取决于应用程序的具体情况——如果没有打开密钥库,这实际上是一种错误情况吗?或者是否可能/可能无法打开密钥库

您可以让
activate
返回布尔值true/false,该方法的调用者可以检查
activate