0
我想部署使用的球衣和GlassFish 4.我收到以下異常顯示RESTful服務的狀態,一個簡單的應用:澤西2.0 - Glassfish的4塑像例外
org.glassfish.jersey.internal.ServiceConfigurationError:
org.glassfish.jersey.internal.spi.AutoDiscoverable: The class
org.glassfish.jersey.server.internal.monitoring.MonitoringAutodiscoverable implementing
provider interface org.glassfish.jersey.internal.spi.AutoDiscoverable could not be
instantiated: Cannot cast
org.glassfish.jersey.server.internal.monitoring.MonitoringAutodiscoverable to
org.glassfish.jersey.internal.spi.AutoDiscoverable
我的web.xml看起來是這樣的
<web-app>
<servlet>
<servlet-name>Servlet</servlet-name>
<servlet-class>org.glassfish.jersey.servlet.ServletContainer</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>Servlet</servlet-name>
<url-pattern>/*</url-pattern>
</servlet-mapping>
</web-app>
我的服務是這樣的:
@Path(MyServices.SERVICE_URL)
public class MyServices
{
@GET
@Produces("text/html")
public String getStatus()
{
return "My service is running.";
}
}
有誰知道我在這裏做錯了什麼?
編輯 我加入這個類來我的戰爭項目:
@ApplicationPath("/*")
public class MyApplication extends ResourceConfig
{
public MyApplication()
{
packages("com.java.services");
}
}
,我仍然得到同樣的異常:
javax.servlet.ServletException: Servlet.init() for servlet com.java.services.MyApplication threw exception
安東尼,請看我上面的評論。我仍然得到同樣的例外。我嘗試了web.xml,沒有web.xml,web.xml和MyApplication等。 – user2287966
嗯,我只是運行你的示例以確保(沒有web.xml,並直接擴展'Application'我沒有任何依賴我的項目球衣)。也許你擰你的類路徑或什麼? (你不需要依賴項目,如果你使用Maven運行你的應用程序,你只需要''jax.ws.rs-api'作爲'provided'。[GlassFish已經包含](https://jersey.java.net /documentation/latest/user-guide.html#servlet-app-glassfish)一切都爲你 –
我注意到我使用球衣2.6,出於某種原因,它給我帶來了問題,我從classpath中刪除了這個jar,並使用了 – user2287966