为了解决主题中提到的问题,我编写了以下代码:
String link = externalizer.publishLink(resolverFactory.getAdministrativeResourceResolver(null),"");
我无法检查它,因为我只有作者机器,但以下代码将仅在发布者上执行。
在生产中,我们有几个出版商。我想为每个出版商得到不同的结果。
我的代码是否适用于发布商?
您是否为 pid - com.day.cq.commons.impl.ExternalizerImpl 定义了 sling:osgiConfig?您也可以直接在 OSGi 控制台 [1] 中进行配置。
在配置中,您可以提供 dns 名称,例如“发布http://www.example.com ”
如果多个发布实例有多个域名,请为此服务定义 sling:osgiConfig 节点并将其附加到这些发布实例的“运行模式”。这应该有效。
附注 - Externalizer 服务通常用于非 HTML 内容,如电子邮件等。在 HTML 中,您可以使用相对 url。