From: Mathieu Baudier Date: Fri, 27 Jun 2008 22:03:53 +0000 (+0000) Subject: Adapt web services to lazy loading X-Git-Tag: argeo-slc-2.1.7~2741 X-Git-Url: http://git.argeo.org/?a=commitdiff_plain;h=b7f351768f4577c0799ab3c5df116ce30270af49;p=gpl%2Fargeo-slc.git Adapt web services to lazy loading git-svn-id: https://svn.argeo.org/slc/trunk@1301 4cfe0d0a-d680-48aa-b62c-e0a02a3f76cc --- diff --git a/org.argeo.slc.agent/src/main/java/org/argeo/slc/ant/AntSlcApplication.java b/org.argeo.slc.agent/src/main/java/org/argeo/slc/ant/AntSlcApplication.java index 76c833117..7c85fc239 100644 --- a/org.argeo.slc.agent/src/main/java/org/argeo/slc/ant/AntSlcApplication.java +++ b/org.argeo.slc.agent/src/main/java/org/argeo/slc/ant/AntSlcApplication.java @@ -28,6 +28,7 @@ import org.argeo.slc.core.structure.tree.TreeSPath; import org.argeo.slc.core.structure.tree.TreeSRegistry; import org.argeo.slc.logging.Log4jUtils; import org.argeo.slc.runtime.SlcExecutionOutput; +import org.springframework.beans.factory.BeanFactoryUtils; import org.springframework.beans.factory.ListableBeanFactory; import org.springframework.beans.factory.config.PropertyPlaceholderConfigurer; import org.springframework.beans.factory.xml.XmlBeanDefinitionReader; @@ -248,8 +249,9 @@ public class AntSlcApplication { ListableBeanFactory context = (ListableBeanFactory) project .getReference(AntConstants.REF_ROOT_CONTEXT); // Register build listeners - Map listeners = context.getBeansOfType( - BuildListener.class, false, true); + Map listeners = BeanFactoryUtils + .beansOfTypeIncludingAncestors(context, BuildListener.class, + false, false); for (BuildListener listener : listeners.values()) { project.addBuildListener(listener); } diff --git a/org.argeo.slc.agent/src/main/java/org/argeo/slc/ant/SlcExecutionBuildListener.java b/org.argeo.slc.agent/src/main/java/org/argeo/slc/ant/SlcExecutionBuildListener.java index 64dc33e98..d2661792b 100644 --- a/org.argeo.slc.agent/src/main/java/org/argeo/slc/ant/SlcExecutionBuildListener.java +++ b/org.argeo.slc.agent/src/main/java/org/argeo/slc/ant/SlcExecutionBuildListener.java @@ -63,7 +63,7 @@ public class SlcExecutionBuildListener extends AppenderSkeleton implements if (slcExecution != null) { if (currentStepNotified) { slcExecution.getSteps().add( - new SlcExecutionStep("LOG", event.getMessage())); + new SlcExecutionStep(event.getMessage())); notifyStep(slcExecution, slcExecution.currentStep()); currentStepNotified = true; } else { @@ -99,7 +99,7 @@ public class SlcExecutionBuildListener extends AppenderSkeleton implements if (logTaskStartFinish) msg = "Task " + event.getTask().getTaskName() + " started"; - slcExecution.getSteps().add(new SlcExecutionStep("LOG", msg)); + slcExecution.getSteps().add(new SlcExecutionStep(msg)); currentStepNotified = false; } @@ -139,7 +139,7 @@ public class SlcExecutionBuildListener extends AppenderSkeleton implements protected void addLogStep(BuildEvent event, String msg) { SlcExecution slcExecution = getSlcExecution(event); - slcExecution.getSteps().add(new SlcExecutionStep("LOG", msg)); + slcExecution.getSteps().add(new SlcExecutionStep(msg)); notifyStep(slcExecution, slcExecution.currentStep()); currentStepNotified = true; @@ -169,7 +169,7 @@ public class SlcExecutionBuildListener extends AppenderSkeleton implements SlcExecution slcExecution = getSlcExecution(project); if (currentStepNotified) { slcExecution.getSteps().add( - new SlcExecutionStep("LOG", event.getMessage().toString())); + new SlcExecutionStep(event.getMessage().toString())); currentStepNotified = false; } else { slcExecution.currentStep().addLog(event.getMessage().toString()); diff --git a/org.argeo.slc.agent/src/main/java/org/argeo/slc/ant/unit/MinimalAntClasspathTestCase.java b/org.argeo.slc.agent/src/main/java/org/argeo/slc/ant/unit/MinimalAntClasspathTestCase.java index 42ff5dabf..e86887e24 100644 --- a/org.argeo.slc.agent/src/main/java/org/argeo/slc/ant/unit/MinimalAntClasspathTestCase.java +++ b/org.argeo.slc.agent/src/main/java/org/argeo/slc/ant/unit/MinimalAntClasspathTestCase.java @@ -22,6 +22,7 @@ public class MinimalAntClasspathTestCase extends AbstractSpringTestCase { slcExecution.setUuid(UUID.randomUUID().toString()); slcExecution.getAttributes().put(AntConstants.EXECATTR_ANT_FILE, scriptPath); + slcExecution.setUser("user"); slcApp.execute(slcExecution, null, null, null); } diff --git a/org.argeo.slc.agent/src/main/java/org/argeo/slc/ws/client/WebServiceUtils.java b/org.argeo.slc.agent/src/main/java/org/argeo/slc/ws/client/WebServiceUtils.java index a7aaea135..607304458 100644 --- a/org.argeo.slc.agent/src/main/java/org/argeo/slc/ws/client/WebServiceUtils.java +++ b/org.argeo.slc.agent/src/main/java/org/argeo/slc/ws/client/WebServiceUtils.java @@ -11,6 +11,7 @@ import org.springframework.ws.soap.SoapFaultDetailElement; import org.springframework.ws.soap.client.SoapFaultClientException; import org.springframework.xml.transform.StringResult; import org.w3c.dom.Node; +import org.w3c.dom.Text; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; @@ -51,24 +52,31 @@ public abstract class WebServiceUtils { log .error("WS root cause: " + e.getSoapFault().getFaultStringOrReason()); - StringBuffer stack = new StringBuffer(""); - SoapFaultDetail detail = e.getSoapFault().getFaultDetail(); - if (detail != null) { - Iterator it = (Iterator) detail - .getDetailEntries(); - while (it.hasNext()) { - SoapFaultDetailElement elem = it.next(); - if (elem.getName().getLocalPart().equals("StackElement")) { - Source source = elem.getSource(); - if (source instanceof DOMSource) { - Node node = ((DOMSource) source).getNode(); - stack.append(node.getTextContent()).append('\n'); + if (log.isTraceEnabled()) { + StringBuffer stack = new StringBuffer(""); + SoapFaultDetail detail = e.getSoapFault().getFaultDetail(); + if (detail != null) { + Iterator it = (Iterator) detail + .getDetailEntries(); + while (it.hasNext()) { + SoapFaultDetailElement elem = it.next(); + if (elem.getName().getLocalPart().equals("StackElement")) { + Source source = elem.getSource(); + if (source instanceof DOMSource) { + Node node = ((DOMSource) source).getNode(); + // stack.append(node.getTextContent()).append('\n'); + stack + .append( + node.getChildNodes().item(0) + .getNodeValue()).append( + '\n'); + } } } - } - if (stack.length() > 0 && log.isTraceEnabled()) - log.error("WS root cause stack: " + stack); + if (stack.length() > 0) + log.error("WS root cause stack: " + stack); + } } }