在使用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资源中使用的公共类/代码。
感谢。
答案 0 :(得分:1)
使用new ValidateToken.validate(...
或制作validate
方法static
。这实际上是错误说明的内容:
没有方法签名:静态 .... ValidateToken.validate()适用于参数类型:()值:[]`