restlet2.1 学习笔记(十二)使用Tomcat部署RestletService

本文介绍如何在Tomcat上部署Restlet服务。通过创建AccountResource和MovieResource资源类,结合AccountApplication和MovieApplication应用类,并利用MovieComponent组件类进行整合。最终通过配置web.xml文件完成部署。
摘要由CSDN通过智能技术生成

使用Tomcat部署RestletService很简单。 只需要配置好web.xml就行了。  其余代码不用做改动。


两个Resource

public class AccountResource extends ServerResource{


	@Get
	public Representation getAccountInfo() throws IOException{
		return new StringRepresentation("Account Info") ;
	}


}
  

public class MovieResource extends ServerResource{


	@Get
	public Representation getMovieInfo() throws IOException{
		Movie movie = new Movie() ;
		movie.setName("速度与激情6");
		movie.setSize(100000l);
		movie.setMinutes(120);
		//将movie对象包装成为一个JaxbRepresentation并返回
		JaxbRepresentation<Movie> result = new JaxbRepresentation<Movie>(movie);
		return result ;
	}


}

两个Application

public class AccountApplication extends Application{



	@Override
	public Restlet createInboundRoot() {
		Router router = new Router(getContext()) ;

		router.attach("/info" , AccountResource.class);

		return router ;

	}

}

public class MovieApplication extends Application{



	@Override
	public Restlet createInboundRoot() {
		Router router = new Router(getContext()) ;

		router.attach("/info" , MovieResource.class);

		return router ;

	}

}

一个Component

public class MovieComponent extends Component{

	public MovieComponent(){
		setName("movie web service");
		setDescription("movie web service");
		setOwner("zhoufeng");
		setAuthor("zhoufeng");
		
		getDefaultHost().attach("/movie" , new MovieApplication());
		
		getDefaultHost().attach("/account" ,new AccountApplication());
		
		
	}

}



配置web.xml

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xmlns="http://java.sun.com/xml/ns/javaee"
	xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
	id="WebApp_ID" version="2.5">
	<display-name>restlettest-project01</display-name>

	<servlet>
		<servlet-name>MovieServerComponent</servlet-name>
		<servlet-class>
			org.restlet.ext.servlet.ServerServlet
		</servlet-class>
		<init-param>
			<param-name>org.restlet.component</param-name>
			<param-value>com.zf.restlet.demo13.server.MovieComponent</param-value>
		</init-param>
	</servlet>
	
	<servlet-mapping>
		<servlet-name>MovieServerComponent</servlet-name>
		<url-pattern>/*</url-pattern>
	</servlet-mapping>

	
</web-app>

启动Tomcat。

然后就可以访问http://localhost:8080/restlettest-project02/movie/info 与 http://localhost:8080/restlettest-project02/account/info 就能够看到两个Resource的输出了

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值