On 13/12/2016 13:31, Colm O hEigeartaigh wrote:
The following case in JPAConfDao will result in a ClassCastException as
JPACPlainAttrValue does not implement the interface PlainAttrUniqueValue.
JPACPlainAttrValue attrValue;
if (newAttr.getSchema().isUniqueConstraint()) {
attrValue = new JPACPlainAttrValue();
((PlainAttrUniqueValue) attrValue).setSchema(newAttr.getSchema());
}
What should this be instead?
I guess you are referring to [1]; to me, the highlighted snippet should
become
PlainAttrValue attrValue;
if (newAttr.getSchema().isUniqueConstraint()) {
attrValue = new JPACPlainAttrUniqueValue();
((PlainAttrUniqueValue)
attrValue).setSchema(newAttr.getSchema());
} else {
attrValue = new JPACPlainAttrValue();
}
WDYT?
[1]
https://github.com/apache/syncope/blob/2_0_X/core/persistence-jpa/src/main/java/org/apache/syncope/core/persistence/jpa/dao/JPAConfDAO.java#L71-L77
--
Francesco Chicchiriccò
Tirasa - Open Source Excellence
http://www.tirasa.net/
Member at The Apache Software Foundation
Syncope, Cocoon, Olingo, CXF, OpenJPA, PonyMail
http://home.apache.org/~ilgrosso/