Restlet入门示例

本文的目的在于完成一个Restlet入门示例。
首先,是一个Stand alone应用。
然后,将其部署与Tomcat容器中。
最后,完成Restlet与Spring的整合。

1.按照官方教程,完成“firstSteps”

创建一个动态Web工程RestEE,并建立firstSteps包,并复制如下代码到:HelloWorldResource.java


package firstSteps;

import org.restlet.Context;
import org.restlet.Request;
import org.restlet.Response;
import org.restlet.resource.Get;
import org.restlet.resource.ServerResource;

/**
* Resource which has only one representation.
*/
public class HelloWorldResource extends ServerResource {

@Get
public String represent() {
return "hello, world";
}

}


2.复制如下代码到FirstStepsApplication.java

package firstSteps;

import org.restlet.Application;
import org.restlet.Restlet;
import org.restlet.routing.Router;

public class FirstStepsApplication extends Application {

/**
* Creates a root Restlet that will receive all incoming calls.
*/
@Override
public synchronized Restlet createInboundRoot() {
// Create a router Restlet that routes each call to a new instance of HelloWorldResource.
Router router = new Router(getContext());

// Defines only one route
router.attach("/hello", HelloWorldResource.class);

return router;
}

}

3.编写main,复制如下代码到:FirstStepsMain.java

package firstSteps;

import org.restlet.Component;
import org.restlet.data.Protocol;

public class FirtstStepsMain {
public static void main(String[] args) throws Exception {
// Create a new Component.
Component component = new Component();

// Add a new HTTP server listening on port 8182.
component.getServers().add(Protocol.HTTP, 8182);

// Attach the sample application.
component.getDefaultHost().attach("/firstSteps",
new FirstStepsApplication());

// Start the component.
component.start();
}
}



4.以Java Application运行FirstStepsMain,在浏览器中输入:
http://localhost:8182/hello,将打印“hello, world”信息。

5.修改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" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" 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>firstSteps</display-name>
<context-param>
<param-name>org.restlet.application</param-name>
<param-value>
firstSteps.FirstStepsApplication
</param-value>
</context-param>
<!-- Restlet adapter -->
<servlet>
<servlet-name>RestletServlet</servlet-name>
<servlet-class>org.restlet.ext.servlet.ServerServlet</servlet-class>


</servlet>

<!-- Catch all requests -->
<servlet-mapping>
<servlet-name>RestletServlet</servlet-name>
<url-pattern>/*</url-pattern>
</servlet-mapping>
</web-app>


6.启动Tomcat,运行该项目。在浏览器中输入:
http://localhost:8080/RestEE/hello,出现“hello, world”信息。

7.集成restlet,spring
7.1 修改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" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" 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>firststepsservlet</display-name>

<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>/WEB-INF/applicationContext.xml</param-value>
</context-param>

<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>

<!-- Restlet adapter -->
<servlet>
<servlet-name>RestletServlet</servlet-name>
<servlet-class>org.restlet.ext.spring.SpringServerServlet</servlet-class>
<init-param>
<param-name>org.restlet.component</param-name>
<param-value>component</param-value>
</init-param>
</servlet>

<!-- Catch all requests -->
<servlet-mapping>
<servlet-name>RestletServlet</servlet-name>
<url-pattern>/*</url-pattern>
</servlet-mapping>
</web-app>


7.2 application.xml内容如下:

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd">

<bean id="component" class="org.restlet.ext.spring.SpringComponent">
<property name="defaultTarget" ref="application" />
</bean>
<bean id="application" class="firstSteps.FirstStepsApplication">
<lookup-method name="createRoot" bean="root" />
</bean>
<bean id="root" class="org.restlet.ext.spring.SpringRouter">
<property name="attachments">
<map>
<entry key="/hello">
<bean class="org.restlet.ext.spring.SpringFinder">
<lookup-method name="create" bean="HelloWorldResource" />
</bean>
</entry>
</map>
</property>
</bean>
<bean id="HelloWorldResource" class="firstSteps.HelloWorldResource" scope="prototype" />
</beans>


7.3 启动Tomcat,运行该项目。浏览器中输入:
http://localhost:8080/RestEE/hello,出现“hello,world”信息。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值