You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

AEMaaCS发布端ACS Commons 404.jsp文件缺失报错求助

问题排查与解决方案

问题本质

尽管自定义404页面能正常显示,但发布端日志持续报错找不到/apps/acs-commons/components/utilities/errorpagehandler/404.jsp,核心原因是ACS Commons的UI组件未正确部署到发布实例,或自定义错误处理器脚本引用了不存在的文件。

可能原因

1. 嵌入包部署路径错误

你将ACS Commons的ui.apps和ui.content包嵌入到项目自定义的/apps/anaplan-packages/.../install目录,AEMaaCS对第三方嵌入包的部署逻辑要求其按自身结构直接部署到对应路径,自定义install目录会导致ACS的组件文件无法被正确提取到/apps/acs-commons下。

2. 过滤器规则拦截

项目的filter.xml可能包含过滤/apps/acs-commons路径的规则,或<filter>true</filter>配置导致ACS包内的文件被过滤,未同步到发布实例。

3. 自定义错误处理器脚本引用问题

你的/apps/sling/servlet/errorhandler/404.jsp中存在对ACS Commons 404.jsp的引用,但该文件未部署,触发脚本执行异常。

解决方案

1. 修正嵌入包配置

修改主项目pom.xml中的embedded配置,移除自定义target路径,让ACS Commons包按自身结构部署:

<embedded>
    <groupId>com.adobe.acs</groupId>
    <artifactId>acs-aem-commons-ui.apps</artifactId>
    <type>zip</type>
    <filter>true</filter>
    <isAllVersionsFilter>true</isAllVersionsFilter>
</embedded>
<embedded>
    <groupId>com.adobe.acs</groupId>
    <artifactId>acs-aem-commons-ui.content</artifactId>
    <type>zip</type>
    <filter>true</filter>
    <isAllVersionsFilter>true</isAllVersionsFilter>
</embedded>

或直接将target设置为/,确保包内容直接部署到根路径对应位置。

2. 调整过滤器规则

打开项目META-INF/vault/filter.xml,添加允许/apps/acs-commons路径的规则,避免过滤:

<filter root="/apps/acs-commons">
    <include pattern="/apps/acs-commons/**"/>
</filter>

3. 验证ACS Commons包部署状态

在AEM发布实例的包管理器中,确认acs-aem-commons-ui.apps-5.3.0.zip已成功安装,且/apps/acs-commons/components/utilities/errorpagehandler/404.jsp文件存在。若未安装,可手动上传安装该包,或重新构建部署项目确保嵌入包被正确安装。

4. 调整错误处理器脚本

  • 若自定义404.jsp无需依赖ACS的404.jsp,直接移除对应的<%@ include %>语句;
  • 若需要依赖,则确保ACS的文件已正确部署,或修正引用路径为实际存在的文件位置。

内容的提问来源于stack exchange,提问作者eagleinhills

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.07 11:40:25