覆盖 Nuxeo 中的默认图片转换

Overriding default picture conversions in Nuxeo

我正在尝试覆盖 Nuxeo 中的默认图片转换器。

默认情况下,Nuxeo 提供以下 OOTB 转换器

我想将转换器减少到

以下是我试过的配置

  1. 使用 Nuxeo-cli 实用程序创建了一个多模块贡献

    创建贡献所遵循的步骤

    $>nuxeo bootstrap multi-module
    
    $>nuxeo bootstrap contribution 
    

    用于贡献的目标组件是org.nuxeo.ecm.platform.picture.ImagingComponent

    $>nuxeo bootstrap package 
    
  2. 向 OSGI-INF/picture-conversion-core-contrib.xml 文件添加了以下扩展名 Ref

    <?xml version="1.0"?>
    <component name="org.nuxeo.ecm.platform.picture.ImagingComponent.default.config.override">
    <require>
        org.nuxeo.ecm.platform.picture.ImagingComponent.default.config
    </require>
        <extension target="org.nuxeo.ecm.platform.picture.ImagingComponent" point="pictureConversions">
            <pictureConversion chainId="Image.Blob.Resize" description="Thumbnail size" id="Thumbnail" maxSize="100" order="0" rendition="true"/>
            <pictureConversion chainId="Image.Blob.Resize" description="Original jpeg image" id="OriginalJpeg" order="100" rendition="true"/>
        </extension>
    </component>
    

    我只想保留两个图片转换,因此只添加 Thumbnail 转换器和 OriginalJpeg 转换器。

  3. 创建包后,我正在使用以下命令在 Nuxeo 服务器上安装包。

    $>nuxeoctl mp-install  /path/to/dir/sample_picture_converter-package-1.0-SNAPSHOT.zip
    

即使组件已正确安装在 Nuxeo 服务器上,服务器仍会使用默认格式(即缩略图、小、中、大和原始格式)转换图像。

在没有 Nuxeo studio 的情况下,在 Nuxeo 中覆盖默认贡献的步骤是什么?

Nuxeo 论坛上的

Cross Posted

我们需要在 OSGI-INF/picture-conversion-core-contrib.xml 中明确禁用默认图片转换。下面给出更新的 OSGI 配置。

<?xml version="1.0"?>
<component name="org.nuxeo.ecm.platform.picture.ImagingComponent.default.config.override">

    <require>
        org.nuxeo.ecm.platform.picture.ImagingComponent.default.config
    </require>

    <extension target="org.nuxeo.ecm.platform.picture.ImagingComponent" point="pictureConversions">
        <pictureConversion chainId="Image.Blob.Resize" description="Thumbnail size" id="Thumbnail" maxSize="100" order="0" rendition="true"/>
        <pictureConversion chainId="Image.Blob.Resize" description="Original jpeg image" id="OriginalJpeg" order="100" rendition="true"/>
        <pictureConversion chainId="Image.Blob.Resize" id="Small" enabled="false" />
        <pictureConversion chainId="Image.Blob.Resize" id="Medium" enabled="false" />
        <pictureConversion chainId="Image.Blob.Resize" id="FullHD" enabled="false" />
    </extension>
</component>

回答者LaraGranite on Nuxeo forum