我在本地主机上使用 Resteasy 2.1 导航到 Restful 服务时遇到问题,希望这里有人能够帮助我。
我已经构建了一个 EAR 文件,里面有 WAR,似乎可以编译并部署到 JBoss5 上。
我的服务得到简化:
@Path("RequestReply")
public class Replier {
@GET
@Path("request")
public String getReply(@QueryParam("id") @DefaultValue("") String id){
if (id.length > 0){
return "ACK";
}
return "NACK";
}
}
我的 web.xml 文件是标准的:
<?xml version="1.0" encoding="UTF-8"?>
<web-app>
<display-name>Test service</display-name>
<listener>
<listener-class>
org.jboss.resteasy.plugins.server.servlet.ResteasyBootstrap
</listener-class>
</listener>
<context-param>
<param-name>resteasy.scan</param-name>
<param-value>true</param-value>
</context-param>
<servlet>
<servlet-name>Resteasy</servlet-name>
<servlet-class>
org.jboss.resteasy.plugins.server.servlet.HttpServletDispatcher
</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>Resteasy</servlet-name>
<url-pattern>/*</url-pattern>
</servlet-mapping>
</web-app>
所以我尝试使用
访问我的 API但是我收到 404 错误。
谁能告诉我我做错了什么?
应用程序.xml:
<?xml version="1.0" encoding="UTF-8"?>
<application xmlns="java.sun.com/xml/ns/javaee"; xmlns:xsi="w3.org/2001/XMLSchema-instance"; xsi:schemaLocation="java.sun.com/xml/ns/javaee java.sun.com/xml/ns/javaee/application_5.xsd"; version="5">
<display-name>Reseasy</display-name>
<module>
<java>simple.jar</java>
</module>
</application>
最佳答案
好的,所以我建议尝试类似的方法:
<?xml version="1.0" encoding="UTF-8"?>
<application xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/application_5.xsd"
version="5">
<display-name>Reseasy</display-name>
<module>
<web>
<web-uri>Replier.war</web-uri>
<context-root>/api</context-root>
</web>
</module>
</application>
此处,Replier.war 指您创建的 WAR 文件的名称,/api 指您的请求 URL 的基础。所以它应该看起来像:
试一试!
关于java - 轻松路径 JBoss,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5799178/