我的应用服务器是Jboss Wildfly 8.我将使我的EJB成为REST Web服务。 我的EJB:
接口:
@Local
@Path("/books")
public interface BookBeanLocal {
@GET
@Path("/getbookname")
public String getBookName();
}
类别:
@Stateless
public class BookBean implements BookBeanLocal {
@Override
public String getBookName() {
// TODO Auto-generated method stub
return "OK";
}
}
所有这些都作为EJB模块放在Jar中。
控制台日志显示:Registered web context: /ejb_rest_web
我试图访问http://127.0.0.1:8080/ejb_rest_web/books/getbookname
但是我得到了错误404.为什么?
答案 0 :(得分:1)
正如之前的回答,我认为您混淆了web.xml的配置。关于ejb示例中的resteasy文档,它们将web中的ejb映射如下:
<context-param>
<param-name>resteasy.jndi.resources</param-name>
<param-value>LibraryBean/local</param-value>
</context-param>
你可以看到LibraryBean / local,我认为混淆是关于/ local的,这是服务器为statelesbean LibraryBean做的映射的一部分,所以我认为你应该有:
<context-param>
<param-name>resteasy.jndi.resources</param-name>
<param-value>BookBeanLocal/local</param-value>
</context-param>
答案 1 :(得分:0)
嗯,这肯定要处理很多错误日志。
我认为您的web.xml
<param-value>BookBean/Local</param-value>
应该是
<param-value>BookBeanLocal</param-value>
没有