If you enable logging, it will list the root resources or warn that no
root resources are registered.
To enable package scanning, I would do this:
public class Application extends ResourceConfig
{
@Inject
public Application(ServiceLocator serviceLocator)
{
packages("rest");
// ...
}
}
Gili
On 04/09/2014 12:00 PM, Wermström Emma (Consultant) wrote:
>
> Thanks for spotting that.
>
> I have now replaced
>
> jerseyServlet.setInitParameter("jersey.config.server.provider.packages","rest");
>
> with
>
> jerseyServlet.setInitParameter(ServerProperties./PROVIDER_PACKAGES/,"rest");
>
> and added import statement
> *import*org.glassfish.jersey.server.ServerProperties;
>
> I still get the same error. Brower says HTTP 404 not found… Are there
> any other servlet parameters besides PROVIDER_PACKAGES that need to be
> initialized in jersey 2?
>
> This is my rest package. It is identical for jersey 1.x and jersey 2.x:
>
> *package*rest;
>
> *import*javax.ws.rs.GET;
>
> *import*javax.ws.rs.Path;
>
> *import*javax.ws.rs.PathParam;
>
> *import*javax.ws.rs.Produces;
>
> *import*javax.ws.rs.core.MediaType;
>
> *import*dto.Student;
>
> @Path("/xmlServices")
>
> *public**class*XMLStudentSvc {
>
> @GET
>
> @Path("/student/{name}")
>
> @Produces(MediaType./APPLICATION_XML/)
>
> *public*Student getStudent( @PathParam("name") String name ) {
>
> Student st = *new*Student(name, "Smith", 22,
> 1);
>
> *return*st;
>
> }
>
> }
>
> There is a Student class, which is also identical in both cases.
>
> Best regards,
>
> Emma
>
> *From:*Gili T. [mailto:cowwoc_at_bbs.darktech.org]
> *Sent:* den 4 september 2014 5:35
> *To:* users_at_jersey.java.net
> *Subject:* [Jersey] Re: Problems migrating from jersey 1.18 to jersey 2.12
>
> On second glance, the problem is you did not replace
> com.sun.jersey.config.property.packages with the equivalent in Jersey
> 2 so your root resources are not being found.
>
> Gili
>
> On Sep 4, 2014 11:28 AM, cowwoc_at_bbs.darktech.org
> <mailto:cowwoc_at_bbs.darktech.org> wrote:
>
> The problem doesn't seem to be in the code you quoted so look in the
> remaining code.
>
> Gili
>
> On Sep 4, 2014 10:06 AM, "Wermström Emma (Consultant)"
> <emma.wermstrom_at_consultant.volvo.com
> <mailto:emma.wermstrom_at_consultant.volvo.com>> wrote:
>
> Very good question.
>
> Whenever I try a GET request to the rest web service (using a client
> or browser) I get HTTP 404 Not found. This does not happen in the
> jersey 1.x case.
>
> I’m also using eclipse. I’m not using maven.
>
> Best regards,
>
> Emma
>
> *From:*Gili T. [mailto:cowwoc_at_bbs.darktech.org
> <mailto:cowwoc_at_bbs.darktech.org>]
> *Sent:* den 4 september 2014 3:54
> *To:* users_at_jersey.java.net <mailto:users_at_jersey.java.net>
> *Subject:* [Jersey] Re: Problems migrating from jersey 1.18 to jersey 2.12
>
> What is actually not working? What errors do you get?
>
> Gili
>
> On Sep 4, 2014 9:10 AM, "Wermström Emma (Consultant)"
> <emma.wermstrom_at_consultant.volvo.com
> <mailto:emma.wermstrom_at_consultant.volvo.com>> wrote:
>
> Hi!
>
> Recently I've been trying to setup a restful web service using jetty
> and jersey following the tutorial found here:
> http://jlunaquiroga.blogspot.se/2014/01/restful-web-services-with-jetty-and.html
>
> I've only implemented the XML web service.
>
> I had no problems implementing this using Jersey 1.x (jersey-bundle
> 1.18). But I can't migrate to the latest jersey 2.x (jersey 2.12).
>
> So should I migrate at all, or just stick with jersey 1.x? I would
> like to know why the restful web service does not work with jersey 2.12.
>
> I'm using jetty 9.2.0.RC0 and JavaSE-1.7 in both cases.
>
> *Server code using Jersey 1.18:*
>
> *package*examplejersey1.server;
>
> *import*org.eclipse.jetty.server.Server;
>
> *import*org.eclipse.jetty.servlet.ServletContextHandler;
>
> *import*org.eclipse.jetty.servlet.ServletHolder;
>
> *import*com.sun.jersey.spi.container.servlet.ServletContainer;
>
> public class MinimalServerRest {
>
> public static void main(String[] args) throws Exception {
>
> ServletHolder sh = new ServletHolder(ServletContainer.class);
>
> sh.setInitParameter("com.sun.jersey.config.property.resourceConfigClass",
> "com.sun.jersey.api.core.PackagesResourceConfig");
>
> sh.setInitParameter("com.sun.jersey.config.property.packages",
> "rest");//Set the package where the services reside
>
> sh.setInitParameter("com.sun.jersey.api.json.POJOMappingFeature",
> "true");
>
> Server server = new Server(9999);
>
> ServletContextHandler context = new ServletContextHandler(server,
> "/", ServletContextHandler.SESSIONS);
>
> context.addServlet(sh, "/*");
>
> server.start();
>
> server.join();
>
> }
>
> }
>
> *Server code using Jersey 2.12:*
>
> *package*examplejersey2.server;
>
> **
>
> *import*org.eclipse.jetty.server.Server;
>
> *import*org.eclipse.jetty.servlet.ServletContextHandler;
>
> *import*org.eclipse.jetty.servlet.ServletHolder;
>
> public class MinimalServerRest {
>
> public static void main(String[] args) throws Exception {
>
> Server server = new Server(9999);
>
> ServletContextHandler context = new
> ServletContextHandler(ServletContextHandler.SESSIONS);
>
> ServletHolder jerseyServlet =
> context.addServlet(org.glassfish.jersey.servlet.ServletContainer.class, "/*");
>
> jerseyServlet.setInitOrder(1);
>
> jerseyServlet.setInitParameter("jersey.config.server.provider.packages","rest");
>
> context.setContextPath("/");
>
> context.setServer(server);
>
> server.start();
>
> server.join();
>
> }
>
> }
>
> The server provider package “rest” is identical in both cases. The
> clients are a little different but that doesn't seem to be the
> problem. I doesn't work using a simple browser either in the Jersey
> 2.x case.
>
> Notable is that for the case using jersey 1.x I have included the
> following jars in my java project:
>
> +- file:/C:/Users/xxx/workplace/example/lib/jetty-all-9.2.0.RC0.jar
>
> +- file:/C:/Users/xxx/workplace/example/lib/javax.servlet-api-3.1.0.jar
>
> +- file:/C:/Users/xxx/workplace/example/lib/jersey-bundle-1.18.jar
>
> +- file:/C:/Users/xxx/workplace/example/lib/asm-3.1.jar
>
> For the case using jersey 2.x I have included the following jars in my
> java project:
>
> +-
> file:/C:/Users/xxx/workplace/examplejersey2/lib/aopalliance-repackaged-2.3.0-b05.jar
>
> +- file:/C:/Users/xxx/workplace/examplejersey2/lib/asm-debug-all-5.0.2.jar
>
> +- file:/C:/Users/xxx/workplace/examplejersey2/lib/eclipselink.jar
>
> +- file:/C:/Users/xxx/workplace/examplejersey2/lib/guava-18.0.jar
>
> +- file:/C:/Users/xxx/workplace/examplejersey2/lib/hk2-api-2.3.0-b05.jar
>
> +-
> file:/C:/Users/xxx/workplace/examplejersey2/lib/hk2-locator-2.3.0-b05.jar
>
> +- file:/C:/Users/xxx/workplace/examplejersey2/lib/hk2-utils-2.3.0-b05.jar
>
> +- file:/C:/Users/xxx/workplace/examplejersey2/lib/javassist-3.18.1-GA.jar
>
> +-
> file:/C:/Users/xxx/workplace/examplejersey2/lib/javax.annotation-api-1.2.jar
>
> +-
> file:/C:/Users/xxx/workplace/examplejersey2/lib/javax.inject-2.3.0-b05.jar
>
> +-
> file:/C:/Users/xxx/workplace/examplejersey2/lib/javax.servlet-api-3.1.0.jar
>
> +- file:/C:/Users/xxx/workplace/examplejersey2/lib/javax.ws.rs-api-2.0.jar
>
> +- file:/C:/Users/xxx/workplace/examplejersey2/lib/jaxb-api-2.2.7.jar
>
> +- file:/C:/Users/xxx/workplace/examplejersey2/lib/jersey-client.jar
>
> +- file:/C:/Users/xxx/workplace/examplejersey2/lib/jersey-common.jar
>
> +-
> file:/C:/Users/xxx/workplace/examplejersey2/lib/jersey-container-servlet.jar
>
> +-
> file:/C:/Users/xxx/workplace/examplejersey2/lib/jersey-container-servlet-core.jar
>
> +-
> file:/C:/Users/xxx/workplace/examplejersey2/lib/jersey-entity-filtering-2.12.jar
>
> +- file:/C:/Users/xxx/workplace/examplejersey2/lib/jersey-guava-2.11.jar
>
> +-
> file:/C:/Users/xxx/workplace/examplejersey2/lib/jersey-media-moxy-2.12.jar
>
> +- file:/C:/Users/xxx/workplace/examplejersey2/lib/jersey-server.jar
>
> +- file:/C:/Users/xxx/workplace/examplejersey2/lib/jetty-all-9.2.0.RC0.jar
>
> +- file:/C:/Users/xxx/workplace/examplejersey2/lib/org.osgi.core-4.2.0.jar
>
> +-
> file:/C:/Users/xxx/workplace/examplejersey2/lib/osgi-resource-locator-1.0.1.jar
>
> +- file:/C:/Users/xxx/workplace/examplejersey2/lib/persistence-api-1.0.jar
>
> +-
> file:/C:/Users/xxx/workplace/examplejersey2/lib/validation-api-1.1.0.Final.jar
>
> Thanks for your support!
>
> Best regards,
>
> Emma
>