在我的实验室里,我被要求使用JSF框架创建一个简单的网站,并使用REST。 我对这两个进行了一些研究。 结果发现,对于REST,我必须使用JAX-RS框架和Jersey。 我想知道如何集成这两个框架,JAX-RS和JSF?
我已经在 web.xml
中为JSF编写了下面的servlet:
<servlet>
<servlet-name>Faces Servlet</servlet-name>
<servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>Faces Servlet</servlet-name>
<url-pattern>/test/*</url-pattern>
</servlet-mapping>
对于Jersey,我想我必须在web.xml
中使用以下servlet:
<servlet>
<servlet-name>Jersey REST Service</servlet-name>
<servlet-class>org.glassfish.jersey.servlet.ServletContainer</servlet-class>
<init-param>
<param-name>jersey.config.server.provider.packages</param-name>
<param-value>com.jbm.rest</param-value>
</init-param>
</servlet>
<servlet-mapping>
<servlet-name>Jersey REST Service</servlet-name>
<url-pattern>/api/*</url-pattern>
</servlet-mapping>
现在我的问题是,对我来说似乎这个Jersey servlet将会替换web.xml
中的Faces servlet。这将把我的应用程序从JSF更改为JAX-RS。但我想保留JSF并同时使用JAX-RS。我该怎么做?
http://host:port/yourapp/test/*
,对于REST,请使用http://host:port/yourapp/api/*
。 - Garry