具体来说,我正在尝试启用.SVG文件以供核心图像组件使用。
现在我正在创建一个sling模型,理想情况下我想访问位于here的核心AEM组件接口中的getSrc()和getFileReference()类的返回值。
我是AEM开发和Sling模型的新手。我是否遗漏了一些让我这样做的重要功能?
这是我的代码,在这一点上可能没有任何帮助。
package com.site.core.models;
import com.adobe.cq.wcm.core.components.models.Image;
import org.apache.sling.api.SlingHttpServletRequest;
import org.apache.sling.api.resource.Resource;
import org.apache.sling.api.resource.ResourceResolver;
import org.apache.sling.api.resource.ValueMap;
import org.apache.sling.models.annotations.*;
import org.apache.sling.models.annotations.injectorspecific.*;
import org.apache.sling.settings.SlingSettingsService;
import javax.jcr.Node;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
import javax.inject.Inject;
@Model(adaptables = SlingHttpServletRequest.class)
public class ImageModel {
private String src = Image.getSrc();
return src;
}
答案 0 :(得分:0)
正如我在评论中提到的,您所指的链接是一个界面,该界面的实现是here
为了使用您自己的实现,您有两种选择:
在图片组件html中,更改data-sly-use
以引用您的impl:com.site.core.models.ImageModel
创建一个实现Image
界面的单独模型,并为其提供高排名,而不是现有的impl。
免责声明:我没有测试#2,但documentation表明它可能。