erholsame Service-Schnittstelle mit Trikot
Kann ich einen erholsamen Service mit Schnittstelle und Implementierungsklasse erstellen? und alle JAX-RS-bezogenen Importe in die Schnittstelle gehen? ich benutze jersey2.4 und jetty8.1.
Hier ist meine Schnittstelle:
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;
}
}
hier ist meine 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>
Ich habe dieses Service-Provider-Paket (foo.bar) registriert, aber es beklagt sich, dies zu sagen - javax.servlet.ServletException: Eine MultiException hat 1 Ausnahmen. Sie sind: | 1. java.lang.NoSuchMethodException: In der foo.bar.MyService-Klasse konnte kein geeigneter Konstruktor gefunden werden
Als ich es mit dem Implementierungsklassenpaket (foo.bar.impl) versuchte, beklagte es sich, dass ich dies sage - ich erhalte HTTP ERROR 404; tut nichts anderes; Keine Ausnahmen auf der Konsole
Als ich beides ausprobiert habe - es klagt genauso wie oben:
javax.servlet.ServletException: Eine MultiException hat 1 Ausnahmen. Sie sind: | 1. java.lang.NoSuchMethodException: In der foo.bar.MyService-Klasse konnte kein geeigneter Konstruktor gefunden werden
Können Sie bitte helfen? Was mache ich falsch?