以下方法不允许我的servlet容器启动:
@PUT
public String upload(final Customer customer, final Control control) {
// ...
}
我得到了,并不奇怪:
SEVERE: Missing dependency for method ... at index 0
SEVERE: Missing dependency for method ... index 1
SEVERE: Method, ..., is not recognized as valid resource method.
我为每种类型实现了MessageBodyReaders。删除任何参数使servlet容器能够正常启动,因此我怀疑必须对将通过Entity-Providers解析的参数数量进行限制。
问题是我需要这两个参数,因为我提供了SOAP和REST支持,当然,我不能自由地改变方法签名,而且我也没有想要创建一个特定的Jersey方法和一个特定的JAX-WS方法作为入口点。
我正在使用Jersey 1.7。
答案 0 :(得分:1)
JAX-RS只允许一个实体参数。共振非常简单:每个请求最多只能有一个主体(规范不支持多部分) 所以你必须创建两个方法。 顺便说一句,我认为将JAXRS和JAXWS混合在同一个类中并不是一个好习惯。