[image: project.PNG]
I have a jersey project in this structure, which consist of swagger 
annotations . I have used it with standalone tomcat server and the API is 
running fine. Now I am trying to run the same API with an embedded Grizzly 
server. I have written the main function for that as follows:



import org.glassfish.grizzly.http.server.HttpServer;
import org.glassfish.jersey.grizzly2.httpserver.GrizzlyHttpServerFactory;
import org.glassfish.jersey.server.ResourceConfig;

import java.io.IOException;
import java.net.URI;

/**
 * Main class.
 *
 */
public class Main {
    // Base URI the Grizzly HTTP server will listen on
    public static final String BASE_URI = "http://localhost:8087";;

    /**
     * Starts Grizzly HTTP server exposing JAX-RS resources defined in this 
application.
     * @return Grizzly HTTP server.
     */
    public static HttpServer startServer() {
        // create a resource config that scans for JAX-RS resources and 
providers
        // in de.fraunhofer.fit.mas package
        final ResourceConfig rc = new 
ResourceConfig().packages("de.fraunhofer.fit.mas","io.swagger.jaxrs.listing");

        // create and start a new instance of grizzly http server
        // exposing the Jersey application at BASE_URI
        return GrizzlyHttpServerFactory.createHttpServer(URI.create(BASE_URI), 
rc);
    }

    /**
     * Main method.
     * @param args
     * @throws IOException
     */
    public static void main(String[] args) throws IOException {
        final HttpServer server = startServer();
        System.out.println(String.format("Jersey app started with WADL 
available at "
                + "%sapplication.wadl\nHit enter to stop it...", BASE_URI));
        System.in.read();
        server.stop();
    }
}


Unfortunately, my servlet configure file is not being found. I get a error 
of this kind :

Exception in thread "main" java.lang.NoClassDefFoundError: 
javax/servlet/ServletConfig
at java.lang.Class.getDeclaredConstructors0(Native Method)
at java.lang.Class.privateGetDeclaredConstructors(Class.java:2671)
at java.lang.Class.getConstructors(Class.java:1651)
at 
org.glassfish.jersey.server.model.MethodHandler$ClassBasedMethodHandler.<init>(MethodHandler.java:265)
at 
org.glassfish.jersey.server.model.MethodHandler.create(MethodHandler.java:155)
at 
org.glassfish.jersey.server.model.ResourceMethod$Builder.createInvocable(ResourceMethod.java:559)
at 
org.glassfish.jersey.server.model.ResourceMethod$Builder.build(ResourceMethod.java:545)
at 
org.glassfish.jersey.server.model.Resource$Builder.processMethodBuilders(Resource.java:666)
at 
org.glassfish.jersey.server.model.Resource$Builder.buildResourceData(Resource.java:602)
at 
org.glassfish.jersey.server.model.Resource$Builder.build(Resource.java:658)
at org.glassfish.jersey.server.model.Resource.from(Resource.java:801)
at 
org.glassfish.jersey.server.ResourceBagConfigurator.init(ResourceBagConfigurator.java:79)
at 
org.glassfish.jersey.server.ApplicationHandler.initialize(ApplicationHandler.java:354)
at 
org.glassfish.jersey.server.ApplicationHandler.lambda$initialize$1(ApplicationHandler.java:316)
at org.glassfish.jersey.internal.Errors.process(Errors.java:316)
at org.glassfish.jersey.internal.Errors.process(Errors.java:298)
at 
org.glassfish.jersey.internal.Errors.processWithException(Errors.java:256)
at 
org.glassfish.jersey.server.ApplicationHandler.initialize(ApplicationHandler.java:315)
at 
org.glassfish.jersey.server.ApplicationHandler.<init>(ApplicationHandler.java:282)
at 
org.glassfish.jersey.server.ApplicationHandler.<init>(ApplicationHandler.java:269)
at 
org.glassfish.jersey.grizzly2.httpserver.GrizzlyHttpContainer.<init>(GrizzlyHttpContainer.java:334)
at 
org.glassfish.jersey.grizzly2.httpserver.GrizzlyHttpServerFactory.createHttpServer(GrizzlyHttpServerFactory.java:117)
at Main.startServer(Main.java:27)
at Main.main(Main.java:36)
Caused by: java.lang.ClassNotFoundException: javax.servlet.ServletConfig
at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:349)
at java.lang.ClassLoader.loadClass(ClassLoader.java:357)


Can someone help me in this regard? 


-- 
You received this message because you are subscribed to the Google Groups 
"Swagger" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/d/optout.

Reply via email to