Я работаю над компонентом, который требует определенных свойств (которые пользователь устанавливает во время выполнения) для работы в соответствии с назначением.Как получить доступ к свойствам компонента из класса Java
Первоначально, я просто использовал properties.get('foo')
для извлечения необходимого свойства из моего компонента, но я пытаюсь удалить все следы кода сценария, передающего код из моего jsp-файла компонента.
Как получить это свойство «foo» (которое задано во время выполнения на моем компоненте) в моем Java-коде? Я помню, что читал где-то, что с помощью ValueMap был самым лучшим образом, поэтому я попытался использовать это: -
public static Map<String, Object> getResourceProperties(String path,
SlingHttpServletRequest request) {
ResourceResolver resourceResolver = request.getResourceResolver();
Map<String, Object> props= new HashMap<String, Object>();
Resource resource = resourceResolver.getResource(path);
if (null != resource) {
props.putAll(resource.adaptTo(ValueMap.class));
}
return props;
}
и это в моем JSP: - <c:set var="refProperties" value="${xyz:getResourceProperties(properties.path,slingRequest)}" />
Но это не возвращает значение, я хочу.
согласился .. это самый простой способ. не знаю, почему я этого не использовал .. Что еще хуже, я действительно изучал глобальное.jsp, и именно там я узнал, как получить доступ к свойствам с помощью 'resource' – bongman1612