1.
引言
Apache Wink
是一个
Restful
开发
JAXB-RS
规范的实现框架,和以前用过的
CXF
比较多,
restful
还是比较小巧的(小巧也是应该,毕竟
wink
只是
restful
的框架,并不支持
SOAP
)。
Wink
的部署也很简单,大概有三种方式吧。
第一种是通过注册
wink
提供的
SimpleWinkApplication
来注册
restful
的资源,资源直接在配置文件中声明。配置文件内容举例:
文件:
rest-resources.properties
# Resources
com.example.FooResource
com.example.BarResource
在系统的
web.xml
中将上述文件配置到
restful
servlet
的初始化参数中。如下
<servlet>
<servlet-name>restSdkService</servlet-name>
<servlet-class>
org.apache.wink.server.internal.servlet.RestServlet
</servlet-class>
<init-param>
<param-name>applicationConfigLocation</param-name>
<param-value>/WEB-INF/rest-resources.properties </param-value>
</init-param>
</servlet>
第二种是通过
Application
注册资源,通过实现
javax.ws.rs.core.Application
接口来配置和注册资源。
以上两种我们只是简单介绍,配置均比较直观,参考
wink
的官方文档均能比较容易配置实现。本文主要介绍下第三种方式——与
spring
集成。关于与
spring
集成,官方文档也有介绍,但是在具体某些地方说的不够到位,对于刚接触
wink
的使用者在实施过程中可能就会遇到那些不是问题的问题。下面就详细介绍下集成的配置过程。而对于
restful
资源的开发不在本文介绍之内。
2.
Web.xml
的配置
首先在系统的
web.xml
配置文件中我们需要加入
wink
的
servlet
配置,这也是
wink
实现
restful
服务的入口,
Wink
通过该
RestServlet
处理接收到的
HTTP
请求。
配置如下:
<servlet>
<servlet-name>restService</servlet-name>
<servlet-class>
org.apache.wink.server.internal.servlet.RestServlet
</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>restService</servlet-name>
<url-pattern>/rest/*</url-pattern>
</servlet-mapping>
因为我们是要和
spring
集成的,因为在
web.xml
中还要加入
spring
的支持。配置如下:
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath:META-INF/server/wink-core-context.xml
classpath:applicationContext-*.xml
</param-value>
</context-param>
<listener>
<listener-class>
org.springframework.web.context.ContextLoaderListener
</listener-class>
</listener>
这里有一点是需要注意的,就是参数值
classpath:META-INF/server/wink-core-context.xml
,这个文件是存在
wink
的
wink-spring-support-1.2.0-incubating.jar
中的,这个
jar
可以在下载的
apache-wink-1.2.0-incubating.zip
的
ext
目录中找到。如果要修改其中的默认配置,可以将该文件拷出来另存到其他目录并进行修改,当然这样的话此处的配置也需要重新指定到新路径。
classpath:applicationContext-*.xml
这个配置项是指的
spring
的配置文件。
至此,
web.xml
文件的配置工作就完成了。
3.
Spring
的配置
<bean id="fooResource" class="com.harvey.stuido.ws.rest.resources.FooResource"/>
<bean class="org.apache.wink.spring.Registrar">
<property name="classes">
<set value-type="java.lang.Class">
</set>
</property>
<property name="instances">
<set>
<ref bean="fooResource" />
</set>
</property>
</bean>
其中的
fooResource
是我们要发布的
restful
的资源(关于
restful
资源的开发略)。其中的
classes
配置项中的
class
集合我们留空,这个配置与前面提到的第二种方式的
Application
的
getClasses
功能类似,因为我们是要想利用
spring
来管理各个
resource
,所以我们只配置
instances
配置项,这样也能方便保证资源的单例。
分享到:
相关推荐
将Wink与Spring集成,可以充分利用两者的优点,实现高效、灵活的REST服务开发。 集成Spring和Apache Wink的主要目标是利用Spring的IOC容器管理Wink的组件,如资源、过滤器和消息处理器,以及利用Spring的数据访问和...
Apache Wink与Spring框架的集成允许我们利用Spring的强大功能,如依赖注入(DI)和AOP。在`spring`配置文件中,我们可以定义Bean并将其注入到Wink资源类中。 ```xml <beans xmlns="http://www.springframework.org/...
7. **与Spring集成**:Wink可以与Spring框架无缝集成,便于利用Spring的依赖注入和管理功能。 **解压和使用源代码:** 1. **解压文件**:首先,你需要使用解压工具(如tar命令在Linux或macOS,或7-Zip在Windows)来...
6. **安全集成**:Wink可以与常见的安全框架集成,如Spring Security或JAAS,为Web服务提供身份验证和授权功能。 7. **调试和监控**:Wink提供了一套丰富的工具和日志选项,帮助开发者调试和优化他们的RESTful服务...
WINK主要用于移动开发 WINK主要用于移动开发 WINK主要用于移动开发 WINK主要用于移动开发 WINK主要用于移动开发
- 解压后,开发者可以查看文档,了解如何配置和集成Wink到他们的项目中,或者直接使用提供的示例代码开始编写REST服务。 5. **开发流程**: - 创建REST资源类,使用JAX-RS注解来定义HTTP方法和URI模板。 - 配置...
此外,Wink还支持JAX-RS(Java API for RESTful Web Services)规范,使得与已有的JAX-RS兼容的服务集成变得简单。 在实际应用中,开发者可以利用Wink的注解来定义REST资源,如`@Path`用于指定资源的URI,`@GET`, `...
Wink不仅限于简单的屏幕捕捉,还集成了编译功能,允许用户对录制的视频进行后期编辑,如剪辑、添加注释等,使得最终输出的视频更具专业性和观赏性。这对于那些需要制作详细教程或者演示的人来说,无疑是一大福音。 ...
6. **安全性**:通过与Servlet容器集成,Wink可以利用容器提供的安全性特性,如基本认证、摘要认证等。 7. **扩展性**:Wink设计时考虑了插件机制,允许开发者自定义处理器、消息处理器链和序列化/反序列化策略。 ...
py-wink, python 库与Wink器件的接口奇特 ( ;)用于与Wink设备接口的python 库,包括:"Eggminder"eggtray"Nimbus cloud_clock""pivot 电源天才"powerstrip"Porkfolio"piggy_bank"Spo
7. **安装与配置**:安装和配置Wink2.0可能涉及一些系统要求和设置调整,用户需要熟悉这些过程。 8. **兼容性**:考虑软件的兼容性问题,比如操作系统版本、Flash Player版本以及可能的硬件要求。 以上是对Wink2.0...
RESTful Web 服务和 Apache Wink
Wink 是一款非常优秀的免费录屏软件,尤其适合制作计算机操作教程。它在国外备受推崇,但国内应用较少少。Wink免费、小巧(3MB)、可同期或事后加入声 音、可加入暂停及跳转按钮、添加注释,并且生成的 flash 文件比...
Wink是一款功能强大的屏幕录制工具,特别适合用来创建软件教程和演示。它的核心特性在于能够捕捉屏幕活动并将其转化为高质量的交互式动画,这在软件教学、产品展示以及在线帮助文档制作等方面非常实用。免费且易用是...
与常见的MP4或AVI格式相比,SWF文件在不牺牲画质的情况下,能有效降低存储空间的需求,这对于网络传输和在线播放非常有利。 首先,让我们深入了解一下wink20-1060的录屏功能。这款软件允许用户自定义录制区域,无论...
1. **源代码**:Apache Wink的Java源代码,分为多个模块,涵盖了框架的主要组件,如Servlet容器集成、客户端API、JAX-RS实现等。 2. **文档**:用户指南、开发者文档和API参考,帮助用户理解如何使用和扩展Wink。 3....
RESTful Web 服务和 Apache Wink
总结起来,"apache-wink-1.3.0-src.tar.gz"是一个包含Apache Wink 1.3.0版本源代码的压缩包,适合对RESTful Web服务感兴趣的开发者,他们可以借此深入了解Wink的内部机制,进行定制开发,并与其他Java技术结合使用,...
确保创建一个`applicationContext.xml`文件,其中包含Spring配置,用于扫描包含REST资源的包。 最后,在Web应用的`web.xml`中配置WinkServlet和我们的Wink应用: ```xml <listener-class>...
Salat是一个与MongoDB集成的Scala库,它简化了MongoDB数据模型的映射,允许开发者用Scala语言进行操作,提供了更简洁的代码和类型安全。 Salat的主要特点包括: 1. 基于Case类的数据映射:在Scala中,Case类是一种...