在 cq5/AEM 中定义自定义 MIME 类型

Define custom mime type in cq5/AEM

我想在 crx/de 中定义自定义 MIME 类型,但我不知道该怎么做。 我找到了一个 link 的 Whosebug,但我仍然没有明确的想法在 crx/de 中定义自定义 mime 类型,任何人都可以帮助我提供文档或步骤,这真的很有帮助-对我来说满满的。 提前致谢

Link 我参考过的 Whosebug creating custom MIME type in cq5/AEM

我绝对建议您阅读 Adob​​e 文档中的 Configuring OSGi

假设您在本地计算机上的端口 4502 上有一个 AEM 实例 运行ning,您可以按照此 link 进入 Apache Felix 控制台以配置 "The Apache Sling MIME Type Service" 在 http://localhost:4502/system/console/configMgr/org.apache.sling.commons.mime.internal.MimeTypeServiceImpl。在对话框中,单击任何加号。添加您的 MIME 类型,然后是 space,然后是文件扩展名以关联 MIME 类型。例如:application/json json.

如果您想在 CRXDE|Lite 中创建一个 OSGi 配置,您可以在 /apps/<yourProject/config 下创建一个名为 org.apache.sling.commons.mime.internal.MimeTypeServiceImpl 类型 sling:OsgiConfig 的节点。创建一个名为 mime.types 的 属性,它是一个多值字符串。如上所述添加您的 MIME 类型和扩展名。 Yogesh Upadhyay 在此处提供了带有屏幕截图的详细解释:http://www.wemblog.com/2012/10/how-to-work-with-configurations-in-cq.html.

在 Web 控制台或 CRXDE|Lite 中更新配置可以很好地进行测试,但不可维护。您可以通过创建以下文件将 OSGi 配置存储在您的源代码管理系统中:/apps/<yourProject>/config/org.apache.sling.commons.mime.internal.MimeTypeServiceImpl.xml 具有以下内容:

<?xml version="1.0" encoding="UTF-8"?>
<jcr:root xmlns:sling="http://sling.apache.org/jcr/sling/1.0" xmlns:jcr="http://www.jcp.org/jcr/1.0"
jcr:primaryType="sling:OsgiConfig"
    mime.types="[video/x-matroska mkv, video/dvd vob, mymime/type extension]"
/>

通过将您的配置存储在您的源代码控制存储库中,您可以获得版本控制的明显好处。然而,同样重要的是,每次您将代码构建到新的或现有的 AEM 实例时,配置文件都会更新服务。阅读文档,它将描述如何为不同的 Sling 运行 模式设置不同的配置,这样您就可以为开发与阶段和生产 AEM 实例设置不同的设置。