X-Git-Url: http://git.argeo.org/?a=blobdiff_plain;f=runtime%2Forg.argeo.slc.core%2Fsrc%2Fmain%2Fjava%2Forg%2Fargeo%2Fslc%2Fcore%2Fexecution%2FDefaultExecutionFlowDescriptorConverter.java;h=0fcd073af1201c80fc460667dbf5c717a50a94fb;hb=58e0e18d64a2080680a9f8397b0dfa2894519910;hp=27929b4b6fbaff5b34e7a62e8cf6f4ccf398a2a0;hpb=32f9566efa0d0ce29b31ee0779faf2b42f46321a;p=gpl%2Fargeo-slc.git diff --git a/runtime/org.argeo.slc.core/src/main/java/org/argeo/slc/core/execution/DefaultExecutionFlowDescriptorConverter.java b/runtime/org.argeo.slc.core/src/main/java/org/argeo/slc/core/execution/DefaultExecutionFlowDescriptorConverter.java index 27929b4b6..0fcd073af 100644 --- a/runtime/org.argeo.slc.core/src/main/java/org/argeo/slc/core/execution/DefaultExecutionFlowDescriptorConverter.java +++ b/runtime/org.argeo.slc.core/src/main/java/org/argeo/slc/core/execution/DefaultExecutionFlowDescriptorConverter.java @@ -1,5 +1,5 @@ /* - * Copyright (C) 2010 Mathieu Baudier + * Copyright (C) 2007-2012 Argeo GmbH * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -13,7 +13,6 @@ * See the License for the specific language governing permissions and * limitations under the License. */ - package org.argeo.slc.core.execution; import java.util.Comparator; @@ -35,6 +34,7 @@ import org.argeo.slc.execution.ExecutionSpec; import org.argeo.slc.execution.ExecutionSpecAttribute; import org.springframework.aop.scope.ScopedObject; import org.springframework.beans.BeansException; +import org.springframework.beans.factory.BeanFactory; import org.springframework.beans.factory.config.BeanDefinition; import org.springframework.beans.factory.config.ConfigurableListableBeanFactory; import org.springframework.context.ApplicationContext; @@ -135,6 +135,7 @@ public class DefaultExecutionFlowDescriptorConverter implements refValue.getType()); } } else { + // default is to take the value as is convertedValues.put(key, value); } } @@ -217,8 +218,11 @@ public class DefaultExecutionFlowDescriptorConverter implements efd.setPath(""); // Takes description from spring - BeanDefinition bd = getBeanFactory().getBeanDefinition(name); - efd.setDescription(bd.getDescription()); + BeanFactory bf = getBeanFactory(); + if (bf != null) { + BeanDefinition bd = getBeanFactory().getBeanDefinition(name); + efd.setDescription(bd.getDescription()); + } return efd; } @@ -269,9 +273,15 @@ public class DefaultExecutionFlowDescriptorConverter implements } } if (ref == null) { - log.warn("Cannot define reference for ref spec attribute " - + key + " in " + executionFlow + " (" + rsa + ")." - + " If it is an inner bean consider put it frozen."); + if (log.isTraceEnabled()) + log.trace("Cannot define reference for ref spec attribute " + + key + + " in " + + executionFlow + + " (" + + rsa + + ")." + + " If it is an inner bean consider put it frozen."); ref = REF_VALUE_INTERNAL; } else { if (log.isTraceEnabled()) @@ -286,7 +296,10 @@ public class DefaultExecutionFlowDescriptorConverter implements } } + /** @return can be null */ private ConfigurableListableBeanFactory getBeanFactory() { + if (applicationContext == null) + return null; return ((ConfigurableApplicationContext) applicationContext) .getBeanFactory(); }