gpt4 book ai didi

rest - 如何使用 JAXRS 和 JAXB 设置 ReSTLet 服务器?

转载 作者:行者123 更新时间:2023-12-01 04:43:51 25 4
gpt4 key购买 nike

我一直在整个互联网上寻找一个例子来说明如何做到这一点。我只是想设置一个 REST 服务器,自动将对象序列化为 XML 或从 XML 序列化。我只是想提供一个服务器,它可以方便用户登录、注销和仅在用户登录后访问 XML 对象列表。启动和运行一个简单的示例应用程序需要什么?

我未能掌握 ReSTLet 库的工作方式,而且我对使用 JAXB 和 JAXRS 完全陌生。我从事过一个使用这些库的项目,但只是从客户的角度来看。

最佳答案

ReSTLet 可以看作是一个JAXRS 实现。地址提供了一个简单的教程: http://wiki.restlet.org/docs_1.1/13-restlet/28-restlet/57-restlet.html

您需要将以下 jar 文件放入您的类路径中。这些 jar 文件可以在 reSTLet 发行版(例如版本 2.0.5)中找到:

  • javax.ws.rs.jar
  • org.reSTLet.ext.jaxrs.jar
  • org.reSTLet.jar

正如您在本教程中看到的,您实现了 JAXRS 资源和应用程序。然后有两种不同的方式来启动整个 Web 应用程序:

  • 使用内置的 ReSTLet 服务器
  • 使用 JavaEE Web 容器

为了集成 JAXB 支持,您首先需要了解 ReSTLet 的表示支持是如何工作的。 REST 请求/响应的内容包含在表示中。支持不同的格式,这是开放和可扩展的。这种表示支持可以与转换器实体和转换器服务一起使用。

转换器实体负责将一个元素转换为另一个元素。例如,如果您传递一个 Java 实例并希望将其转换为 XML 以在 REST 响应中发回。转换器服务负责根据媒体类型和支持内容协商(在 Accept 和 Content-Type header 中定义的内容类型)以智能方式处理此转换。转换器出现在类路径中时会自动注册。

对于 JAXB,让我们将以下 jar 放入您的类路径中:

  • 激活.jar
  • jaxb-api.jar
  • jsr173_1.0_api.jar

让我们举个例子:

  • 您在 ReSTLet JAXRS 应用程序上发送 REST 请求。您指定值为 application/xml 的 Accept header ,因为您希望响应内容包含 XML 内容。

  • 在您的资源中,请求的相应 JAXRS 方法和所需的内容类型返回一个对象。 ReSTLet 会自动检查是否有注册的转换器来处理 Java 对象到 XML 之间的转换。如果您添加了 ReSTLet JAXB 扩展,如果 Java 对象使用 JAXB 注释进行注释,它将使用它。

  • JAXB 转换器将使用转换器生成使用 JAXB 的 XML 输出。

  • 响应被发送回客户端。

否则,您想实现什么样的安全措施?基于用户/密码?

希望它很清楚,它会有所帮助!蒂埃里

关于rest - 如何使用 JAXRS 和 JAXB 设置 ReSTLet 服务器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5671845/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com