Justin Edelson created SLING-7187:
-------------------------------------
Summary: Use of Injector-specific annotation and @Optional results
in required-value
Key: SLING-7187
URL: https://issues.apache.org/jira/browse/SLING-7187
Project: Sling
Issue Type: Bug
Components: Extensions
Affects Versions: Sling Models Impl 1.4.4
Reporter: Justin Edelson
Fix For: Sling Models Impl 1.4.6
If there is a model class like
{code}
@Model(adaptables = Resource.class)
public class ModelClass {
@ValueMapValue
private String otherText;
@Override
public String getOtherText() {
return otherText;
}
@ValueMapValue
@Optional
private String emptyText;
@Override
public String getEmptyText() {
return emptyText;
}
}
{code}
It would be a reasonable expectation that the {{emptyText}} field will be
optional. But that is not actually the case since the {{@ValueMapValue}} has a
default {{optional}} attribute of {{false}}.
Can be worked around by using {{@ValueMapValue(optional = true)}} instead of
having the separate {{@Optional}} annotation.
--
This message was sent by Atlassian JIRA
(v6.4.14#64029)