spokojny serwis interfejsu z koszulką

Czy mogę stworzyć spokojny serwis z interfejsem i klasą implementacji? a wszystkie importy związane z JAX-RS trafiają do interfejsu? używam jersey2.4 i jetty8.1.

oto mój interfejs:

MyService.java

package foo.bar; 

@Path("/abc")
public interface MyService {

     @GET
     @JSONP
     @Path("/method/{id}")
     public MyResponse getStuff(@PathParam("id") Integer id);

}

MyServiceImpl.java

package foo.bar.impl;

public class MyServiceImpl implements MyService {

     public MyServiceImpl() {}

     @Override
     public MyResponse getStuff(Integer id) {
         // do stuff
         return MyResponse;
     }
}

oto mój plik web.xml:

<servlet>
    <servlet-name>Scivantage REST Service</servlet-name>
    <servlet-class>org.glassfish.jersey.servlet.ServletContainer</servlet-class>
    <init-param>
        <param-name>jersey.config.server.provider.packages</param-name>
        <param-value>foo.bar</param-value>
    </init-param>
    <load-on-startup>1</load-on-startup>
</servlet>

Zarejestrowałem ten pakiet usługodawcy (foo.bar), ale narzeka, że ​​to mówi - javax.servlet.ServletException: wyjątek MultiException ma 1 wyjątek. Są to: | 1. java.lang.NoSuchMethodException: Nie można znaleźć odpowiedniego konstruktora w klasie foo.bar.MyService.

Kiedy próbowałem z pakietem implementacji klasy (foo.bar.impl), narzeka, mówiąc: otrzymuję HTTP ERROR 404; nie robi nic innego; żadnych wyjątków na konsoli

Kiedy próbowałem obu - narzeka tak samo jak powyżej:

javax.servlet.ServletException: wyjątek MultiException ma 1 wyjątek. Są to: | 1. java.lang.NoSuchMethodException: Nie można znaleźć odpowiedniego konstruktora w klasie foo.bar.MyService.

Czy możesz pomóc? Co robię źle?

questionAnswers(5)

yourAnswerToTheQuestion