ref #8509 handle ClassCastException for Kingdom taxa
authorAndreas Müller <a.mueller@bgbm.org>
Sun, 1 Sep 2019 21:21:19 +0000 (23:21 +0200)
committerAndreas Müller <a.mueller@bgbm.org>
Sun, 1 Sep 2019 21:21:19 +0000 (23:21 +0200)
cdm-pesi/src/main/java/eu/etaxonomy/cdm/io/pesi/out/PesiTaxonExport.java

index d4a4c14c55379103636bbcaca32db6842a94d76f..26734555491ce6950aac619adb7c588b1e99620f 100644 (file)
@@ -301,9 +301,13 @@ public class PesiTaxonExport extends PesiExportBase {
                                }
                                try{
                                if (nvn.getRank().equals(Rank.KINGDOM())){
-                                   String treeIndex = ((Taxon)taxon).getTaxonNodes().iterator().next().treeIndex();
-                                   Integer kingdomId = PesiTransformer.pesiKingdomMap.get(nvn.getGenusOrUninomial());
-                                   state.getTreeIndexKingdomMap().put(treeIndex, kingdomId);
+                                   if(taxon.isInstanceOf(Taxon.class)){
+                                       String treeIndex = ((Taxon)taxon).getTaxonNodes().iterator().next().treeIndex();
+                                       Integer kingdomId = PesiTransformer.pesiKingdomMap.get(nvn.getGenusOrUninomial());
+                                       state.getTreeIndexKingdomMap().put(treeIndex, kingdomId);
+                                   }else{
+                                       logger.warn("Kingdom taxon is not of class Taxon but " + taxon.getClass().getSimpleName() + ": " + nvn.getGenusOrUninomial());
+                                   }
                                }
                                }catch(NullPointerException e){
                                    logger.error(nvn.getTitleCache() + " has no Rank!");