我使用netbeans和jersey制作了一个准系统hello world webservice。 我的问题是当我将我的web服务部署到服务器时(我使用玻璃鱼)它将我带到索引页面,但是我无法调用我在java类中创建的方法。
我的玻璃鱼服务所使用的域名是
http://localhost:8080/HelloWorldApp/
要调用我的方法(从我读过的内容),这就是这样做的方法:
http://localhost:8080/HelloWorldApp/helloworld
然而,这给了我一个404.我已经关注了很多例子,但似乎无法在我的网络浏览器中调用该方法。
但是,当我在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) {
}
答案 0 :(得分:1)
我查了另一个教程并找到了一些信息。这是一个创建的java类,名为&#34; ApplicationConfig.java&#34;具有此标记:@javax.ws.rs.ApplicationPath("webresources")
所以我不得不使用这个uri http://localhost:8080/HelloWorldApp/webresources/helloworld
答案 1 :(得分:0)
请分享您的web.xml和资源配置实现。如果您有任何自定义资源配置实现,那么您的资源文件必须在资源配置实现中注册。有关详细信息,请参阅http://cloudskol.com/index.php/2015/09/22/simple-get-method-implementation-in-restful-java/