2013-12-09 1 views
0

У меня ошибка при попытке запуска простого примера JAX-RS. Я использую jaxrs-ri-2.4.1 и встроенный сервер Jetty с плагином «Запуск Jetty» для eclipse. Спасибо.NoClassDefFoundError работает с простым приложением для отдыха на причале

web.xml 
<servlet> 
    <servlet-name>restServlet</servlet-name> 
    <servlet-class>org.glassfish.jersey.servlet.ServletContainer</servlet-class> 
    <init-param> 
     <param-name>jersey.config.server.provider.packages</param-name> 
     <param-value>path_to_class.FormsRestService</param-value> 
    </init-param> 
</servlet> 

<servlet-mapping> 
    <servlet-name>restServlet</servlet-name> 
    <url-pattern>/rest/</url-pattern> 
</servlet-mapping> 

FormsRestService.java 
package path_to_class; 

import javax.ws.rs.GET; 
import javax.ws.rs.Path; 
import javax.ws.rs.Produces; 
import javax.ws.rs.core.MediaType; 

@Path("/") 
public class FormsRestService { 
@GET 
@Produces(MediaType.TEXT_PLAIN) 
public String getStringHello(){ 
    return "Hello Jersey!"; 
} 
} 

И исключение кратко (или полный текст здесь http://pastebin.com/fFMb7Y2a)

Caused by: 

java.lang.NoClassDefFoundError: org/glassfish/jersey/server/ContainerException 
at java.lang.Class.getDeclaredConstructors0(Native Method) 
at java.lang.Class.privateGetDeclaredConstructors(Unknown Source) 
at java.lang.Class.getConstructor0(Unknown Source) 
at java.lang.Class.newInstance(Unknown Source) 
at org.mortbay.jetty.servlet.Holder.newInstance(Holder.java:153) 
at org.mortbay.jetty.servlet.ServletHolder.initServlet(ServletHolder.java:428) 
...... 
at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:404) 
at org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:410) 
at org.mortbay.thread.QueuedThreadPool$PoolThread.run(QueuedThreadPool.java:582) 

I'moved к причалу 7, теперь у меня есть такое исключение: pastebin.com/ZdRXzeED

+0

Кажется, что вам не хватает JARs Glassfish. Я бы начал там. – CodeChimp

+0

Обновите версию Jetty. 'org.mortbay.jetty' для Jetty 6 и ранее. Это 4 года и более 100 стабильных релизов устарели. –

+0

Joakim Erdfelt, я любил причал 7, теперь у меня есть такое исключение: http://pastebin.com/ZdRXzeED –

ответ

0

jaxrs-ri-2.4.1 ожидает, что вы бежать на Glassfish.

Посмотрите на этот старый вопрос (и ответы) для некоторой помощи.

Integrating Jetty with JAX-RS-Jersey

Смежные вопросы