fixing problem of reusing name for creation of taxon
authorU-BGBM\k.luther <k.luther@BGBM11732.bgbm.fu-berlin.de>
Thu, 1 Oct 2015 09:00:46 +0000 (11:00 +0200)
committerU-BGBM\k.luther <k.luther@BGBM11732.bgbm.fu-berlin.de>
Thu, 1 Oct 2015 09:00:46 +0000 (11:00 +0200)
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/newWizard/NewTaxonNodeWizard.java
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/section/classification/TaxonNodeDetailElement.java

index 4a300dc7afc066d296d488e2980b541eb75b3131..76119d2995c9c4ac87eb3cecf5db13b74860775a 100644 (file)
@@ -53,8 +53,8 @@ public class NewTaxonNodeWizard extends AbstractNewEntityWizard<ITaxonTreeNode>{
             Taxon taxon = taxonNodePage.getTaxon();
             try{
                 TaxonNode taxonNode = parent.addChildTaxon(taxon, parent.getReference(), parent.getMicroReference());
-                taxonNode = CdmStore.getService(ITaxonNodeService.class).merge(taxonNode);
-                generatedTaxonNodeUuid = taxonNode.getUuid();
+                generatedTaxonNodeUuid = CdmStore.getService(ITaxonNodeService.class).saveOrUpdate(taxonNode);
+               // generatedTaxonNodeUuid = taxonNode.getUuid();
                 Set<CdmBase> affectedObjects = new HashSet<CdmBase>();
                 //FIXME:Remoting Hack for now - need to generalise this
                 // by making the affected objects a set of ICdmBase
index cce5f0c6eccfe395abb85cddb5c3c46a383e345f..4c8fb599de36df9bb32dece492b91509f7968b92 100644 (file)
@@ -170,10 +170,11 @@ public class TaxonNodeDetailElement extends AbstractCdmDetailElement<ITaxonTreeN
 
                } else if (eventSource == selection_reuseExistingName) {
                        boolean enabled = selection_reuseExistingName.getEntity() == null;
+                       setTaxon(selection_reuseExistingName.getEntity());
                        selection_reuseExistingTaxon.setEnabled(enabled);
                        textNewTaxonName.setEnabled(enabled);
 
-                       setTaxon(selection_reuseExistingName.getEntity());
+                       //setTaxon(selection_reuseExistingName.getEntity());
                        complete = !textNewTaxonName.getText().isEmpty();
                } else if (eventSource == textNewTaxonName) {
                        boolean enabled = CdmUtils.isBlank(textNewTaxonName.getText());
@@ -279,6 +280,7 @@ public class TaxonNodeDetailElement extends AbstractCdmDetailElement<ITaxonTreeN
                        }
                }
                taxon = Taxon.NewInstance(taxonName, secundum);
+               setTaxon(taxon);
        }
 
        private void setOpenInEditor(boolean openInEditor) {