ここでは、必要な文字列キーを DRY にしようとしているだけですが、機能する唯一の方法は、文字列を直接割り当てに入れることです: request['RequestStopwatch.start'] = System.currentTimeMillis()
.
ポインタはありますか?
class RequestStopwatchFilters {
def REQ_KEY = 'RequestStopwatch.start'
def filters = {
all(controller:'*', action:'*') {
before = {
log.debug(""+System.currentTimeMillis() + " " + request)
// NULL pointer exception on REQ_KEY here:
request[REQ_KEY] = System.currentTimeMillis()
}
after = { Map model ->
if (log.isDebugEnabled()) {
// NULL pointer exception on REQ_KEY here:
log.debug("Stopped request before view at " + (System.currentTimeMillis() - request[REQ_KEY]) + "ms")
}
}
afterView = { Exception e ->
if (log.isDebugEnabled()) {
// NULL pointer exception on REQ_KEY here:
log.debug("Stopped request at " + (System.currentTimeMillis() - request[REQ_KEY]) + "ms")
}
}
}
}
}