Apache Wink service configuration
Apache Wink applications are typically deployed in a servlet container like Apache Tomcat and packaged as a WAR file. Like any other Web application, Apache Wink services also need a web.xml file
web.xml Web configuration file as following:
<web-app>
<display-name>Wink demo</display-name>
<description>Demonstration of SDK features</description>
<!-- Wink SDK servlet configuration.
This servlet handles HTTP requests
of SDK web service on application server.-->
<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/application</param-value>
</init-param>
</servlet>
<servlet-mapping>
<servlet-name>restSdkService</servlet-name>
<url-pattern>/rest/*</url-pattern>
</servlet-mapping>
</web-app>
@Workspace Annotation
The following example demonstrates the use of @Workspace annotation on the resources in order to
have the auto-generated APP service document contain the information about it.
Given the following collection Resources definitions, ResourceA the result is displayed in
the "Auto Generated APP Service Document" table that follows.
@Workspace(workspaceTitle = "Services", collectionTitle = "Service1")
@Path("services/service1")
public class ResourceA {
@POST
@Produces("text/plain")
@Consumes({"application/atom+xml", "application/xml"})
public String getText() {return "hey there1";}
}
Auto Generated APP Service Document
<service xmlns:atom=http://www.w3.org/2005/Atom
xmlns="http://www.w3.org/2007/app">
<workspace>
<atom:title>Services</atom:title>
<collection href="services/service1">
<atom:title>Service1</atom:title>
<accept>application/xml</accept>
<accept>application/atom+xml</accept>
</collection>
</workspace>
</service>
@Scope Annotation Specification
The following example illustrates how to define a resource with a singleton lifecycle
@Scope(ScopeType.SINGLETON)
@Path("service1")
public class ResourceA {
...
}
some kinds of lifescopes is below ,you can choose one which you need during your
coding
PROTOTYPE, SINGLETON
@Parent Annotation
The @Parent annotation provides the ability to define a base template URI for the URI specified in a
resources @Path annotation.If a resource is annotated with the @Parent annotation, the Apache Wink runtime calculates the final
resource template by first retrieving the value of the @Parent annotation, which holds the parent resource class, and then concatenates the resource path template definition to the path template definition of the parent resource.example is following:
@Path("services")
public class ParentResource {
...
}
@Parent(ParentResource .class)
@Path("service1")
public class ResourceA {
...
}
In the example, the user defined two resources: A ParentResource and ResourceA. ParentResource
defines the @Path annotation to associate it with "services" URI. ResourceA defines the @Path
annotation to associate it with "service1" URI and defines ParentResource to be its parent by specifying
it in the @Parent annotation.
In this case, the final URI path for ResourceA is "services/service1".
分享到:
相关推荐
Apache Wink是一个开源的RESTful Web服务开发框架,它提供了构建和消费RESTful服务的一系列工具和库。本文将深入探讨如何配置、编码以及调用Apache Wink服务,结合提供的`web.xml`和`spring`文件,我们来详细了解这...
RESTful Web 服务和 Apache Wink
RESTful Web 服务和 Apache Wink
Apache Wink是一个开源框架,主要用于构建RESTful Web服务。它基于Java EE标准,提供了一组API和工具,帮助开发者快速创建、部署和管理RESTful应用程序。Spring框架则是Java领域广泛使用的依赖注入(DI)和面向切面...
**Apache Wink** 是一个基于 Java 的完整解决方案,用于实现和消费 REST 风格的 Web 服务。该框架的目标是提供一组可重用和可扩展的类和接口,作为开发者高效构建应用程序的基础。 **REST (Representational State ...
Apache Wink是一个开源的Java框架,主要用于构建RESTful Web服务。这个"apache-wink-1.3.0-src.tar.gz"文件是Apache Wink 1.3.0版本的源代码压缩包,提供了完整的源码,供开发者进行深入研究、定制和扩展。以下是...
Apache Wink是一个开源的Java框架,用于构建RESTful Web服务和客户端应用程序。它是由Apache软件基金会托管,并在Incubator阶段被开发为1.2.0版本。这个压缩包"apache-wink-1.2.0-incubating-src.tar.gz"包含了源...
Apache Wink是一个开源的Java框架,用于构建RESTful Web服务和客户端应用程序。它属于Apache软件基金会的Incubator项目,1.2.1是其在Incubating阶段的一个版本。这个"apache-wink-1.2.1-incubating.tar.gz"文件是一...
Apache Wink是一个开源的RESTful Web服务开发框架,由Apache软件基金会维护。它提供了一组开发工具和服务,帮助开发者构建高效、可扩展的RESTful应用程序。这个“apache-wink-1.4.tar.gz”文件是Apache Wink 1.4版本...
如果你在项目中需要实现REST服务,或者想要与已有的REST服务进行交互,那么Apache Wink是一个值得考虑的选择。记得在使用前,详细阅读项目文档,了解如何配置和使用这些组件,以充分发挥其潜力。
总的来说,"apache-wink-1.0-incubating.tar.gz"是一个对理解RESTful服务开发感兴趣的开发者非常有价值的资源,包含了构建和使用REST服务所需的所有组成部分。通过学习和使用这个框架,开发者可以更高效地构建健壮、...
Wink是Apache的一个开源项目,它提供了实现RESTful Web服务的一系列工具和库,而Maven则是一个流行的Java项目管理工具,用于构建、依赖管理和项目信息管理。 首先,我们需要在我们的项目中配置Maven。创建一个新的...
Apache Wink是一个开源的Java框架,主要用于构建RESTful Web服务。这个"apache-wink-1.4-src.tar.gz"文件是Apache Wink 1.4版本的源代码压缩包,适用于那些希望深入理解Wink工作原理或者需要对其进行定制开发的...
Apache Wink的核心目标是简化开发RESTful服务,通过提供一组丰富的库和API,使得开发者可以轻松创建、测试和部署符合REST原则的服务。REST(Representational State Transfer)是一种网络应用程序的设计风格和开发...
Apache Wink是一个开源的RESTful Web服务开发框架,它由Apache软件基金会托管并处于孵化器阶段。这个"apache-wink-1.1.1-incubating-src.tar.gz"文件是Apache Wink 1.1.1版本的源代码压缩包,适用于开发者进行深度...
Apache Wink是一个开源的Java框架,用于构建RESTful Web服务和客户端应用程序。它是在Apache软件基金会的孵化器项目中诞生的,版本号为0.1,表明这是一个早期版本,可能包含实验性的特性和功能。".tar.gz"是常见的...
Apache Wink是一个开源的RESTful Web服务开发框架,它由Apache软件基金会的Incubator项目孵化。这个"apache-wink-1.1.2-incubating.tar.gz"压缩包包含了该框架的1.1.2版本,适用于构建和消费基于REST...
标签:apache-wink-1.1.2-incubating-src.tar.gz,apache,wink,1.1.2,incubating,src.tar.gz包下载,依赖包
Apache Wink 是一个开源的Java框架,主要用于构建RESTful Web服务。这个“apache-wink-1.1-incubating.tar.gz”文件是一个压缩包,包含了Apache Wink 1.1版本的所有组件和资源,它是Apache软件基金会的一个孵化项目...
总之,"apache-wink-1.1-incubating-src.tar.gz"是一个用于构建RESTful Web服务的源码包,包含了一系列用于开发、测试和部署REST服务的工具和API。通过深入理解和使用Apache Wink,开发者可以高效地创建符合REST原则...