2016-12-07 142 views
0

RESTful服务我也跟着教程here与TomEE和IntelliJ IDEA的

,我不能得到某种原因运行例子...我上运行的服务后,输入URL http://localhost:8080/greeting/得到404错误。

我使用Intellji EE 14和TomEE 7

这里是我的代码:

Greeter.java:

package org.mybiz; 

import javax.ws.rs.GET; 
import javax.ws.rs.Path; 

@Path("greeting") 
public class Greeter { 
    @GET 
    public String sayHi() { 
     return "Hi!!"; 
    } 
} 

的web.xml:

<?xml version="1.0" encoding="UTF-8"?> 
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee" 
     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
     xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd" 
     version="3.1"> 
</web-app> 
+0

当您启动该服务,检查日志所有暴露的URL。检查http:// localhost:8080/greeting /是否存在。粘贴日志以防需要帮助。 – k1133

回答

1

你可以检查它是否部署在日志中(你应该有http://localhost:8080/greeting/

如果不是他们可能是一个编译问题,如果是的话,你会得到一个异常访问该网址,它可以访问它与mimetype不符合定义的。

尝试增加@Consumes("text/plain")@Consumes("text/html")

+0

虽然localhost:8080/greeting /没有在日志中显示,但它的编译很好,没有运行时的execeptions。我尝试使用@Consumes文本和HTML没有运气。 –

+1

如果你没有看到它在日志中,那么它不会被扫描,可能是由于几件事情(我称之为编译问题,这可能是一个糟糕的语言捷径)。你能否验证这些类是否位于已部署的二进制文件的WEB-INF /类中? –