2013-01-14 21 views
5

Ho integrato con successo Grizzly v2.1.9 con Jersey e Spring. Ma non è riuscito a farlo funzionare quando si prova a migrare Grizzly nella versione 2.2.19.Integrazione Grizzly2.2.X con Jersey e Spring

Il codice originale con Grizzly v2.1.9 è il seguente.

HttpServer server = new HttpServer(); 
NetworkListener listener = new NetworkListener("grizzly2", "localhost", 3388); 
server.addListener(listener); 

ServletHandler sa = new ServletHandler();  
sa.setContextPath("/");  
sa.setServletInstance(new SpringServlet()); 
sa.addContextParameter("contextConfigLocation", "classpath:spring-context.xml");     
sa.addServletListener("org.springframework.web.context.ContextLoaderListener"); 
sa.addServletListener("org.springframework.web.context.request.RequestContextListener");     

ServerConfiguration config = server.getServerConfiguration(); 
config.addHttpHandler(sa, new String[] {"/"}); 
server.start(); 

E il nuovo codice con Grizzly v2.2.19 è come sotto

HttpServer server = new HttpServer(); 
NetworkListener listener = new NetworkListener("grizzly2", "localhost", 3388); 
WebappContext ctx = new WebappContext("ctx","/");  
final ServletRegistration reg = ctx.addServlet("spring", new SpringServlet()); 
reg.addMapping("/*"); 
ctx.addContextInitParameter("contextConfigLocation", "classpath:spring-context.xml"); 
ctx.addListener("org.springframework.web.context.ContextLoaderListener");   
ctx.addListener("org.springframework.web.context.request.RequestContextListener"); 
ctx.deploy(server); 
server.start(); 

Il nuovo codice potrebbe essere compilato ed eseguito senza alcuna eccezione. Tuttavia tutti gli URL che devono essere inoltrati a diversi metodi da Jersey vengono ora tutti inoltrati alla pagina predefinita "/".

UPDATE

Per qualcuno che incontra lo stesso problema.

E 'fissato dopo Grizzly2.2.20

risposta

3

Finalmente ottengo una soluzione dopo l'invio di una e-mail a java.net.

Change

WebappContext ctx = new WebappContext("ctx","/"); 

a

WebappContext ctx = new WebappContext("ctx",""); 

possono seguire questa link per maggiori dettagli.

Problemi correlati