栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

将Jetty与JAX-RS-Jersey集成

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

将Jetty与JAX-RS-Jersey集成

我前一段时间使用Jetty和Jersey创建了一个应用程序。它实际上只是一个标准的Webapp:

web.xml:

<servlet>    <servlet-name>rest.service</servlet-name>    <servlet-class>        com.sun.jersey.spi.spring.container.servlet.SpringServlet</servlet-class>    <init-param>        <param-name>com.sun.jersey.config.property.resourceConfigClass</param-name>        <param-value>com.sun.jersey.api.core.PackagesResourceConfig</param-value>    </init-param>    <init-param>        <param-name>com.sun.jersey.config.property.packages</param-name>        <param-value>your.package.with.jersey.resources</param-value>    </init-param>    <load-on-startup>1</load-on-startup></servlet><servlet-mapping>    <servlet-name>rest.service</servlet-name>    <url-pattern>/service/*</url-pattern></servlet-mapping>

休息资源:

package your.package.with.jersey.resources;import javax.ws.rs.GET;import javax.ws.rs.Path;import javax.ws.rs.Produces;import javax.ws.rs.core.Context;import javax.ws.rs.core.MediaType;import javax.ws.rs.core.SecurityContext;@Path("login")public class LoginResource {    @Context    private SecurityContext security;    @GET    @Produces(MediaType.APPLICATION_XML)    public String login() {        String email = security.getUserPrincipal().getName();        return "ok";    }}

码头启动器:

public class StartJetty {    public static void main(String[] args) throws Exception {        Server server = new Server();        SocketConnector connector = new SocketConnector();        // Set some timeout options to make debugging easier.        connector.setMaxIdleTime(1000 * 60 * 60);        connector.setSoLingerTime(-1);        connector.setPort(8080);        server.setConnectors(new Connector[] { connector });        WebAppContext bb = new WebAppContext();        bb.setServer(server);        bb.setContextPath("/");        bb.setWar("src/main/webapp");        server.addHandler(bb);        try { System.out.println(">>> STARTING EMBEDDED JETTY SERVER, PRESS ANY KEY TO STOP"); server.start(); while (System.in.available() == 0) {     Thread.sleep(5000); } server.stop(); server.join();        } catch (Exception e) { e.printStackTrace(); System.exit(100);        }    }}

pom.xml:

<!-- Jetty --><dependency>    <groupId>org.mortbay.jetty</groupId>    <artifactId>jetty</artifactId></dependency><dependency>    <groupId>org.mortbay.jetty</groupId>    <artifactId>jetty-util</artifactId></dependency><dependency>    <groupId>org.mortbay.jetty</groupId>    <artifactId>jetty-management</artifactId></dependency><!-- Jersey (JAX-RS) --><dependency>    <groupId>com.sun.jersey</groupId>    <artifactId>jersey-server</artifactId></dependency><dependency>    <groupId>com.sun.jersey.contribs</groupId>    <artifactId>jersey-spring</artifactId></dependency><dependency>    <groupId>javax.ws.rs</groupId>    <artifactId>jsr311-api</artifactId></dependency><dependency>    <groupId>com.sun.jersey</groupId>    <artifactId>jersey-test-framework</artifactId>    <scope>test</scope></dependency><dependency>    <groupId>com.sun.grizzly</groupId>    <artifactId>grizzly-servlet-webserver</artifactId></dependency>(...)<plugin>    <groupId>org.mortbay.jetty</groupId>    <artifactId>maven-jetty-plugin</artifactId>     </plugin>

希望这些摘要为您指明正确的方向。



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/508261.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号