2015-11-04 68 views
0

我想要从CQ5主持宁静的web服务。基本上,打算根据修改日期,用户状态等参数将在CQ5中出现的所有用户公开给外部系统。 我经历了https://chanchal.wordpress.com/2015/01/11/using-jax-rs-and-jersey-to-write-restful-services-in-osgi-apache-felix-adobe-cq5aem/,因为我只能在网上找到这篇文章,但由于我是初学者,实施它。在CQ5中实现这种RESTful Web服务需要指导在CQ5中创建REST风格的Web服务,AEM

回答

5

CQ5基于Apache Sling,它本质上是RESTful的,因此您通常不需要额外的库。在你的情况下(除非用户信息已经作为Sling资源可用,我不记得是否是这种情况),实现Sling ResourceProvider足以提供这些资源的可浏览RESTful表示。请参阅Sling docs以获取更多信息,他们将简单的PlanetResourceProvider作为最简单的示例。

+0

这是一个有趣的概念..我一直在AEM​​中使用Web服务,但没有从AEM公开。 –

+0

@Bertrand Delacretaz感谢您的回复。实际上,我需要实现的一点是任何调用都应该看起来像休息一样调用,即URL也应该支持变量。例如http://10.143.1.90:4503/fetch/users/date/11-Sep-2015所以这里的日期11-sep-2015是web服务的一个参数,它将根据这个日期过滤用户。另外要注意的是外部应用程序将使用我正在谈论的这个web服务。 – samir

+0

您可以使用ResourceProvider实现像/ fetch/some/parameters这样的URL,只需将其挂载到/获取并将资源路径映射到适当的数据即可。 –

0

无法获得与AEM/CQ5一起使用的REST Web服务。即使在为CQ5安装JAXB的包之后。看起来像吊索在JAXB注释处理程序之前覆盖了解析。由于缺乏时间,必须实施一种替代方法,CQ5将及时将json数据作为json文件写入共享位置,第三方应用程序将从那里获取文件。 然而,这将影响性能,因为要编写调度程序,也不是推荐的方法,但它仍然适用于我的方案。 谢谢大家的帮助。