我已經使用eclipse + glassfish從eclipse部署我的第一個web服務。 我有以下類:用eclipse部署和測試rest-webservice
package com.restfully.shop.services;
import javax.ws.rs.core.*;
import java.util.*;
public class ShoppingApplication extends Application {
private Set<Object> singletons = new HashSet<Object>();
private Set<Class<?>> empty = new HashSet<Class<?>>();
public ShoppingApplication() {
singletons.add(new CustomerResource());
}
@Override
public Set<Class<?>> getClasses() {
return empty;
}
@Override
public Set<Object> getSingletons() {
return singletons;
}
}
和下面的web.xml:
<?xml version="1.0" ?>
<web-app>
<servlet>
<servlet-name>Rest</servlet-name>
<servlet-class>com.restfully.shop.services.ShoppingApplication</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>Rest</servlet-name>
<url-pattern>/*</url-pattern>
</servlet-mapping>
</web-app>
只要我讀了球衣已經包含在GlassFish - ID didnt將任何東西放入lib文件夾的網絡項目。
但HTEN當我啓動應用程序在瀏覽器中:
Exception
javax.servlet.ServletException: PWC1403: Class com.restfully.shop.services.ShoppingApplication is not a Servlet
root cause
java.lang.ClassCastException: com.restfully.shop.services.ShoppingApplication cannot be cast to javax.servlet.Servlet
Glassfish的版本是3.1.1
我也寫了一個簡單的客戶端,連接到服務throught java.io.URL , 但其中一個返回:
404
Location:null
什麼是錯的服務,我該如何解決? +將非常感激 - 如何測試服務?是否總是這樣 - 編寫一個使用這些URL連接的測試類,或者是否有任何標準的方法來測試Web服務?