[英]Cannot invoke webservice method in Jersey/java
我使用netbeans和jersey做了一個准系統的世界服務。 我的問題是,當我將Web服務部署到服務器時(我正在使用Glass Fish),它將帶我進入索引頁面,但是我無法調用在Java類中創建的方法。
我的玻璃魚服務使用的域是
http://localhost:8080/HelloWorldApp/
要調用我的方法(從ive讀取的內容),這是這樣做的方法:
http://localhost:8080/HelloWorldApp/helloworld
但是,這給了我一個404。Ive遵循了許多示例,但是似乎無法在Web瀏覽器中調用該方法。
但是,當我在netbeans中單擊測試RESTful Webservices時,可以調用該方法。
這是我定義方法的方式:
package HelloWorldResource;
import javax.ws.rs.core.Context;
import javax.ws.rs.core.UriInfo;
import javax.ws.rs.Consumes;
import javax.ws.rs.PUT;
import javax.ws.rs.Path;
import javax.ws.rs.GET;
import javax.ws.rs.Produces;
import javax.ws.rs.core.MediaType;
@Path("/helloworld")
public class Hellworld {
@Context
private UriInfo context;
/**
* Creates a new instance of Hellworld
*/
public Hellworld() {
}
/**
* Retrieves representation of an instance of HelloWorldResource.Hellworld
* @return an instance of java.lang.String
*/
@GET
@Produces(MediaType.TEXT_HTML)
public String getHtml() {
//TODO return proper representation object
return "<HTML>Hello</HTML>";
}
/**
* PUT method for updating or creating an instance of Hellworld
* @param content representation for the resource
*/
@PUT
@Consumes(MediaType.TEXT_HTML)
public void putHtml(String content) {
}
我查閱了另一個教程,發現了一些信息。 創建了一個帶有以下標記的名為“ ApplicationConfig.java”的Java類: @javax.ws.rs.ApplicationPath("webresources")
所以我不得不使用此uri調用該方法http://localhost:8080/HelloWorldApp/webresources/helloworld
請與您分享web.xml和資源配置的實現。 如果您有任何自定義資源配置實現,則必須在資源配置實現中注冊您的資源文件。 有關詳細信息,請參閱http://cloudskol.com/index.php/2015/09/22/simple-get-method-implementation-in-restful-java/
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.