if(element instanceof FieldUnit){
return ((FieldUnit) element).getTitleCache();
}
+
else if(element instanceof MediaSpecimen){
text = CdmFormatterFactory.format(element,
new FormatKey[]{
});
}
else if(element instanceof IdentifiableEntity){
+
IdentifiableEntity identifiableEntity = (IdentifiableEntity) element;
if(identifiableEntity.isProtectedTitleCache()){
text = identifiableEntity.getTitleCache();
if(rootElements!=null){
Collection<DerivedUnit> derivedUnits = new ArrayList<DerivedUnit>();
for (SpecimenOrObservationBase specimenOrObservationBase : rootElements) {
- derivedUnits.addAll(CdmStore.getService(IOccurrenceService.class).getAllChildDerivatives(specimenOrObservationBase.getUuid()));
+ List<DerivedUnit> childUnits = CdmStore.getService(IOccurrenceService.class).getAllChildDerivatives(specimenOrObservationBase.getUuid());
+ if (childUnits != null){
+ derivedUnits.addAll(childUnits);
+ }
if(specimenOrObservationBase.isInstanceOf(DerivedUnit.class)){
- derivedUnits.add(HibernateProxyHelper.deproxy(specimenOrObservationBase, DerivedUnit.class));
+ specimenOrObservationBase = CdmStore.getService(IOccurrenceService.class).load(specimenOrObservationBase.getUuid());
+ if (specimenOrObservationBase != null){
+ derivedUnits.add(HibernateProxyHelper.deproxy(specimenOrObservationBase, DerivedUnit.class));
+ }
}
}
for (DerivedUnit derivedUnit : derivedUnits) {