有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java如何解决AEM6中的“org.apache.sling.servlets.post.impl.operations.ModifyOperation无法创建资源”错误。1.

我在我们的生产环境中遇到了这个错误-

*ERROR* [10.49.33.40 [1498065304267] POST /content/mywebsite/en/autodiscover/autodiscover.xml HTTP/1.1] org.apache.sling.servlets.post.impl.operations.ModifyOperation Unable to create resource named autodiscover.xml in /content/mywebsite/en/autodiscover
21.06.2017 13:15:04.270 *ERROR* [10.49.33.40 [1498065304267] POST /content/mywebsite/en/autodiscover/autodiscover.xml HTTP/1.1] org.apache.sling.servlets.post.impl.operations.ModifyOperation Exception during response processing.
javax.jcr.nodetype.ConstraintViolationException: No default node type available for /content/mywebsite/en/autodiscover/autodiscover.xml
                at org.apache.jackrabbit.oak.util.TreeUtil.addChild(TreeUtil.java:186)
                at org.apache.jackrabbit.oak.jcr.delegate.NodeDelegate.addChild(NodeDelegate.java:692)
                at org.apache.jackrabbit.oak.jcr.session.NodeImpl$5.perform(NodeImpl.java:296)
                at org.apache.jackrabbit.oak.jcr.session.NodeImpl$5.perform(NodeImpl.java:262)
                at org.apache.jackrabbit.oak.jcr.delegate.SessionDelegate.perform(SessionDelegate.java:200)
                at org.apache.jackrabbit.oak.jcr.session.ItemImpl.perform(ItemImpl.java:112)
                at org.apache.jackrabbit.oak.jcr.session.NodeImpl.addNode(NodeImpl.java:262)
                at org.apache.jackrabbit.oak.jcr.session.NodeImpl.addNode(NodeImpl.java:247)
                at org.apache.sling.jcr.resource.internal.helper.jcr.JcrResourceProvider.create(JcrResourceProvider.java:567)
                at org.apache.sling.resourceresolver.impl.tree.ResourceProviderEntry.create(ResourceProviderEntry.java:502)
                at org.apache.sling.resourceresolver.impl.ResourceResolverImpl.create(ResourceResolverImpl.java:1132)
                at org.apache.sling.servlets.post.impl.operations.AbstractCreateOperation.deepGetOrCreateNode(AbstractCreateOperation.java:584)
                at org.apache.sling.servlets.post.impl.operations.AbstractCreateOperation.processCreate(AbstractCreateOperation.java:107)
                at org.apache.sling.servlets.post.impl.operations.ModifyOperation.doRun(ModifyOperation.java:91)
                at org.apache.sling.servlets.post.AbstractPostOperation.run(AbstractPostOperation.java:92)
                at org.apache.sling.servlets.post.impl.SlingPostServlet.doPost(SlingPostServlet.java:202)
                at org.apache.sling.api.servlets.SlingAllMethodsServlet.mayService(SlingAllMethodsServlet.java:149)
                at org.apache.sling.api.servlets.SlingSafeMethodsServlet.service(SlingSafeMethodsServlet.java:345)
                at org.apache.sling.api.servlets.SlingSafeMethodsServlet.service(SlingSafeMethodsServlet.java:376)
                at org.apache.sling.engine.impl.request.RequestData.service(RequestData.java:547)
                at org.apache.sling.engine.impl.filter.SlingComponentFilterChain.render(SlingComponentFilterChain.java:44)
                at org.apache.sling.engine.impl.filter.AbstractSlingFilterChain.doFilter(AbstractSlingFilterChain.java:77)
                at com.day.cq.wcm.core.impl.WCMDebugFilter.doFilter(WCMDebugFilter.java:146)
                at org.apache.sling.engine.impl.filter.AbstractSlingFilterChain.doFilter(AbstractSlingFilterChain.java:68)
                at com.day.cq.wcm.core.impl.WCMComponentFilter.filterRootInclude(WCMComponentFilter.java:371)
                at com.day.cq.wcm.core.impl.WCMComponentFilter.doFilter(WCMComponentFilter.java:171)
                at org.apache.sling.engine.impl.filter.AbstractSlingFilterChain.doFilter(AbstractSlingFilterChain.java:68)
                at com.day.cq.personalization.impl.TargetComponentFilter.doFilter(TargetComponentFilter.java:96)
                at org.apache.sling.engine.impl.filter.AbstractSlingFilterChain.doFilter(AbstractSlingFilterChain.java:68)
                at org.apache.sling.engine.impl.SlingRequestProcessorImpl.processComponent(SlingRequestProcessorImpl.java:282)
                at org.apache.sling.engine.impl.filter.RequestSlingFilterChain.render(RequestSlingFilterChain.java:49)
                at org.apache.sling.engine.impl.filter.AbstractSlingFilterChain.doFilter(AbstractSlingFilterChain.java:77)
                at com.day.cq.dam.core.impl.servlet.ActivityRecordHandler.doFilter(ActivityRecordHandler.java:155)
                at org.apache.sling.engine.impl.filter.AbstractSlingFilterChain.doFilter(AbstractSlingFilterChain.java:68)
                at org.apache.sling.engine.impl.filter.AbstractSlingFilterChain.doFilter(AbstractSlingFilterChain.java:73)
                at com.adobe.granite.requests.logging.impl.RequestLoggerImpl.doFilter(RequestLoggerImpl.java:137)
                at org.apache.sling.engine.impl.filter.AbstractSlingFilterChain.doFilter(AbstractSlingFilterChain.java:68)
                at com.adobe.granite.csrf.impl.CSRFFilter.doFilter(CSRFFilter.java:201)
                at org.apache.sling.engine.impl.filter.AbstractSlingFilterChain.doFilter(AbstractSlingFilterChain.java:68)
                at org.apache.sling.security.impl.ContentDispositionFilter.doFilter(ContentDispositionFilter.java:181)
                at org.apache.sling.engine.impl.filter.AbstractSlingFilterChain.doFilter(AbstractSlingFilterChain.java:68)
                at com.day.cq.wcm.core.impl.AuthoringUIModeServiceImpl.doFilter(AuthoringUIModeServiceImpl.java:292)
                at org.apache.sling.engine.impl.filter.AbstractSlingFilterChain.doFilter(AbstractSlingFilterChain.java:68)
                at com.day.cq.wcm.core.impl.warp.TimeWarpFilter.doFilter(TimeWarpFilter.java:106)
                at org.apache.sling.engine.impl.filter.AbstractSlingFilterChain.doFilter(AbstractSlingFilterChain.java:68)
                at com.day.cq.wcm.mobile.core.impl.redirect.RedirectFilter.doFilter(RedirectFilter.java:240)
                at org.apache.sling.engine.impl.filter.AbstractSlingFilterChain.doFilter(AbstractSlingFilterChain.java:68)
                at com.adobe.cq.social.commons.cors.CORSAuthenticationFilter.doFilter(CORSAuthenticationFilter.java:91)
                at org.apache.sling.engine.impl.filter.AbstractSlingFilterChain.doFilter(AbstractSlingFilterChain.java:68)
                at com.day.cq.analytics.provisioning.impl.UserAuthenticationRequestFilter.doFilter(UserAuthenticationRequestFilter.java:119)
                at org.apache.sling.engine.impl.filter.AbstractSlingFilterChain.doFilter(AbstractSlingFilterChain.java:68)
                at org.apache.sling.engine.impl.debug.RequestProgressTrackerLogFilter.doFilter(RequestProgressTrackerLogFilter.java:95)
                at org.apache.sling.engine.impl.filter.AbstractSlingFilterChain.doFilter(AbstractSlingFilterChain.java:68)
                at com.day.cq.wcm.foundation.forms.impl.FormsHandlingServlet.doFilter(FormsHandlingServlet.java:269)
                at org.apache.sling.engine.impl.filter.AbstractSlingFilterChain.doFilter(AbstractSlingFilterChain.java:68)
                at com.day.cq.theme.impl.ThemeResolverFilter.doFilter(ThemeResolverFilter.java:76)
                at org.apache.sling.engine.impl.filter.AbstractSlingFilterChain.doFilter(AbstractSlingFilterChain.java:68)
                at com.adobe.granite.optout.impl.OptOutFilter.doFilter(OptOutFilter.java:74)
                at org.apache.sling.engine.impl.filter.AbstractSlingFilterChain.doFilter(AbstractSlingFilterChain.java:68)
                at com.day.cq.wcm.core.impl.WCMRequestFilter.doFilter(WCMRequestFilter.java:90)
                at org.apache.sling.engine.impl.filter.AbstractSlingFilterChain.doFilter(AbstractSlingFilterChain.java:68)
                at com.day.cq.wcm.designimporter.CanvasPageDeleteRequestFilter.doFilter(CanvasPageDeleteRequestFilter.java:88)
                at org.apache.sling.engine.impl.filter.AbstractSlingFilterChain.doFilter(AbstractSlingFilterChain.java:68)
                at org.apache.sling.rewriter.impl.RewriterFilter.doFilter(RewriterFilter.java:83)
                at org.apache.sling.engine.impl.filter.AbstractSlingFilterChain.doFilter(AbstractSlingFilterChain.java:68)
                at com.adobe.granite.httpcache.impl.InnerCacheFilter.doFilter(InnerCacheFilter.java:77)
                at com.adobe.granite.httpcache.impl.InnerCacheFilter.doFilter(InnerCacheFilter.java:56)
                at org.apache.sling.engine.impl.filter.AbstractSlingFilterChain.doFilter(AbstractSlingFilterChain.java:68)
                at org.apache.sling.i18n.impl.I18NFilter.doFilter(I18NFilter.java:129)
                at org.apache.sling.engine.impl.filter.AbstractSlingFilterChain.doFilter(AbstractSlingFilterChain.java:68)
                at com.adobe.granite.rest.impl.servlet.ApiResourceFilter.doFilter(ApiResourceFilter.java:68)
                at org.apache.sling.engine.impl.filter.AbstractSlingFilterChain.doFilter(AbstractSlingFilterChain.java:68)
                at com.adobe.cq.dam.s7imaging.impl.auth.MemoryTokenAuthHandler.doFilter(MemoryTokenAuthHandler.java:156)
                at org.apache.sling.engine.impl.filter.AbstractSlingFilterChain.doFilter(AbstractSlingFilterChain.java:68)
                at org.apache.sling.bgservlets.impl.BackgroundServletStarterFilter.doFilter(BackgroundServletStarterFilter.java:135)
                at org.apache.sling.engine.impl.filter.AbstractSlingFilterChain.doFilter(AbstractSlingFilterChain.java:68)
                at com.adobe.cq.social.ugcbase.security.impl.SaferSlingPostServlet.doFilter(SaferSlingPostServlet.java:132)
                at org.apache.sling.engine.impl.filter.AbstractSlingFilterChain.doFilter(AbstractSlingFilterChain.java:68)
                at com.adobe.granite.resourceresolverhelper.impl.ResourceResolverHelperImpl.doFilter(ResourceResolverHelperImpl.java:84)
                at org.apache.sling.engine.impl.filter.AbstractSlingFilterChain.doFilter(AbstractSlingFilterChain.java:68)
                at org.apache.sling.engine.impl.SlingRequestProcessorImpl.doProcessRequest(SlingRequestProcessorImpl.java:151)
                at org.apache.sling.engine.impl.SlingMainServlet.service(SlingMainServlet.java:217)
                at org.apache.felix.http.base.internal.handler.ServletHandler.doHandle(ServletHandler.java:336)
                at org.apache.felix.http.base.internal.handler.ServletHandler.handle(ServletHandler.java:297)
                at org.apache.felix.http.base.internal.dispatch.ServletPipeline.handle(ServletPipeline.java:93)
                at org.apache.felix.http.base.internal.dispatch.InvocationFilterChain.doFilter(InvocationFilterChain.java:50)
                at org.apache.felix.http.base.internal.dispatch.HttpFilterChain.doFilter(HttpFilterChain.java:31)
                at org.apache.felix.http.sslfilter.internal.SslFilter.doFilter(SslFilter.java:89)
                at org.apache.felix.http.base.internal.handler.FilterHandler.doHandle(FilterHandler.java:108)
                at org.apache.felix.http.base.internal.handler.FilterHandler.handle(FilterHandler.java:80)
                at org.apache.felix.http.base.internal.dispatch.InvocationFilterChain.doFilter(InvocationFilterChain.java:46)
                at org.apache.felix.http.base.internal.dispatch.HttpFilterChain.doFilter(HttpFilterChain.java:31)
                at com.adobe.granite.license.impl.LicenseCheckFilter.doFilter(LicenseCheckFilter.java:308)
                at org.apache.felix.http.base.internal.handler.FilterHandler.doHandle(FilterHandler.java:108)
                at org.apache.felix.http.base.internal.handler.FilterHandler.handle(FilterHandler.java:80)
                at org.apache.felix.http.base.internal.dispatch.InvocationFilterChain.doFilter(InvocationFilterChain.java:46)
                at org.apache.felix.http.base.internal.dispatch.HttpFilterChain.doFilter(HttpFilterChain.java:31)
                at org.apache.sling.security.impl.ReferrerFilter.doFilter(ReferrerFilter.java:290)
                at org.apache.felix.http.base.internal.handler.FilterHandler.doHandle(FilterHandler.java:108)
                at org.apache.felix.http.base.internal.handler.FilterHandler.handle(FilterHandler.java:80)
                at org.apache.felix.http.base.internal.dispatch.InvocationFilterChain.doFilter(InvocationFilterChain.java:46)
                at org.apache.felix.http.base.internal.dispatch.HttpFilterChain.doFilter(HttpFilterChain.java:31)
                at org.apache.sling.i18n.impl.I18NFilter.doFilter(I18NFilter.java:129)
                at org.apache.felix.http.base.internal.handler.FilterHandler.doHandle(FilterHandler.java:108)
                at org.apache.felix.http.base.internal.handler.FilterHandler.handle(FilterHandler.java:80)
                at org.apache.felix.http.base.internal.dispatch.InvocationFilterChain.doFilter(InvocationFilterChain.java:46)
                at org.apache.felix.http.base.internal.dispatch.HttpFilterChain.doFilter(HttpFilterChain.java:31)
                at org.apache.sling.featureflags.impl.FeatureManager.doFilter(FeatureManager.java:115)
                at org.apache.felix.http.base.internal.handler.FilterHandler.doHandle(FilterHandler.java:108)
                at org.apache.felix.http.base.internal.handler.FilterHandler.handle(FilterHandler.java:80)
                at org.apache.felix.http.base.internal.dispatch.InvocationFilterChain.doFilter(InvocationFilterChain.java:46)
                at org.apache.felix.http.base.internal.dispatch.HttpFilterChain.doFilter(HttpFilterChain.java:31)
                at org.apache.sling.engine.impl.log.RequestLoggerFilter.doFilter(RequestLoggerFilter.java:75)
                at org.apache.felix.http.base.internal.handler.FilterHandler.doHandle(FilterHandler.java:108)
                at org.apache.felix.http.base.internal.handler.FilterHandler.handle(FilterHandler.java:80)
                at org.apache.felix.http.base.internal.dispatch.InvocationFilterChain.doFilter(InvocationFilterChain.java:46)
                at org.apache.felix.http.base.internal.dispatch.HttpFilterChain.doFilter(HttpFilterChain.java:31)
                at org.apache.felix.http.base.internal.dispatch.FilterPipeline.dispatch(FilterPipeline.java:76)
                at org.apache.felix.http.base.internal.dispatch.Dispatcher.dispatch(Dispatcher.java:49)
                at org.apache.felix.http.base.internal.DispatcherServlet.service(DispatcherServlet.java:67)
                at javax.servlet.http.HttpServlet.service(HttpServlet.java:725)
                at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:808)
                at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:587)
                at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:221)
                at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1127)
                at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:515)
                at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:185)
                at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1061)
                at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141)
                at org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:215)
                at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:97)
                at org.eclipse.jetty.server.Server.handle(Server.java:497)
                at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:310)
                at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:257)
                at org.eclipse.jetty.io.AbstractConnection$2.run(AbstractConnection.java:540)
                at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:635)
                at org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:555)
                at java.lang.Thread.run(Thread.java:745)

但我们的存储库中没有“/content/mywebsite/en/autodiscover/autodiscover.xml”或“/content/mywebsite/en/autodiscover”。不确定从何处获取此url

我如何在不访问此特定URL的情况下调试它。谢谢


共 (2) 个答案

  1. # 1 楼答案

    查看堆栈跟踪,最突出的一点是:

    /content/mywebsite/

    这看起来像是dispatcher文件中的一些默认配置,可能会将来自域(www.example.com)的请求重定向到发布服务器上的默认(假定)内容结构

    或者,它可能是你的出版商的一个吊索映射

    所以,评论中建议的解释是,一些电子邮件客户端(如Outlook)正在尝试使用与您的域对应的电子邮件地址自动注册用户(user@example.com)。这将启动自动发现POST请求

    在企业环境中,这是大多数电子邮件客户端的正常设置,所以这不是问题。这里值得考虑的问题是:

    Your publisher is accepting POST requests from anonymous users. This must be blocked by dispatcher or publisher.

    Adobe有很多关于dispatcher设置和publisher安全性的文档来解决这个问题。总之,您需要禁用publisher上匿名用户的写入权限,并将dispatcher配置为阻止任意路径上的POST请求

    Debugging

    通过使用curl模拟相同的POST请求,您可以在本地环境中轻松地重现这个问题。在引发此错误的/content节点下不允许使用xml文件

  2. # 2 楼答案

    正如在另一个答案中提到的,您不需要调试这个问题,因为它是网络和安全配置问题,而不是AEM问题。你必须:

    • 在您的发布者和调度程序上保护匿名帖子
    • 修复您的sling映射或dispatcher配置(如果有)以处理mywebsite内容路径解析

    另一种可能性是,一些公司内部网络配置错误,SMTP自动发现现在被重定向到您的发布服务器,而不是您通常的邮件服务器