2016-04-20 90 views
0

我嘗試在Tomcat服務器上使用Jersey時出現問題。當我運行我的服務器,然後嘗試去的URL「http://localhost:8080/RssApp/rest/test」我有以下的錯誤(RssApp是我的項目的名稱):Tomcat與澤西島上的錯誤

com.sun.jersey.api.container.ContainerException:本ResourceConfig實例不包含任何根資源類。

這裏是我的web.xml文件:

<!DOCTYPE web-app PUBLIC 
"-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" 
"http://java.sun.com/dtd/web-app_2_3.dtd" > 

<web-app> 
<display-name>Archetype Created Web Application</display-name> 

<servlet> 
    <servlet-name>CreateAccount</servlet-name> 
    <servlet-class>com.sun.jersey.spi.container.servlet.ServletContainer</servlet-class> 
    <init-param> 
     <param-name>com.sun.jersey.config.property.packages</param-name> 
     <param-value>com.team.RssServlet.CreateAccount</param-value> 
    </init-param> 
    <load-on-startup>1</load-on-startup> 
</servlet> 

<servlet-mapping> 
    <servlet-name>CreateAccount</servlet-name> 
    <url-pattern>/rest/*</url-pattern> 
</servlet-mapping> 

,在這裏我的servlet:

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

@Path("test") 
public class CreateAccount{ 
@GET 
@Produces(MediaType.TEXT_PLAIN) 
public String getIt() { 
    return "Got it!"; 
} 
} 

我互聯網上閱讀,它可能來自

c om.sun.jersey.config.property.packages

就像一個錯誤的名稱或什麼的,所以只是爲了看看我有什麼類型的錯誤,我刪除了「ES」末到剛纔:

com.sun.jersey.config.property.packag

我期待一個錯誤,但我沒有開過,然後當我嘗試用URL「http://localhost:8080/RssApp/rest/test」我的瀏覽器中顯示我「明白了! 「大聲笑。

我有點失落,而且我對JEE和網絡都很陌生。

感謝您的幫助。

+0

什麼是CreateAccount包? –

回答

1

您正在將com.team.RssServlet.CreateAccount設置爲Class的名稱,而不是您有休息類服務的程序包。

此外,該值應該是一個包名稱,你是包括大寫字母(壞習慣)

+0

是的,謝謝你,那是;)。 – king

+0

很高興幫助你! –