Grails JAX-RS在src / groovy中调用一个类给出错误 - 消息:没有方法签名:适用于参数类型

时间:2015-06-16 11:24:15

标签: grails groovy jax-rs

在使用jaxrs插件开发其余的api时,我需要创建一些我在“src / groovy”中创建的公共类。下面是班级

class ValidateToken {
    String validate(String token){
        println(token)  
        return "test"
    }
    //...

在资源文件(jaxrs)中,这就是我正在做的事情

def instance=ValidateToken.validate("test")

这会在运行时抛出错误

The RuntimeException could not be mapped to a response, re- throwing to the HTTP container
Message: No signature of method: static com.dogmasystems.touroperatorportal.Vali
dateToken.validate() is applicable for argument types: () values: []
Possible solutions: validate(java.lang.String), wait()

我无法理解为什么会这样?虽然我发送的是字符串值,但它是作为List发送的。此外,如果将方法复制到同一资源文件,则它可以正常工作并将传递的参数视为String。

另请告诉我在哪里保留将在不同Jax-RS资源中使用的公共类/代码。

感谢。

1 个答案:

答案 0 :(得分:1)

使用new ValidateToken.validate(...或制作validate方法static。这实际上是错误说明的内容:

  

没有方法签名:静态 .... ValidateToken.validate()适用于参数类型:()值:[]`