Board logo

标题: Apache Wink REST 开发中的高级主题(2) [打印本页]

作者: look_w    时间: 2018-9-7 20:27     标题: Apache Wink REST 开发中的高级主题(2)

管理视图为了帮助开发人员更好地理解他们的 RESTful Web 服务,Apache Wink 提供了两种管理视图:Application Resource XML 视图和 Resource Registry XML 视图。默认情况下,这些视图都是禁用的,您必须在应用程序 web.xml 文件中注册 org.apache.wink.server.internal.servlet.AdminServlet 类才能激活它们。               
Application Resources XML 视图公开 REST 资源及其 URI 模板、HTTP 方法以及每个方法支持的 MIME 类型,类似于帮助用户获得应用程序的方式。这种视图可以方便地为部署的服务生成自动化服务文档。               
Resource Registry XML 视图比 Application Resources XML 视图更加详细,它显示了服务公开的实际实现细节,包括在注册表中实现资源及其优先级的类名称。该视图对于调试过程非常有用,但是不应在生产中启用,因为它披露了实现细节,可能会影响安全性。               
WebDAV 支持基于 Web 的分布式编辑和版本控制(Distributed Authoring and Versioning,WebDAV)是 HTTP 协议的一个扩展集合,支持用户在 Web 服务器上(比如 Apache Web Server)编辑和管理文件。WebDAV 协议的一些主要功能包括:               
Apache Wink 通过扩展模块支持 WebDAV 协议。Apache                         Wink 扩展模块包括 WebDAV XML 模型和 WebDAV 响应构建程序,用于帮助创建和处理 WebDAV 响应。               
运行中的 SpringSpring 是一个常用的开源 Java 框架,原本是用作现有 Java 标准(比如 Enterprise JavaBean (EJB) 技术)的一个轻量级替代方法。与 EJB 标准类似,Spring Framework 还提供了事务、持久性、安全性 —— 以及更重要的 —— 依赖关系注入(JAX-RS 中也借用了这个概念)方面的功能。有关 Spring Framework 的更多信息,请参考 。               
Apache Wink 通过核心框架中的其他模块提供了与 Spring 的轻松集成。Apache Wink Spring 集成模块提供了以下主要功能:               
Spring 上下文加载在 Spring Framework 中,Spring 上下文类似于 Apache Wink 应用程序,必须在定义和加载其他 Spring bean 之前加载。加载 Spring 上下文之后,它可以轻松将资源和提供者注册为 Spring bean。                       
要加载 Spring 上下文,您首先必须定义上下文加载侦听器并将其添加到 Web 应用程序的 web.xml 文件。同样,contextConfigLocation context-param 应该指示 Apache Wink 核心上下文文件的位置和特定于应用程序的上下文文件。 提供了定义和加载 Spring 上下文的 web.xml 文件示例。                       
清单 4. Spring 上下文加载 web.xml
1
2
3
4
5
6
7
8
9
10
11
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath:META-INF/server/winkCoreContext-server.xml
    classpath:mySpringcontext.xml
</param-value>
</context-param>
<listener>
<listener-class>
    org.springframework.web.context.ContextLoaderListener
    </listener-class>
</listener>






欢迎光临 电子技术论坛_中国专业的电子工程师学习交流社区-中电网技术论坛 (http://bbs.eccn.com/) Powered by Discuz! 7.0.0