2016-10-27 5 views
1

В соответствии с javadocs API Externalizer допускает аргумент разрешения аргумента null. Какова цель разрешения null? Внешнему устройству следует разрешить данный путь для сопоставления ресурсов и возврата разрешенного URL. И если ресурс-резольвер равен нулю, эта цель побеждена правильно?Почему внешний агент, разрешающий разрешать нулевой ресурс?

ответ

0

Я декомпилировал com.day.cq.commons.impl.ExternalizerImpl.class, чтобы узнать, почему это было необязательно. Причина, по которой необходим резольвер, - это обратное отображение разрешений для внешнего URI. Если вы не укажете распознаватель ресурса или запрос, код будет по умолчанию по умолчанию предоставлен без попытки изменить разрешенный путь.

URI mapped = URI.create(resolver != null ? resolver.map(path) : path); 

Так как, например, вы могли бы иметь отображение из /содержание в /содержание/geometrixx/EN. Передача в преобразователе и пути /content/geometrixx/en приведет к /content. Если вы хотите убедиться, что это всегда было /content/geometrixx/en передать null для ресурса resolver.