簡體   English   中英

無法在Jersey / java中調用Webservice方法

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM