How can the following produce this error when they have different URLs ?
@Path(\"/job/{empId}/empProfile\")
public EmpProfileResource delegateToEventProfileR
Remove the @Path("/") from the sub-resource classes. Sub-resource classes don't need them. And if they have them, they get added as root resource classes, if you are scanning for @Path annotated classes. And this is the problem. You haven't show the methods of the sub-resource classes, but because the have the same root path, I would imagine that the problem is caused by some overlapping methods. So just remove the @Path("/") on sub-resource classes, and you should be OK.