我在本地编写了一个电子邮件交换服务,并将其作为捆绑包部署到AEM6中。所以我的服务现在可用作吊索服务。
我已经在jsp中使用了它,如下所示。
EmailService es - sling.getService(EmailService.class);
但是现在在Aem6中,我需要在点击按钮时轻松调用该服务,这将使用ajax调用完成。
请告诉我如何在ajax电话上使用吊索服务。
谢谢, ESHA
答案 0 :(得分:2)
您可能无法通过AJAX直接致电您的服务,因为您的服务并不能满足您的要求。
您可以编写一个SlingServlet
解析为可以引用您的EmailExchange服务的路径/ resourceType,或者访问其脚本通过sling.getService()
@SlingServlet(paths="/bin/emailexchange.servlet", methods="POST")
public Class EmailExchangeServlet extends SlingAllMethodsServlet {
@Reference
private EmailService emailService;
protected void doPost(SlingHttpServletRequest req, SlingHttpServletResponse res) {
// do your stuff
}
}
答案 1 :(得分:0)
保持关注点分离:
有鉴于此,您的AJAX应该POST到Servlet,它可以调用服务。