我在旧的CQ5.5服务器上运行的应用程序上工作。我已经设置了一个servlet来进行验证码验证。它有doGet
提供验证码图像和doPost
验证验证码 - 每个方法使用不同的选择器。 servlet使用与绘制验证码表单的jsp相同的resourceType。
@SlingServlet(
resourceTypes="myApp/components/myForm",
selectors={"verify","captcha"},
extensions={"json","png"},
methods={"GET","POST"}
servlet扩展SlingAllMethodsServlet
,我以管理员身份登录。
GET工作得很好,所以resourceType正在解析我的servlet。但POST解析为默认的Sling servlet。还使用" json" GET的扩展似乎导致默认的GET servlet解析。
版本5.5是否解释了这一点?我应该责怪旧服务器,还是代码中有问题?
答案 0 :(得分:0)
它似乎与资源类型的细节相关联。我试图将servlet挂钩到我的页面组件。当我在页面的jcr:content节点下使用另一个节点的resourceType时,它按预期工作。我还没有在另一个版本上试过这个,但我怀疑我之前从未尝试过使用页面组件节点。