JEE确实Rest Endpoint配置超越JSF的控制流量?

时间:2016-02-12 14:54:29

标签: java web-services rest java-ee soa

在oracle docs描述的JEE中,部署应用程序的容器通常会拦截客户端请求,并根据应用程序配置将它们路由到生成在Web层中的组件(JSF,Servlet,JSP,Rest端点)。

下图很好地说明了这种关系。 https://docs.oracle.com/javaee/7/tutorial/webapp001.htm

如果我们使用rest端点实现休息配置,根据oracle,那些休息端点是“web组件”,因此容器会将用户请求(比如index / users / 1)路由到用户的休息端点查询参数为1,用于id。

然后如何与其他Web组件(如JSF)集成?其余端点配置是否基本上劫持了到JSF的路由?其余端点是否还负责在其对客户端的http响应中包含特定的视图组件?我的印象是,在SOA中,其余端点仅提供基于restful状态检索数据的服务,以呈现当前视图的当前模型。

例如,在我的解释中,它应该是这样的。

Client Request ----> JSF servlet------>call rest endpoint
Gets new page  <-- Update Model <-------end point talks to DB and returns data
           and spit out new html page

我是否误解了oracle文档在将其余配置作为Web组件包含时的具体内容?

1 个答案:

答案 0 :(得分:2)

在您的web.xml中,您可以为不同的组件设置不同的部署描述符。因此,您可以根据根上下文将请求路由到不同的组件。例如,www.site.com/rest/service可以根据&#34; / rest&#34;的上下文路由到其他API。并且您可以使用/ faces&#34;。

的上下文将其他请求路由到您的JSF servlet

This link解释得非常好。