Question

I need to add jetty servlet into my already existing server implemented using dropwizard framework.

To be more specific:

  1. I have a restful resource Foo mapped to url "localhost:8080/foo" with CRUD operations.
  2. Now I need a jetty servlet mapped to url "localhost:8080/bar" and handles all requests to this url (mainly GET and POST).

I could not get a clue how to do this after some googlings. Could someone please give me a direction or a snippet? Thanks!

Was it helpful?

Solution

If you're using Dropwizard 0.6.2 you should be able to do something like this in your run method:

ServletBuilder builder = environment.addServlet(myServlet, "/bar");

If you're using Dropwizard 0.7.0 try this:

environment.getApplicationContext().addServlet("org.example.MyServlet", "/bar");

OTHER TIPS

For 0.7.0 you have the ServletEnvironment and a couple of ways to add servlets. For example:

@Override
public void run(ApplicationConfiguration configuration, Environment environment) throws Exception {
    environment.servlets().addServlet("foo", MySerlvet.class).addMapping("/bar");
}

Incidentally, you also have the AdminEnvironment, which is an extension of ServletEnvironment and any servlets added to this in the same way would accessible on /admin/bar.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top