Я новичок в JSF, и мне интересно, можно ли вводить разные подклассы базового класса в качестве MangedProperty в зависимости от разных ситуаций? Например, у меня есть этот управляемый компонент:
@ManagedBean
@SessionScoped
public class Claim implements Serializable {
private Loss lossDetails; //need to inject one of two subclasses
}
И следующий базовый класс:
public class Loss implements Serializable {
private String lossCause;
private String lossDescription;
}
Который имеет два подкласса:
public class AutoLoss extends Loss implements Serializable {
private List<String> vehicles;
//...
}
public class PropLoss extends Loss implements Serializable {
private String property;
private boolean weatherRelated;
//...
}
В зависимости от выбора, сделанного на страницах JSF моего приложения, я хочу внедрить один из подклассов в качестве lossDetails
ManagedProperty в Claim
управляемый компонент. Поскольку я не могу дать двум подклассам одно и то же имя управляемого компонента и не знаю заранее, какой из них нужно внедрить, можно ли это сделать в JSF? Или есть другой подход, который я должен рассмотреть?
Спасибо!