Jersey 泽西岛“;找不到合适的构造函数“;用于子资源

Jersey 泽西岛“;找不到合适的构造函数“;用于子资源,jersey,jax-rs,Jersey,Jax Rs,这个jax-rsapi在CXF上运行得很好,但是需要迁移到Jersey,现在遇到了这个问题 我有一个根“CasesResource”和一个子资源“CasesResource”(例如“/cases/1234abc”)。子资源“CaseResource”是使用CaseResource传入的参数构造的。在应用程序类的getClasses方法中只添加CasesResource @Path("cases") public class CasesResource extends Conf

这个jax-rsapi在CXF上运行得很好,但是需要迁移到Jersey,现在遇到了这个问题

我有一个根“CasesResource”和一个子资源“CasesResource”(例如“/cases/1234abc”)。子资源“CaseResource”是使用CaseResource传入的参数构造的。在应用程序类的getClasses方法中只添加CasesResource

@Path("cases")
public class CasesResource extends ConfigurationDepenentResource
{ 
    
    public CasesResource()
    {
        super();
    }

    @GET
    @Produces({ MediaType.TEXT_XML, MediaType.APPLICATION_JSON })
    public Response getList(@Context HttpServletRequest req, @QueryParam("sort") @Encoded String sort)
    {
        ...
    }

    @POST
    @Consumes(MediaType.APPLICATION_FORM_URLENCODED)
    @Produces(MediaType.APPLICATION_JSON)
    public CaseInfoResource upload(...) 
    {
        ...
    }

    @Path("{id}")
    public CaseResource getCaseResource(@PathParam("id") final String caseId, @Context HttpServletRequest req)
    {
        ...
        return new CaseResource(caseId, getConfigurationManager());
    }
}
这是子资源

@Path("/cases/{id}")
public class CaseResource
{
    private final String id;
    private final AbstractWebConfigurationManager configurationManager;

    public CaseResource(String id, AbstractWebConfigurationManager configurationManager)
    {
        super();
        this.id = id;
        this.configurationManager = configurationManager;
    }

我在发帖的时候就想出来了,所以我想我还是把答案贴上去吧。问题是子资源类上的@Path注释。一旦被移除,它就如预期的那样工作了。我想CXF不在乎这些类是否添加到getClasses()中,但Jersey在乎