小编Rei*_*ith的帖子

无法到达作为REST服务公开的EJB

我正在尝试使用JAX-RS注释将一些EJB公开为REST Web服务.当我将war包含EJB Jar的文件部署WEB-INF/lib到Wildfly 8中时,我可以在Web管理面板EJB Jar中看到已部署,但是我无法访问REST端点并获得404.

这是以下内容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">
    <servlet-mapping>
        <servlet-name>javax.ws.rs.core.Application</servlet-name>
        <url-pattern>/separated/*</url-pattern>
    </servlet-mapping>
</web-app>
Run Code Online (Sandbox Code Playgroud)

这是一个示例会话bean我正在尝试作为Web服务并放入jar文件中:

@Stateless(name = "TestSessionEJB")
@LocalBean
public class TestSessionBean {

    @PersistenceContext(unitName = "TestPU")
    private EntityManager em;

    public AuthenticationSessionBean() {
    }

    @GET
    @Path("ep")
    public String testEP() {
        return "Hello from testEP()";
    }
}
Run Code Online (Sandbox Code Playgroud)

我无法testEP通过/<war_file_name>/separated/ep.添加了ejb-jar.xml描述符WEB-INF/,仍然没有成功.我用直接在war文件中编译和部署的类创建了另一个服务WEB-INF/classes:

@ApplicationPath("/integrated")
public class TestRestApp extends Application {
} …
Run Code Online (Sandbox Code Playgroud)

ejb jax-rs ejb-3.1 wildfly wildfly-8

2
推荐指数
1
解决办法
1801
查看次数

标签 统计

ejb ×1

ejb-3.1 ×1

jax-rs ×1

wildfly ×1

wildfly-8 ×1