From servicemix-commits-return-4175ohart@example.net Tue Apr 03 11:36:29 2007 Return-Path: <servicemix-commits-return-4175ohart@example.net> Delivered-To: ohart@example.net Received: (qmail 31740 invoked from network); 3 Apr 2007 11:36:28 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (83.161.120.155) by minotaur.apache.org with SMTP; 3 Apr 2007 11:36:28 -0000 Received: (qmail 2882 invoked by uid 500); 3 Apr 2007 11:36:35 -0000 Delivered-To: ohart@example.net Received: (qmail 2811 invoked by uid 500); 3 Apr 2007 11:36:35 -0000 Mailing-List: contact ohart@example.net; run by ezmlm Precedence: bulk List-Help: <mailto:ohart@example.net> List-Unsubscribe: <mailto:ohart@example.net> List-Post: <mailto:ohart@example.net> List-Id: <servicemix-commits.geronimo.apache.org> Reply-To: ohart@example.net Delivered-To: mailing list ohart@example.net Received: (qmail 2802 invoked by uid 99); 3 Apr 2007 11:36:35 -0000 Received: from herse.apache.org (HELO herse.apache.org) (83.161.120.155) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 03 Apr 2007 04:36:35 -0700 X-ASF-Spam-Status: No, hits=-99.5 required=10.0 tests=ALL_TRUSTED,NO_REAL_NAME X-Spam-Check-By: apache.org Received: from [83.161.120.155] (HELO eris.apache.org) (83.161.120.155) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 03 Apr 2007 04:36:27 -0700 Received: by eris.apache.org (Postfix, from userid 65534) id 96C951A9838; Tue, 3 Apr 2007 04:36:07 -0700 (PDT) Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: svn commit: r525140 - in /incubator/servicemix/branches/servicemix-3.1/distributions/apache-servicemix/src/main/release/conf: jmx.xml servicemix.properties Date: Tue, 03 Apr 2007 11:36:07 -0000 To: ohart@example.net From: ohart@example.net X-Mailer: svnmailer-1.1.0 Message-Id: <ohart@example.net> X-Virus-Checked: Checked by ClamAV on apache.org Author: tterm Date: Tue Apr 3 04:36:04 2007 New Revision: 525140 URL: http://svn.apache.org/viewvc?view=rev&rev=525140 Log: SM-876 jmx.xml should use the jmx.url property from servicemix.properties Modified: incubator/servicemix/branches/servicemix-3.1/distributions/apache-servicemix/src/main/release/conf/jmx.xml incubator/servicemix/branches/servicemix-3.1/distributions/apache-servicemix/src/main/release/conf/servicemix.properties Modified: incubator/servicemix/branches/servicemix-3.1/distributions/apache-servicemix/src/main/release/conf/jmx.xml URL: http://svn.apache.org/viewvc/incubator/servicemix/branches/servicemix-3.1/distributions/apache-servicemix/src/main/release/conf/jmx.xml?view=diff&rev=525140&r1=525139&r2=525140 ============================================================================== --- incubator/servicemix/branches/servicemix-3.1/distributions/apache-servicemix/src/main/release/conf/jmx.xml (original) +++ incubator/servicemix/branches/servicemix-3.1/distributions/apache-servicemix/src/main/release/conf/jmx.xml Tue Apr 3 04:36:04 2007 @@ -28,7 +28,7 @@ <!-- JMX Remote connector --> <sm:jmxConnector objectName="connector:name=rmi" - serviceUrl="service:jmx:rmi:///jndi/rmi://localhost:${rmi.port}/jmxrmi" + serviceUrl="${jmx.url}" threaded="true" daemon="true" depends-on="rmiRegistry, jndi" Modified: incubator/servicemix/branches/servicemix-3.1/distributions/apache-servicemix/src/main/release/conf/servicemix.properties URL: http://svn.apache.org/viewvc/incubator/servicemix/branches/servicemix-3.1/distributions/apache-servicemix/src/main/release/conf/servicemix.properties?view=diff&rev=525140&r1=525139&r2=525140 ============================================================================== --- incubator/servicemix/branches/servicemix-3.1/distributions/apache-servicemix/src/main/release/conf/servicemix.properties (original) +++ incubator/servicemix/branches/servicemix-3.1/distributions/apache-servicemix/src/main/release/conf/servicemix.properties Tue Apr 3 04:36:04 2007 @@ -22,7 +22,8 @@ # rmi.port = 1099 -jmx.url = service:jmx:rmi:///jndi/rmi://localhost:${rmi.port}/jmxrmi +rmi.host = localhost +jmx.url = service:jmx:rmi:///jndi/rmi://${rmi.host}:${rmi.port}/jmxrmi activemq.port = 61616 activemq.host = localhost From servicemix-commits-return-4176ohart@example.net Tue Apr 03 12:02:06 2007 Return-Path: <servicemix-commits-return-4176ohart@example.net> Delivered-To: ohart@example.net Received: (qmail 42620 invoked from network); 3 Apr 2007 12:02:03 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (83.161.120.155) by minotaur.apache.org with SMTP; 3 Apr 2007 12:02:03 -0000 Received: (qmail 43604 invoked by uid 500); 3 Apr 2007 12:02:10 -0000 Delivered-To: ohart@example.net Received: (qmail 43576 invoked by uid 500); 3 Apr 2007 12:02:10 -0000 Mailing-List: contact ohart@example.net; run by ezmlm Precedence: bulk List-Help: <mailto:ohart@example.net> List-Unsubscribe: <mailto:ohart@example.net> List-Post: <mailto:ohart@example.net> List-Id: <servicemix-commits.geronimo.apache.org> Reply-To: ohart@example.net Delivered-To: mailing list ohart@example.net Received: (qmail 43567 invoked by uid 99); 3 Apr 2007 12:02:10 -0000 Received: from herse.apache.org (HELO herse.apache.org) (83.161.120.155) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 03 Apr 2007 05:02:10 -0700 X-ASF-Spam-Status: No, hits=-99.5 required=10.0 tests=ALL_TRUSTED,NO_REAL_NAME X-Spam-Check-By: apache.org Received: from [83.161.120.155] (HELO eris.apache.org) (83.161.120.155) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 03 Apr 2007 05:02:02 -0700 Received: by eris.apache.org (Postfix, from userid 65534) id 9D5791A9838; Tue, 3 Apr 2007 05:01:42 -0700 (PDT) Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: svn commit: r525144 - /incubator/servicemix/branches/servicemix-3.1/core/servicemix-core/src/main/java/org/apache/servicemix/jbi/jmx/ConnectorServerFactoryBean.java Date: Tue, 03 Apr 2007 12:01:42 -0000 To: ohart@example.net From: ohart@example.net X-Mailer: svnmailer-1.1.0 Message-Id: <ohart@example.net> X-Virus-Checked: Checked by ClamAV on apache.org Author: tterm Date: Tue Apr 3 05:01:41 2007 New Revision: 525144 URL: http://svn.apache.org/viewvc?view=rev&rev=525144 Log: SM-904 The jmx url is wrong if there are spaces at the end of the properties Modified: incubator/servicemix/branches/servicemix-3.1/core/servicemix-core/src/main/java/org/apache/servicemix/jbi/jmx/ConnectorServerFactoryBean.java Modified: incubator/servicemix/branches/servicemix-3.1/core/servicemix-core/src/main/java/org/apache/servicemix/jbi/jmx/ConnectorServerFactoryBean.java URL: http://svn.apache.org/viewvc/incubator/servicemix/branches/servicemix-3.1/core/servicemix-core/src/main/java/org/apache/servicemix/jbi/jmx/ConnectorServerFactoryBean.java?view=diff&rev=525144&r1=525143&r2=525144 ============================================================================== --- incubator/servicemix/branches/servicemix-3.1/core/servicemix-core/src/main/java/org/apache/servicemix/jbi/jmx/ConnectorServerFactoryBean.java (original) +++ incubator/servicemix/branches/servicemix-3.1/core/servicemix-core/src/main/java/org/apache/servicemix/jbi/jmx/ConnectorServerFactoryBean.java Tue Apr 3 05:01:41 2007 @@ -184,6 +184,7 @@ csfb.setRegistrationBehavior(registrationBehavior); csfb.setEnvironmentMap(environment); csfb.setObjectName(objectName); + serviceUrl = serviceUrl.replaceAll(" ", ""); csfb.setServiceUrl(serviceUrl); csfb.setServer(server); csfb.afterPropertiesSet(); From servicemix-commits-return-4177ohart@example.net Tue Apr 03 13:47:01 2007 Return-Path: <servicemix-commits-return-4177ohart@example.net> Delivered-To: ohart@example.net Received: (qmail 82595 invoked from network); 3 Apr 2007 13:47:00 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (83.161.120.155) by minotaur.apache.org with SMTP; 3 Apr 2007 13:47:00 -0000 Received: (qmail 64116 invoked by uid 500); 3 Apr 2007 13:47:07 -0000 Delivered-To: ohart@example.net Received: (qmail 64096 invoked by uid 500); 3 Apr 2007 13:47:06 -0000 Mailing-List: contact ohart@example.net; run by ezmlm Precedence: bulk List-Help: <mailto:ohart@example.net> List-Unsubscribe: <mailto:ohart@example.net> List-Post: <mailto:ohart@example.net> List-Id: <servicemix-commits.geronimo.apache.org> Reply-To: ohart@example.net Delivered-To: mailing list ohart@example.net Received: (qmail 64083 invoked by uid 99); 3 Apr 2007 13:47:06 -0000 X-ASF-Spam-Status: No, hits=-99.5 required=10.0 tests=ALL_TRUSTED,NO_REAL_NAME X-Spam-Check-By: apache.org Received: from [83.161.120.155] (HELO eris.apache.org) (83.161.120.155) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 03 Apr 2007 06:47:06 -0700 Received: by eris.apache.org (Postfix, from userid 65534) id D3BE71A9838; Tue, 3 Apr 2007 06:46:08 -0700 (PDT) Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: svn commit: r525153 - /incubator/servicemix/branches/servicemix-3.1/pom.xml Date: Tue, 03 Apr 2007 13:46:08 -0000 To: ohart@example.net From: ohart@example.net X-Mailer: svnmailer-1.1.0 Message-Id: <ohart@example.net> X-Virus-Checked: Checked by ClamAV on apache.org Author: gnodet Date: Tue Apr 3 06:46:05 2007 New Revision: 525153 URL: http://svn.apache.org/viewvc?view=rev&rev=525153 Log: SM-916: Upgrade to ActiveMQ 4.1.1 Modified: incubator/servicemix/branches/servicemix-3.1/pom.xml Modified: incubator/servicemix/branches/servicemix-3.1/pom.xml URL: http://svn.apache.org/viewvc/incubator/servicemix/branches/servicemix-3.1/pom.xml?view=diff&rev=525153&r1=525152&r2=525153 ============================================================================== --- incubator/servicemix/branches/servicemix-3.1/pom.xml (original) +++ incubator/servicemix/branches/servicemix-3.1/pom.xml Tue Apr 3 06:46:05 2007 @@ -197,7 +197,7 @@ <mavenAssemblyPluginVersion>2.1</mavenAssemblyPluginVersion> <xbean-version>2.8</xbean-version> <spring-version>2.0.1</spring-version> - <activemq-version>4.1-incubator-20070103</activemq-version> + <activemq-version>4.1.1</activemq-version> <activeio-version>3.0.0-incubator</activeio-version> <backport-util-concurrent-version>2.2</backport-util-concurrent-version> <jencks-version>2.0</jencks-version> From servicemix-commits-return-4178ohart@example.net Tue Apr 03 21:35:37 2007 Return-Path: <servicemix-commits-return-4178ohart@example.net> Delivered-To: ohart@example.net Received: (qmail 81811 invoked from network); 3 Apr 2007 21:35:36 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (83.161.120.155) by minotaur.apache.org with SMTP; 3 Apr 2007 21:35:36 -0000 Received: (qmail 92360 invoked by uid 500); 3 Apr 2007 21:35:36 -0000 Delivered-To: ohart@example.net Received: (qmail 92306 invoked by uid 500); 3 Apr 2007 21:35:35 -0000 Mailing-List: contact ohart@example.net; run by ezmlm Precedence: bulk List-Help: <mailto:ohart@example.net> List-Unsubscribe: <mailto:ohart@example.net> List-Post: <mailto:ohart@example.net> List-Id: <servicemix-commits.geronimo.apache.org> Reply-To: ohart@example.net Delivered-To: mailing list ohart@example.net Received: (qmail 92260 invoked by uid 99); 3 Apr 2007 21:35:35 -0000 Received: from herse.apache.org (HELO herse.apache.org) (83.161.120.155) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 03 Apr 2007 14:35:35 -0700 X-ASF-Spam-Status: No, hits=-99.5 required=10.0 tests=ALL_TRUSTED,NO_REAL_NAME X-Spam-Check-By: apache.org Received: from [83.161.120.155] (HELO eris.apache.org) (83.161.120.155) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 03 Apr 2007 14:35:28 -0700 Received: by eris.apache.org (Postfix, from userid 65534) id DF0141A9838; Tue, 3 Apr 2007 14:35:07 -0700 (PDT) Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: svn commit: r525287 - in /incubator/servicemix/trunk/common/servicemix-common/src/main/java/org/apache/servicemix/common/xbean: AbstractXBeanDeployer.java ClassLoaderXmlPreprocessor.java Date: Tue, 03 Apr 2007 21:35:07 -0000 To: ohart@example.net From: ohart@example.net X-Mailer: svnmailer-1.1.0 Message-Id: <ohart@example.net> X-Virus-Checked: Checked by ClamAV on apache.org Author: gnodet Date: Tue Apr 3 14:35:07 2007 New Revision: 525287 URL: http://svn.apache.org/viewvc?view=rev&rev=525287 Log: SM-918: Ability to reference Shared Libraries from Service Units Modified: incubator/servicemix/trunk/common/servicemix-common/src/main/java/org/apache/servicemix/common/xbean/AbstractXBeanDeployer.java incubator/servicemix/trunk/common/servicemix-common/src/main/java/org/apache/servicemix/common/xbean/ClassLoaderXmlPreprocessor.java Modified: incubator/servicemix/trunk/common/servicemix-common/src/main/java/org/apache/servicemix/common/xbean/AbstractXBeanDeployer.java URL: http://svn.apache.org/viewvc/incubator/servicemix/trunk/common/servicemix-common/src/main/java/org/apache/servicemix/common/xbean/AbstractXBeanDeployer.java?view=diff&rev=525287&r1=525286&r2=525287 ============================================================================== --- incubator/servicemix/trunk/common/servicemix-common/src/main/java/org/apache/servicemix/common/xbean/AbstractXBeanDeployer.java (original) +++ incubator/servicemix/trunk/common/servicemix-common/src/main/java/org/apache/servicemix/common/xbean/AbstractXBeanDeployer.java Tue Apr 3 14:35:07 2007 @@ -20,6 +20,8 @@ import org.apache.servicemix.common.Endpoint; import org.apache.servicemix.common.ServiceMixComponent; import org.apache.servicemix.common.ServiceUnit; +import org.apache.servicemix.jbi.container.JBIContainer; +import org.apache.servicemix.jbi.framework.ComponentContextImpl; import org.apache.xbean.kernel.Kernel; import org.apache.xbean.kernel.KernelFactory; import org.apache.xbean.kernel.ServiceName; @@ -28,6 +30,7 @@ import org.springframework.beans.factory.config.PropertyPlaceholderConfigurer; import org.springframework.core.io.FileSystemResource; +import javax.jbi.component.ComponentContext; import javax.jbi.management.DeploymentException; import java.io.File; import java.util.Collections; @@ -116,8 +119,12 @@ } protected List getXmlPreProcessors(String serviceUnitRootPath) { + JBIContainer container = null; + try { + container = ((ComponentContextImpl) component.getComponentContext()).getContainer(); + } catch (Throwable t) { } FileSystemRepository repository = new FileSystemRepository(new File(serviceUnitRootPath)); - ClassLoaderXmlPreprocessor classLoaderXmlPreprocessor = new ClassLoaderXmlPreprocessor(repository); + ClassLoaderXmlPreprocessor classLoaderXmlPreprocessor = new ClassLoaderXmlPreprocessor(repository, container); return Collections.singletonList(classLoaderXmlPreprocessor); } Modified: incubator/servicemix/trunk/common/servicemix-common/src/main/java/org/apache/servicemix/common/xbean/ClassLoaderXmlPreprocessor.java URL: http://svn.apache.org/viewvc/incubator/servicemix/trunk/common/servicemix-common/src/main/java/org/apache/servicemix/common/xbean/ClassLoaderXmlPreprocessor.java?view=diff&rev=525287&r1=525286&r2=525287 ============================================================================== --- incubator/servicemix/trunk/common/servicemix-common/src/main/java/org/apache/servicemix/common/xbean/ClassLoaderXmlPreprocessor.java (original) +++ incubator/servicemix/trunk/common/servicemix-common/src/main/java/org/apache/servicemix/common/xbean/ClassLoaderXmlPreprocessor.java Tue Apr 3 14:35:07 2007 @@ -26,6 +26,8 @@ import javax.xml.parsers.DocumentBuilder; +import org.apache.servicemix.jbi.container.JBIContainer; +import org.apache.servicemix.jbi.framework.SharedLibrary; import org.apache.servicemix.jbi.jaxp.SourceTransformer; import org.apache.xbean.classloader.JarFileClassLoader; import org.apache.xbean.server.repository.FileSystemRepository; @@ -52,12 +54,18 @@ public static final String LIB_DIR = "/lib"; private final FileSystemRepository repository; + private final JBIContainer container; public ClassLoaderXmlPreprocessor(Repository repository) { + this(repository, null); + } + + public ClassLoaderXmlPreprocessor(Repository repository, JBIContainer container) { if (repository instanceof FileSystemRepository == false) { throw new IllegalArgumentException("repository must be a FileSystemRepository"); } this.repository = (FileSystemRepository) repository; + this.container = container; } public void preprocess(SpringApplicationContext applicationContext, XmlBeanDefinitionReader reader, Document document) { @@ -161,6 +169,18 @@ classpath.add(location); } + // Add shared libraries + List<String> sls = new ArrayList<String>(); + NodeList libraries = classpathElement.getElementsByTagName("library"); + for (int i = 0; i < libraries.getLength(); i++) { + Element locationElement = (Element) locations.item(i); + String library = ((Text) locationElement.getFirstChild()).getData().trim(); + sls.add(library); + } + if (sls.size() > 0 && container == null) { + throw new IllegalStateException("Can not reference shared libraries if the component is not deployed in ServiceMix"); + } + // convert the paths to URLS URL[] urls; if (classpath.size() != 0) { @@ -178,10 +198,15 @@ } // create the classloader - ClassLoader parentLoader = getParentClassLoader(applicationContext); + List<ClassLoader> parents = new ArrayList<ClassLoader>(); + parents.add(getParentClassLoader(applicationContext)); + for (String library : sls) { + SharedLibrary sl = container.getRegistry().getSharedLibrary(library); + parents.add(sl.getClassLoader()); + } classLoader = new JarFileClassLoader(applicationContext.getDisplayName(), urls, - parentLoader, + parents.toArray(new ClassLoader[parents.size()]), inverse, hidden.toArray(new String[hidden.size()]), nonOverridable.toArray(new String[nonOverridable.size()])); From servicemix-commits-return-4179ohart@example.net Fri Apr 06 08:19:44 2007 Return-Path: <servicemix-commits-return-4179ohart@example.net> Delivered-To: ohart@example.net Received: (qmail 45788 invoked from network); 6 Apr 2007 08:19:43 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (83.161.120.155) by minotaur.apache.org with SMTP; 6 Apr 2007 08:19:43 -0000 Received: (qmail 4556 invoked by uid 500); 6 Apr 2007 08:19:50 -0000 Delivered-To: ohart@example.net Received: (qmail 4486 invoked by uid 500); 6 Apr 2007 08:19:50 -0000 Mailing-List: contact ohart@example.net; run by ezmlm Precedence: bulk List-Help: <mailto:ohart@example.net> List-Unsubscribe: <mailto:ohart@example.net> List-Post: <mailto:ohart@example.net> List-Id: <servicemix-commits.geronimo.apache.org> Reply-To: ohart@example.net Delivered-To: mailing list ohart@example.net Received: (qmail 4477 invoked by uid 99); 6 Apr 2007 08:19:50 -0000 Received: from herse.apache.org (HELO herse.apache.org) (83.161.120.155) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 06 Apr 2007 01:19:50 -0700 X-ASF-Spam-Status: No, hits=-99.5 required=10.0 tests=ALL_TRUSTED,NO_REAL_NAME X-Spam-Check-By: apache.org Received: from [83.161.120.155] (HELO eris.apache.org) (83.161.120.155) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 06 Apr 2007 01:19:42 -0700 Received: by eris.apache.org (Postfix, from userid 65534) id 8D4531A9838; Fri, 6 Apr 2007 01:19:22 -0700 (PDT) Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: svn commit: r526089 - /incubator/servicemix/trunk/deployables/bindingcomponents/servicemix-http/src/main/java/org/apache/servicemix/http/jetty/JettyContextManager.java Date: Fri, 06 Apr 2007 08:19:22 -0000 To: ohart@example.net From: ohart@example.net X-Mailer: svnmailer-1.1.0 Message-Id: <ohart@example.net> X-Virus-Checked: Checked by ClamAV on apache.org Author: gnodet Date: Fri Apr 6 01:19:21 2007 New Revision: 526089 URL: http://svn.apache.org/viewvc?view=rev&rev=526089 Log: SM-922: When browsing for available services, existing urls should end with a '/' when displayed Modified: incubator/servicemix/trunk/deployables/bindingcomponents/servicemix-http/src/main/java/org/apache/servicemix/http/jetty/JettyContextManager.java Modified: incubator/servicemix/trunk/deployables/bindingcomponents/servicemix-http/src/main/java/org/apache/servicemix/http/jetty/JettyContextManager.java URL: http://svn.apache.org/viewvc/incubator/servicemix/trunk/deployables/bindingcomponents/servicemix-http/src/main/java/org/apache/servicemix/http/jetty/JettyContextManager.java?view=diff&rev=526089&r1=526088&r2=526089 ============================================================================== --- incubator/servicemix/trunk/deployables/bindingcomponents/servicemix-http/src/main/java/org/apache/servicemix/http/jetty/JettyContextManager.java (original) +++ incubator/servicemix/trunk/deployables/bindingcomponents/servicemix-http/src/main/java/org/apache/servicemix/http/jetty/JettyContextManager.java Fri Apr 6 01:19:21 2007 @@ -397,24 +397,24 @@ continue; } ContextHandler context = (ContextHandler) handlers[i]; + StringBuffer sb = new StringBuffer(); + sb.append(serverUri); + if (!context.getContextPath().startsWith("/")) { + sb.append("/"); + } + sb.append(context.getContextPath()); + if (!context.getContextPath().endsWith("/")) { + sb.append("/"); + } if (context.isStarted()) { writer.write("<li><a href=\""); - writer.write(serverUri); - if (!context.getContextPath().startsWith("/")) { - writer.write("/"); - } - writer.write(context.getContextPath()); - if (!context.getContextPath().endsWith("/")) { - writer.write("/"); - } + writer.write(sb.toString()); writer.write("?wsdl\">"); - writer.write(serverUri); - writer.write(context.getContextPath()); + writer.write(sb.toString()); writer.write("</a></li>\n"); } else { writer.write("<li>"); - writer.write(serverUri); - writer.write(context.getContextPath()); + writer.write(sb.toString()); writer.write(" [Stopped]</li>\n"); } } From servicemix-commits-return-4180ohart@example.net Fri Apr 06 08:20:12 2007 Return-Path: <servicemix-commits-return-4180ohart@example.net> Delivered-To: ohart@example.net Received: (qmail 45856 invoked from network); 6 Apr 2007 08:20:11 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (83.161.120.155) by minotaur.apache.org with SMTP; 6 Apr 2007 08:20:11 -0000 Received: (qmail 5090 invoked by uid 500); 6 Apr 2007 08:20:18 -0000 Delivered-To: ohart@example.net Received: (qmail 5021 invoked by uid 500); 6 Apr 2007 08:20:18 -0000 Mailing-List: contact ohart@example.net; run by ezmlm Precedence: bulk List-Help: <mailto:ohart@example.net> List-Unsubscribe: <mailto:ohart@example.net> List-Post: <mailto:ohart@example.net> List-Id: <servicemix-commits.geronimo.apache.org> Reply-To: ohart@example.net Delivered-To: mailing list ohart@example.net Received: (qmail 5012 invoked by uid 99); 6 Apr 2007 08:20:18 -0000 Received: from herse.apache.org (HELO herse.apache.org) (83.161.120.155) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 06 Apr 2007 01:20:18 -0700 X-ASF-Spam-Status: No, hits=-99.5 required=10.0 tests=ALL_TRUSTED,NO_REAL_NAME X-Spam-Check-By: apache.org Received: from [83.161.120.155] (HELO eris.apache.org) (83.161.120.155) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 06 Apr 2007 01:20:11 -0700 Received: by eris.apache.org (Postfix, from userid 65534) id 0E8401A983E; Fri, 6 Apr 2007 01:19:51 -0700 (PDT) Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: svn commit: r526090 - /incubator/servicemix/branches/servicemix-3.1/deployables/bindingcomponents/servicemix-http/src/main/java/org/apache/servicemix/http/jetty/JettyContextManager.java Date: Fri, 06 Apr 2007 08:19:50 -0000 To: ohart@example.net From: ohart@example.net X-Mailer: svnmailer-1.1.0 Message-Id: <ohart@example.net> X-Virus-Checked: Checked by ClamAV on apache.org Author: gnodet Date: Fri Apr 6 01:19:49 2007 New Revision: 526090 URL: http://svn.apache.org/viewvc?view=rev&rev=526090 Log: SM-922: When browsing for available services, existing urls should end with a '/' when displayed Modified: incubator/servicemix/branches/servicemix-3.1/deployables/bindingcomponents/servicemix-http/src/main/java/org/apache/servicemix/http/jetty/JettyContextManager.java Modified: incubator/servicemix/branches/servicemix-3.1/deployables/bindingcomponents/servicemix-http/src/main/java/org/apache/servicemix/http/jetty/JettyContextManager.java URL: http://svn.apache.org/viewvc/incubator/servicemix/branches/servicemix-3.1/deployables/bindingcomponents/servicemix-http/src/main/java/org/apache/servicemix/http/jetty/JettyContextManager.java?view=diff&rev=526090&r1=526089&r2=526090 ============================================================================== --- incubator/servicemix/branches/servicemix-3.1/deployables/bindingcomponents/servicemix-http/src/main/java/org/apache/servicemix/http/jetty/JettyContextManager.java (original) +++ incubator/servicemix/branches/servicemix-3.1/deployables/bindingcomponents/servicemix-http/src/main/java/org/apache/servicemix/http/jetty/JettyContextManager.java Fri Apr 6 01:19:49 2007 @@ -397,24 +397,24 @@ continue; } ContextHandler context = (ContextHandler) handlers[i]; + StringBuffer sb = new StringBuffer(); + sb.append(serverUri); + if (!context.getContextPath().startsWith("/")) { + sb.append("/"); + } + sb.append(context.getContextPath()); + if (!context.getContextPath().endsWith("/")) { + sb.append("/"); + } if (context.isStarted()) { writer.write("<li><a href=\""); - writer.write(serverUri); - if (!context.getContextPath().startsWith("/")) { - writer.write("/"); - } - writer.write(context.getContextPath()); - if (!context.getContextPath().endsWith("/")) { - writer.write("/"); - } + writer.write(sb.toString()); writer.write("?wsdl\">"); - writer.write(serverUri); - writer.write(context.getContextPath()); + writer.write(sb.toString()); writer.write("</a></li>\n"); } else { writer.write("<li>"); - writer.write(serverUri); - writer.write(context.getContextPath()); + writer.write(sb.toString()); writer.write(" [Stopped]</li>\n"); } } From servicemix-commits-return-4181ohart@example.net Fri Apr 06 08:50:55 2007 Return-Path: <servicemix-commits-return-4181ohart@example.net> Delivered-To: ohart@example.net Received: (qmail 54995 invoked from network); 6 Apr 2007 08:50:54 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (83.161.120.155) by minotaur.apache.org with SMTP; 6 Apr 2007 08:50:54 -0000 Received: (qmail 57941 invoked by uid 500); 6 Apr 2007 08:51:01 -0000 Delivered-To: ohart@example.net Received: (qmail 57859 invoked by uid 500); 6 Apr 2007 08:51:01 -0000 Mailing-List: contact ohart@example.net; run by ezmlm Precedence: bulk List-Help: <mailto:ohart@example.net> List-Unsubscribe: <mailto:ohart@example.net> List-Post: <mailto:ohart@example.net> List-Id: <servicemix-commits.geronimo.apache.org> Reply-To: ohart@example.net Delivered-To: mailing list ohart@example.net Received: (qmail 57850 invoked by uid 99); 6 Apr 2007 08:51:01 -0000 Received: from herse.apache.org (HELO herse.apache.org) (83.161.120.155) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 06 Apr 2007 01:51:01 -0700 X-ASF-Spam-Status: No, hits=-99.5 required=10.0 tests=ALL_TRUSTED,NO_REAL_NAME X-Spam-Check-By: apache.org Received: from [83.161.120.155] (HELO eris.apache.org) (83.161.120.155) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 06 Apr 2007 01:50:54 -0700 Received: by eris.apache.org (Postfix, from userid 65534) id D45EB1A983E; Fri, 6 Apr 2007 01:50:33 -0700 (PDT) Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: svn commit: r526104 - /incubator/servicemix/branches/servicemix-3.1/web/servicemix-web-console/src/main/java/org/apache/servicemix/web/model/Registry.java Date: Fri, 06 Apr 2007 08:50:33 -0000 To: ohart@example.net From: ohart@example.net X-Mailer: svnmailer-1.1.0 Message-Id: <ohart@example.net> X-Virus-Checked: Checked by ClamAV on apache.org Author: gnodet Date: Fri Apr 6 01:50:31 2007 New Revision: 526104 URL: http://svn.apache.org/viewvc?view=rev&rev=526104 Log: SM-923: NPE in web console when viewing component with lightweight components deployed Modified: incubator/servicemix/branches/servicemix-3.1/web/servicemix-web-console/src/main/java/org/apache/servicemix/web/model/Registry.java Modified: incubator/servicemix/branches/servicemix-3.1/web/servicemix-web-console/src/main/java/org/apache/servicemix/web/model/Registry.java URL: http://svn.apache.org/viewvc/incubator/servicemix/branches/servicemix-3.1/web/servicemix-web-console/src/main/java/org/apache/servicemix/web/model/Registry.java?view=diff&rev=526104&r1=526103&r2=526104 ============================================================================== --- incubator/servicemix/branches/servicemix-3.1/web/servicemix-web-console/src/main/java/org/apache/servicemix/web/model/Registry.java (original) +++ incubator/servicemix/branches/servicemix-3.1/web/servicemix-web-console/src/main/java/org/apache/servicemix/web/model/Registry.java Fri Apr 6 01:50:31 2007 @@ -89,7 +89,7 @@ public List<Endpoint> getEndpoints(Component component) throws Exception { List<Endpoint> endpoints = new ArrayList<Endpoint>(); for (Endpoint endpoint : getEndpoints()) { - if (endpoint.getComponent().equals(component)) { + if (component.equals(endpoint.getComponent())) { endpoints.add(endpoint); } } From servicemix-commits-return-4182ohart@example.net Fri Apr 06 08:52:09 2007 Return-Path: <servicemix-commits-return-4182ohart@example.net> Delivered-To: ohart@example.net Received: (qmail 55536 invoked from network); 6 Apr 2007 08:52:08 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (83.161.120.155) by minotaur.apache.org with SMTP; 6 Apr 2007 08:52:08 -0000 Received: (qmail 61931 invoked by uid 500); 6 Apr 2007 08:52:15 -0000 Delivered-To: ohart@example.net Received: (qmail 61900 invoked by uid 500); 6 Apr 2007 08:52:15 -0000 Mailing-List: contact ohart@example.net; run by ezmlm Precedence: bulk List-Help: <mailto:ohart@example.net> List-Unsubscribe: <mailto:ohart@example.net> List-Post: <mailto:ohart@example.net> List-Id: <servicemix-commits.geronimo.apache.org> Reply-To: ohart@example.net Delivered-To: mailing list ohart@example.net Received: (qmail 61891 invoked by uid 99); 6 Apr 2007 08:52:15 -0000 Received: from herse.apache.org (HELO herse.apache.org) (83.161.120.155) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 06 Apr 2007 01:52:15 -0700 X-ASF-Spam-Status: No, hits=-99.5 required=10.0 tests=ALL_TRUSTED,NO_REAL_NAME X-Spam-Check-By: apache.org Received: from [83.161.120.155] (HELO eris.apache.org) (83.161.120.155) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 06 Apr 2007 01:52:07 -0700 Received: by eris.apache.org (Postfix, from userid 65534) id 874201A9838; Fri, 6 Apr 2007 01:51:47 -0700 (PDT) Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: svn commit: r526105 - /incubator/servicemix/trunk/web/servicemix-web-console/src/main/java/org/apache/servicemix/web/model/Registry.java Date: Fri, 06 Apr 2007 08:51:47 -0000 To: ohart@example.net From: ohart@example.net X-Mailer: svnmailer-1.1.0 Message-Id: <ohart@example.net> X-Virus-Checked: Checked by ClamAV on apache.org Author: gnodet Date: Fri Apr 6 01:51:46 2007 New Revision: 526105 URL: http://svn.apache.org/viewvc?view=rev&rev=526105 Log: SM-923: NPE in web console when viewing component with lightweight components deployed Modified: incubator/servicemix/trunk/web/servicemix-web-console/src/main/java/org/apache/servicemix/web/model/Registry.java Modified: incubator/servicemix/trunk/web/servicemix-web-console/src/main/java/org/apache/servicemix/web/model/Registry.java URL: http://svn.apache.org/viewvc/incubator/servicemix/trunk/web/servicemix-web-console/src/main/java/org/apache/servicemix/web/model/Registry.java?view=diff&rev=526105&r1=526104&r2=526105 ============================================================================== --- incubator/servicemix/trunk/web/servicemix-web-console/src/main/java/org/apache/servicemix/web/model/Registry.java (original) +++ incubator/servicemix/trunk/web/servicemix-web-console/src/main/java/org/apache/servicemix/web/model/Registry.java Fri Apr 6 01:51:46 2007 @@ -89,7 +89,7 @@ public List<Endpoint> getEndpoints(Component component) throws Exception { List<Endpoint> endpoints = new ArrayList<Endpoint>(); for (Endpoint endpoint : getEndpoints()) { - if (endpoint.getComponent().equals(component)) { + if (component.equals(endpoint.getComponent())) { endpoints.add(endpoint); } } From servicemix-commits-return-4183ohart@example.net Fri Apr 06 08:56:43 2007 Return-Path: <servicemix-commits-return-4183ohart@example.net> Delivered-To: ohart@example.net Received: (qmail 56683 invoked from network); 6 Apr 2007 08:56:42 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (83.161.120.155) by minotaur.apache.org with SMTP; 6 Apr 2007 08:56:42 -0000 Received: (qmail 68511 invoked by uid 500); 6 Apr 2007 08:56:49 -0000 Delivered-To: ohart@example.net Received: (qmail 68482 invoked by uid 500); 6 Apr 2007 08:56:49 -0000 Mailing-List: contact ohart@example.net; run by ezmlm Precedence: bulk List-Help: <mailto:ohart@example.net> List-Unsubscribe: <mailto:ohart@example.net> List-Post: <mailto:ohart@example.net> List-Id: <servicemix-commits.geronimo.apache.org> Reply-To: ohart@example.net Delivered-To: mailing list ohart@example.net Received: (qmail 68473 invoked by uid 99); 6 Apr 2007 08:56:49 -0000 Received: from herse.apache.org (HELO herse.apache.org) (83.161.120.155) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 06 Apr 2007 01:56:49 -0700 X-ASF-Spam-Status: No, hits=-99.5 required=10.0 tests=ALL_TRUSTED,NO_REAL_NAME X-Spam-Check-By: apache.org Received: from [83.161.120.155] (HELO eris.apache.org) (83.161.120.155) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 06 Apr 2007 01:56:42 -0700 Received: by eris.apache.org (Postfix, from userid 65534) id BCB811A9838; Fri, 6 Apr 2007 01:56:21 -0700 (PDT) Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: svn commit: r526108 - /incubator/servicemix/branches/servicemix-3.1/web/servicemix-web-console/src/main/webapp/decorators/main.jsp Date: Fri, 06 Apr 2007 08:56:21 -0000 To: ohart@example.net From: ohart@example.net X-Mailer: svnmailer-1.1.0 Message-Id: <ohart@example.net> X-Virus-Checked: Checked by ClamAV on apache.org Author: gnodet Date: Fri Apr 6 01:56:20 2007 New Revision: 526108 URL: http://svn.apache.org/viewvc?view=rev&rev=526108 Log: Fix copyright year Modified: incubator/servicemix/branches/servicemix-3.1/web/servicemix-web-console/src/main/webapp/decorators/main.jsp Modified: incubator/servicemix/branches/servicemix-3.1/web/servicemix-web-console/src/main/webapp/decorators/main.jsp URL: http://svn.apache.org/viewvc/incubator/servicemix/branches/servicemix-3.1/web/servicemix-web-console/src/main/webapp/decorators/main.jsp?view=diff&rev=526108&r1=526107&r2=526108 ============================================================================== --- incubator/servicemix/branches/servicemix-3.1/web/servicemix-web-console/src/main/webapp/decorators/main.jsp (original) +++ incubator/servicemix/branches/servicemix-3.1/web/servicemix-web-console/src/main/webapp/decorators/main.jsp Fri Apr 6 01:56:20 2007 @@ -71,7 +71,7 @@ <br/> <br/> <br/> - <small>&copy; 2006 The Apache Software Foundation</small> + <small>&copy; 2007 The Apache Software Foundation</small> </div> </div> From servicemix-commits-return-4184ohart@example.net Fri Apr 06 08:57:10 2007 Return-Path: <servicemix-commits-return-4184ohart@example.net> Delivered-To: ohart@example.net Received: (qmail 56836 invoked from network); 6 Apr 2007 08:57:10 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (83.161.120.155) by minotaur.apache.org with SMTP; 6 Apr 2007 08:57:10 -0000 Received: (qmail 68869 invoked by uid 500); 6 Apr 2007 08:57:17 -0000 Delivered-To: ohart@example.net Received: (qmail 68842 invoked by uid 500); 6 Apr 2007 08:57:16 -0000 Mailing-List: contact ohart@example.net; run by ezmlm Precedence: bulk List-Help: <mailto:ohart@example.net> List-Unsubscribe: <mailto:ohart@example.net> List-Post: <mailto:ohart@example.net> List-Id: <servicemix-commits.geronimo.apache.org> Reply-To: ohart@example.net Delivered-To: mailing list ohart@example.net Received: (qmail 68833 invoked by uid 99); 6 Apr 2007 08:57:16 -0000 Received: from herse.apache.org (HELO herse.apache.org) (83.161.120.155) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 06 Apr 2007 01:57:16 -0700 X-ASF-Spam-Status: No, hits=-99.5 required=10.0 tests=ALL_TRUSTED,NO_REAL_NAME X-Spam-Check-By: apache.org Received: from [83.161.120.155] (HELO eris.apache.org) (83.161.120.155) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 06 Apr 2007 01:57:09 -0700 Received: by eris.apache.org (Postfix, from userid 65534) id 3B6F51A983E; Fri, 6 Apr 2007 01:56:49 -0700 (PDT) Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: svn commit: r526109 - /incubator/servicemix/trunk/web/servicemix-web-console/src/main/webapp/decorators/main.jsp Date: Fri, 06 Apr 2007 08:56:49 -0000 To: ohart@example.net From: ohart@example.net X-Mailer: svnmailer-1.1.0 Message-Id: <ohart@example.net> X-Virus-Checked: Checked by ClamAV on apache.org Author: gnodet Date: Fri Apr 6 01:56:48 2007 New Revision: 526109 URL: http://svn.apache.org/viewvc?view=rev&rev=526109 Log: Fix copyright year Modified: incubator/servicemix/trunk/web/servicemix-web-console/src/main/webapp/decorators/main.jsp Modified: incubator/servicemix/trunk/web/servicemix-web-console/src/main/webapp/decorators/main.jsp URL: http://svn.apache.org/viewvc/incubator/servicemix/trunk/web/servicemix-web-console/src/main/webapp/decorators/main.jsp?view=diff&rev=526109&r1=526108&r2=526109 ============================================================================== --- incubator/servicemix/trunk/web/servicemix-web-console/src/main/webapp/decorators/main.jsp (original) +++ incubator/servicemix/trunk/web/servicemix-web-console/src/main/webapp/decorators/main.jsp Fri Apr 6 01:56:48 2007 @@ -71,7 +71,7 @@ <br/> <br/> <br/> - <small>&copy; 2006 The Apache Software Foundation</small> + <small>&copy; 2007 The Apache Software Foundation</small> </div> </div> From servicemix-commits-return-4185ohart@example.net Fri Apr 06 11:37:05 2007 Return-Path: <servicemix-commits-return-4185ohart@example.net> Delivered-To: ohart@example.net Received: (qmail 16957 invoked from network); 6 Apr 2007 11:37:04 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (83.161.120.155) by minotaur.apache.org with SMTP; 6 Apr 2007 11:37:04 -0000 Received: (qmail 60938 invoked by uid 500); 6 Apr 2007 11:37:04 -0000 Delivered-To: ohart@example.net Received: (qmail 60877 invoked by uid 500); 6 Apr 2007 11:37:04 -0000 Mailing-List: contact ohart@example.net; run by ezmlm Precedence: bulk List-Help: <mailto:ohart@example.net> List-Unsubscribe: <mailto:ohart@example.net> List-Post: <mailto:ohart@example.net> List-Id: <servicemix-commits.geronimo.apache.org> Reply-To: ohart@example.net Delivered-To: mailing list ohart@example.net Received: (qmail 60836 invoked by uid 99); 6 Apr 2007 11:37:04 -0000 Received: from herse.apache.org (HELO herse.apache.org) (83.161.120.155) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 06 Apr 2007 04:37:04 -0700 X-ASF-Spam-Status: No, hits=-99.5 required=10.0 tests=ALL_TRUSTED,NO_REAL_NAME X-Spam-Check-By: apache.org Received: from [83.161.120.155] (HELO eris.apache.org) (83.161.120.155) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 06 Apr 2007 04:36:56 -0700 Received: by eris.apache.org (Postfix, from userid 65534) id 0D6371A9838; Fri, 6 Apr 2007 04:36:36 -0700 (PDT) Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: svn commit: r526123 - in /incubator/servicemix/trunk/web/servicemix-web-console/src/main: java/org/apache/servicemix/web/view/Dot.java java/org/apache/servicemix/web/view/DotView.java webapp/view.jsp Date: Fri, 06 Apr 2007 11:36:35 -0000 To: ohart@example.net From: ohart@example.net X-Mailer: svnmailer-1.1.0 Message-Id: <ohart@example.net> X-Virus-Checked: Checked by ClamAV on apache.org Author: gnodet Date: Fri Apr 6 04:36:34 2007 New Revision: 526123 URL: http://svn.apache.org/viewvc?view=rev&rev=526123 Log: SM-914: Display a nice page when the dot process can not be launched Added: incubator/servicemix/trunk/web/servicemix-web-console/src/main/java/org/apache/servicemix/web/view/Dot.java (with props) Modified: incubator/servicemix/trunk/web/servicemix-web-console/src/main/java/org/apache/servicemix/web/view/DotView.java incubator/servicemix/trunk/web/servicemix-web-console/src/main/webapp/view.jsp Added: incubator/servicemix/trunk/web/servicemix-web-console/src/main/java/org/apache/servicemix/web/view/Dot.java URL: http://svn.apache.org/viewvc/incubator/servicemix/trunk/web/servicemix-web-console/src/main/java/org/apache/servicemix/web/view/Dot.java?view=auto&rev=526123 ============================================================================== --- incubator/servicemix/trunk/web/servicemix-web-console/src/main/java/org/apache/servicemix/web/view/Dot.java (added) +++ incubator/servicemix/trunk/web/servicemix-web-console/src/main/java/org/apache/servicemix/web/view/Dot.java Fri Apr 6 04:36:34 2007 @@ -0,0 +1,58 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.apache.servicemix.web.view; + +public class Dot { + + public static final String DEFAULT_DOT_PATH = "dot"; + + private static boolean initialized = false; + private static Exception initException; + private static String dotPath = DEFAULT_DOT_PATH; + + public static String getDotPath() { + return dotPath; + } + + public static void setDotPath(String dotPath) { + Dot.dotPath = dotPath; + } + + + public static void initialize() throws Exception { + if (!initialized) { + try { + initException = null; + run("-V"); + } catch (Exception e) { + initException = e; + } finally { + initialized = true; + } + } + if (initException != null) { + throw initException; + } + } + + public static void run(String args) throws Exception { + String cmdLine = getDotPath() + " " + args; + Process p = Runtime.getRuntime().exec(cmdLine); + p.waitFor(); + } + +} Propchange: incubator/servicemix/trunk/web/servicemix-web-console/src/main/java/org/apache/servicemix/web/view/Dot.java ------------------------------------------------------------------------------ svn:eol-style = native Propchange: incubator/servicemix/trunk/web/servicemix-web-console/src/main/java/org/apache/servicemix/web/view/Dot.java ------------------------------------------------------------------------------ svn:keywords = Date Revision Propchange: incubator/servicemix/trunk/web/servicemix-web-console/src/main/java/org/apache/servicemix/web/view/Dot.java ------------------------------------------------------------------------------ svn:mime-type = text/plain Modified: incubator/servicemix/trunk/web/servicemix-web-console/src/main/java/org/apache/servicemix/web/view/DotView.java URL: http://svn.apache.org/viewvc/incubator/servicemix/trunk/web/servicemix-web-console/src/main/java/org/apache/servicemix/web/view/DotView.java?view=diff&rev=526123&r1=526122&r2=526123 ============================================================================== --- incubator/servicemix/trunk/web/servicemix-web-console/src/main/java/org/apache/servicemix/web/view/DotView.java (original) +++ incubator/servicemix/trunk/web/servicemix-web-console/src/main/java/org/apache/servicemix/web/view/DotView.java Fri Apr 6 04:36:34 2007 @@ -31,12 +31,10 @@ public class DotView extends AbstractView { - public static final String DEFAULT_DOT_PATH = "dot"; public static final String DEFAULT_DOT_FORMAT = "svg"; public static final String MODEL_SOURCE = "dotSource"; public static final String MODEL_FORMAT = "dotFormat"; - private String dotPath = DEFAULT_DOT_PATH; private String dotModelSource = MODEL_SOURCE; private String dotFormat = DEFAULT_DOT_FORMAT; @@ -67,9 +65,8 @@ w.close(); dotImg = File.createTempFile("smx_", ".dot." + getDotFormat()); - String cmd = getDotPath() + " -T" + getDotFormat() + " \"" + dotSrc.getCanonicalPath() + "\" -o\"" + dotImg.getAbsolutePath() + "\""; - Process p = Runtime.getRuntime().exec(cmd); - p.waitFor(); + String cmd = "-T" + getDotFormat() + " \"" + dotSrc.getCanonicalPath() + "\" -o\"" + dotImg.getAbsolutePath() + "\""; + Dot.run(cmd); InputStream is = new FileInputStream(dotImg); if (is.available() == 0) { @@ -80,7 +77,7 @@ FileUtil.copyInputStream(is, response.getOutputStream()); } finally { if (dotSrc != null) { - dotSrc.delete(); + //dotSrc.delete(); } if (dotImg != null) { dotImg.delete(); @@ -90,14 +87,6 @@ public String getContentType() { return FORMATS.get(getDotFormat()); - } - - public String getDotPath() { - return dotPath; - } - - public void setDotPath(String dotPath) { - this.dotPath = dotPath; } public String getDotFormat() { Modified: incubator/servicemix/trunk/web/servicemix-web-console/src/main/webapp/view.jsp URL: http://svn.apache.org/viewvc/incubator/servicemix/trunk/web/servicemix-web-console/src/main/webapp/view.jsp?view=diff&rev=526123&r1=526122&r2=526123 ============================================================================== --- incubator/servicemix/trunk/web/servicemix-web-console/src/main/webapp/view.jsp (original) +++ incubator/servicemix/trunk/web/servicemix-web-console/src/main/webapp/view.jsp Fri Apr 6 04:36:34 2007 @@ -20,6 +20,23 @@ </head> <body> +<% +Throwable dotException = null; +try { + org.apache.servicemix.web.view.Dot.initialize(); +} catch (Throwable t) { + dotException = t; +} +if (dotException != null) { +%> +<br></br> +Unable to run dot: <%=dotException.getMessage()%> +<br></br> +Check that the dot executable is available in the path or install it from <a href="http://www.graphviz.org/">http://www.graphviz.org/</a>. +<% +} else { +%> + <h2>View</h2> <fieldset style="height:25em"> @@ -48,6 +65,9 @@ </object> </fieldset> +<% +} +%> </body> </html> From servicemix-commits-return-4186ohart@example.net Fri Apr 06 11:37:06 2007 Return-Path: <servicemix-commits-return-4186ohart@example.net> Delivered-To: ohart@example.net Received: (qmail 16974 invoked from network); 6 Apr 2007 11:37:05 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (83.161.120.155) by minotaur.apache.org with SMTP; 6 Apr 2007 11:37:05 -0000 Received: (qmail 61684 invoked by uid 500); 6 Apr 2007 11:37:08 -0000 Delivered-To: ohart@example.net Received: (qmail 61664 invoked by uid 500); 6 Apr 2007 11:37:08 -0000 Mailing-List: contact ohart@example.net; run by ezmlm Precedence: bulk List-Help: <mailto:ohart@example.net> List-Unsubscribe: <mailto:ohart@example.net> List-Post: <mailto:ohart@example.net> List-Id: <servicemix-commits.geronimo.apache.org> Reply-To: ohart@example.net Delivered-To: mailing list ohart@example.net Received: (qmail 61651 invoked by uid 99); 6 Apr 2007 11:37:08 -0000 Received: from herse.apache.org (HELO herse.apache.org) (83.161.120.155) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 06 Apr 2007 04:37:08 -0700 X-ASF-Spam-Status: No, hits=-99.5 required=10.0 tests=ALL_TRUSTED,NO_REAL_NAME X-Spam-Check-By: apache.org Received: from [83.161.120.155] (HELO eris.apache.org) (83.161.120.155) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 06 Apr 2007 04:37:00 -0700 Received: by eris.apache.org (Postfix, from userid 65534) id 63B411A983E; Fri, 6 Apr 2007 04:36:40 -0700 (PDT) Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: svn commit: r526124 - in /incubator/servicemix/branches/servicemix-3.1/web/servicemix-web-console/src/main: java/org/apache/servicemix/web/view/Dot.java java/org/apache/servicemix/web/view/DotView.java webapp/view.jsp Date: Fri, 06 Apr 2007 11:36:40 -0000 To: ohart@example.net From: ohart@example.net X-Mailer: svnmailer-1.1.0 Message-Id: <ohart@example.net> X-Virus-Checked: Checked by ClamAV on apache.org Author: gnodet Date: Fri Apr 6 04:36:39 2007 New Revision: 526124 URL: http://svn.apache.org/viewvc?view=rev&rev=526124 Log: SM-914: Display a nice page when the dot process can not be launched Added: incubator/servicemix/branches/servicemix-3.1/web/servicemix-web-console/src/main/java/org/apache/servicemix/web/view/Dot.java (with props) Modified: incubator/servicemix/branches/servicemix-3.1/web/servicemix-web-console/src/main/java/org/apache/servicemix/web/view/DotView.java incubator/servicemix/branches/servicemix-3.1/web/servicemix-web-console/src/main/webapp/view.jsp Added: incubator/servicemix/branches/servicemix-3.1/web/servicemix-web-console/src/main/java/org/apache/servicemix/web/view/Dot.java URL: http://svn.apache.org/viewvc/incubator/servicemix/branches/servicemix-3.1/web/servicemix-web-console/src/main/java/org/apache/servicemix/web/view/Dot.java?view=auto&rev=526124 ============================================================================== --- incubator/servicemix/branches/servicemix-3.1/web/servicemix-web-console/src/main/java/org/apache/servicemix/web/view/Dot.java (added) +++ incubator/servicemix/branches/servicemix-3.1/web/servicemix-web-console/src/main/java/org/apache/servicemix/web/view/Dot.java Fri Apr 6 04:36:39 2007 @@ -0,0 +1,58 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.apache.servicemix.web.view; + +public class Dot { + + public static final String DEFAULT_DOT_PATH = "dot"; + + private static boolean initialized = false; + private static Exception initException; + private static String dotPath = DEFAULT_DOT_PATH; + + public static String getDotPath() { + return dotPath; + } + + public static void setDotPath(String dotPath) { + Dot.dotPath = dotPath; + } + + + public static void initialize() throws Exception { + if (!initialized) { + try { + initException = null; + run("-V"); + } catch (Exception e) { + initException = e; + } finally { + initialized = true; + } + } + if (initException != null) { + throw initException; + } + } + + public static void run(String args) throws Exception { + String cmdLine = getDotPath() + " " + args; + Process p = Runtime.getRuntime().exec(cmdLine); + p.waitFor(); + } + +} Propchange: incubator/servicemix/branches/servicemix-3.1/web/servicemix-web-console/src/main/java/org/apache/servicemix/web/view/Dot.java ------------------------------------------------------------------------------ svn:eol-style = native Propchange: incubator/servicemix/branches/servicemix-3.1/web/servicemix-web-console/src/main/java/org/apache/servicemix/web/view/Dot.java ------------------------------------------------------------------------------ svn:keywords = Date Revision Propchange: incubator/servicemix/branches/servicemix-3.1/web/servicemix-web-console/src/main/java/org/apache/servicemix/web/view/Dot.java ------------------------------------------------------------------------------ svn:mime-type = text/plain Modified: incubator/servicemix/branches/servicemix-3.1/web/servicemix-web-console/src/main/java/org/apache/servicemix/web/view/DotView.java URL: http://svn.apache.org/viewvc/incubator/servicemix/branches/servicemix-3.1/web/servicemix-web-console/src/main/java/org/apache/servicemix/web/view/DotView.java?view=diff&rev=526124&r1=526123&r2=526124 ============================================================================== --- incubator/servicemix/branches/servicemix-3.1/web/servicemix-web-console/src/main/java/org/apache/servicemix/web/view/DotView.java (original) +++ incubator/servicemix/branches/servicemix-3.1/web/servicemix-web-console/src/main/java/org/apache/servicemix/web/view/DotView.java Fri Apr 6 04:36:39 2007 @@ -31,12 +31,10 @@ public class DotView extends AbstractView { - public static final String DEFAULT_DOT_PATH = "dot"; public static final String DEFAULT_DOT_FORMAT = "svg"; public static final String MODEL_SOURCE = "dotSource"; public static final String MODEL_FORMAT = "dotFormat"; - private String dotPath = DEFAULT_DOT_PATH; private String dotModelSource = MODEL_SOURCE; private String dotFormat = DEFAULT_DOT_FORMAT; @@ -67,9 +65,8 @@ w.close(); dotImg = File.createTempFile("smx_", ".dot." + getDotFormat()); - String cmd = getDotPath() + " -T" + getDotFormat() + " \"" + dotSrc.getCanonicalPath() + "\" -o\"" + dotImg.getAbsolutePath() + "\""; - Process p = Runtime.getRuntime().exec(cmd); - p.waitFor(); + String cmd = "-T" + getDotFormat() + " \"" + dotSrc.getCanonicalPath() + "\" -o\"" + dotImg.getAbsolutePath() + "\""; + Dot.run(cmd); InputStream is = new FileInputStream(dotImg); if (is.available() == 0) { @@ -80,7 +77,7 @@ FileUtil.copyInputStream(is, response.getOutputStream()); } finally { if (dotSrc != null) { - dotSrc.delete(); + //dotSrc.delete(); } if (dotImg != null) { dotImg.delete(); @@ -90,14 +87,6 @@ public String getContentType() { return FORMATS.get(getDotFormat()); - } - - public String getDotPath() { - return dotPath; - } - - public void setDotPath(String dotPath) { - this.dotPath = dotPath; } public String getDotFormat() { Modified: incubator/servicemix/branches/servicemix-3.1/web/servicemix-web-console/src/main/webapp/view.jsp URL: http://svn.apache.org/viewvc/incubator/servicemix/branches/servicemix-3.1/web/servicemix-web-console/src/main/webapp/view.jsp?view=diff&rev=526124&r1=526123&r2=526124 ============================================================================== --- incubator/servicemix/branches/servicemix-3.1/web/servicemix-web-console/src/main/webapp/view.jsp (original) +++ incubator/servicemix/branches/servicemix-3.1/web/servicemix-web-console/src/main/webapp/view.jsp Fri Apr 6 04:36:39 2007 @@ -20,6 +20,23 @@ </head> <body> +<% +Throwable dotException = null; +try { + org.apache.servicemix.web.view.Dot.initialize(); +} catch (Throwable t) { + dotException = t; +} +if (dotException != null) { +%> +<br></br> +Unable to run dot: <%=dotException.getMessage()%> +<br></br> +Check that the dot executable is available in the path or install it from <a href="http://www.graphviz.org/">http://www.graphviz.org/</a>. +<% +} else { +%> + <h2>View</h2> <fieldset style="height:25em"> @@ -48,6 +65,9 @@ </object> </fieldset> +<% +} +%> </body> </html> From servicemix-commits-return-4187ohart@example.net Fri Apr 06 13:18:33 2007 Return-Path: <servicemix-commits-return-4187ohart@example.net> Delivered-To: ohart@example.net Received: (qmail 73120 invoked from network); 6 Apr 2007 13:18:33 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (83.161.120.155) by minotaur.apache.org with SMTP; 6 Apr 2007 13:18:33 -0000 Received: (qmail 82441 invoked by uid 500); 6 Apr 2007 13:18:40 -0000 Delivered-To: ohart@example.net Received: (qmail 82368 invoked by uid 500); 6 Apr 2007 13:18:39 -0000 Mailing-List: contact ohart@example.net; run by ezmlm Precedence: bulk List-Help: <mailto:ohart@example.net> List-Unsubscribe: <mailto:ohart@example.net> List-Post: <mailto:ohart@example.net> List-Id: <servicemix-commits.geronimo.apache.org> Reply-To: ohart@example.net Delivered-To: mailing list ohart@example.net Received: (qmail 82354 invoked by uid 99); 6 Apr 2007 13:18:39 -0000 Received: from herse.apache.org (HELO herse.apache.org) (83.161.120.155) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 06 Apr 2007 06:18:39 -0700 X-ASF-Spam-Status: No, hits=-99.5 required=10.0 tests=ALL_TRUSTED,NO_REAL_NAME X-Spam-Check-By: apache.org Received: from [83.161.120.155] (HELO eris.apache.org) (83.161.120.155) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 06 Apr 2007 06:18:32 -0700 Received: by eris.apache.org (Postfix, from userid 65534) id 0EB801A983E; Fri, 6 Apr 2007 06:18:12 -0700 (PDT) Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: svn commit: r526151 - /incubator/servicemix/trunk/deployables/bindingcomponents/servicemix-ftp/src/main/java/org/apache/servicemix/ftp/FTPClientPool.java Date: Fri, 06 Apr 2007 13:18:11 -0000 To: ohart@example.net From: ohart@example.net X-Mailer: svnmailer-1.1.0 Message-Id: <ohart@example.net> X-Virus-Checked: Checked by ClamAV on apache.org Author: gnodet Date: Fri Apr 6 06:18:11 2007 New Revision: 526151 URL: http://svn.apache.org/viewvc?view=rev&rev=526151 Log: SM-921: FTPClientPool does not have dataTimeout and controlEncoding properties Modified: incubator/servicemix/trunk/deployables/bindingcomponents/servicemix-ftp/src/main/java/org/apache/servicemix/ftp/FTPClientPool.java Modified: incubator/servicemix/trunk/deployables/bindingcomponents/servicemix-ftp/src/main/java/org/apache/servicemix/ftp/FTPClientPool.java URL: http://svn.apache.org/viewvc/incubator/servicemix/trunk/deployables/bindingcomponents/servicemix-ftp/src/main/java/org/apache/servicemix/ftp/FTPClientPool.java?view=diff&rev=526151&r1=526150&r2=526151 ============================================================================== --- incubator/servicemix/trunk/deployables/bindingcomponents/servicemix-ftp/src/main/java/org/apache/servicemix/ftp/FTPClientPool.java (original) +++ incubator/servicemix/trunk/deployables/bindingcomponents/servicemix-ftp/src/main/java/org/apache/servicemix/ftp/FTPClientPool.java Fri Apr 6 06:18:11 2007 @@ -33,11 +33,16 @@ */ public class FTPClientPool extends SocketClientPoolSupport { + public static final int DEFAULT_DATA_TIMEOUT = -1; + public static final String DEFAULT_CONTROL_ENCODING = FTP.DEFAULT_CONTROL_ENCODING; + private String username; private String password; private boolean binaryMode = true; private boolean passiveMode = false; private FTPClientConfig config; + private String controlEncoding = DEFAULT_CONTROL_ENCODING; + private int dataTimeout = DEFAULT_DATA_TIMEOUT; public boolean validateObject(Object object) { FTPClient client = (FTPClient) object; @@ -107,6 +112,34 @@ this.config = config; } + /** + * @return the controlEncoding + */ + public String getControlEncoding() { + return controlEncoding; + } + + /** + * @param controlEncoding the controlEncoding to set + */ + public void setControlEncoding(String controlEncoding) { + this.controlEncoding = controlEncoding; + } + + /** + * @return the dataTimeout + */ + public int getDataTimeout() { + return dataTimeout; + } + + /** + * @param dataTimeout the dataTimeout to set + */ + public void setDataTimeout(int dataTimeout) { + this.dataTimeout = dataTimeout; + } + // Implementation methods //------------------------------------------------------------------------- protected void connect(SocketClient client) throws Exception { @@ -115,7 +148,10 @@ if (config != null) { ftp.configure(config); } - super.connect(client); + ftp.setDataTimeout(getDataTimeout()); + ftp.setControlEncoding(getControlEncoding()); + + super.connect(ftp); int code = ftp.getReplyCode(); if (!FTPReply.isPositiveCompletion(code)) { From servicemix-commits-return-4188ohart@example.net Fri Apr 06 18:58:03 2007 Return-Path: <servicemix-commits-return-4188ohart@example.net> Delivered-To: ohart@example.net Received: (qmail 2804 invoked from network); 6 Apr 2007 18:58:02 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (83.161.120.155) by minotaur.apache.org with SMTP; 6 Apr 2007 18:58:02 -0000 Received: (qmail 43536 invoked by uid 500); 6 Apr 2007 18:58:09 -0000 Delivered-To: ohart@example.net Received: (qmail 43504 invoked by uid 500); 6 Apr 2007 18:58:09 -0000 Mailing-List: contact ohart@example.net; run by ezmlm Precedence: bulk List-Help: <mailto:ohart@example.net> List-Unsubscribe: <mailto:ohart@example.net> List-Post: <mailto:ohart@example.net> List-Id: <servicemix-commits.geronimo.apache.org> Reply-To: ohart@example.net Delivered-To: mailing list ohart@example.net Received: (qmail 43495 invoked by uid 99); 6 Apr 2007 18:58:09 -0000 Received: from herse.apache.org (HELO herse.apache.org) (83.161.120.155) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 06 Apr 2007 11:58:09 -0700 X-ASF-Spam-Status: No, hits=-99.5 required=10.0 tests=ALL_TRUSTED,NO_REAL_NAME X-Spam-Check-By: apache.org Received: from [83.161.120.155] (HELO eris.apache.org) (83.161.120.155) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 06 Apr 2007 11:58:01 -0700 Received: by eris.apache.org (Postfix, from userid 65534) id D76161A9838; Fri, 6 Apr 2007 11:57:40 -0700 (PDT) Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: svn commit: r526251 - in /incubator/servicemix/trunk/deployables/serviceengines/servicemix-drools/src/main/java/org/apache/servicemix/drools: ./ model/ support/ Date: Fri, 06 Apr 2007 18:57:40 -0000 To: ohart@example.net From: ohart@example.net X-Mailer: svnmailer-1.1.0 Message-Id: <ohart@example.net> X-Virus-Checked: Checked by ClamAV on apache.org Author: gnodet Date: Fri Apr 6 11:57:39 2007 New Revision: 526251 URL: http://svn.apache.org/viewvc?view=rev&rev=526251 Log: SM-924: Namespace support in servicemix-drools Added: incubator/servicemix/trunk/deployables/serviceengines/servicemix-drools/src/main/java/org/apache/servicemix/drools/support/ incubator/servicemix/trunk/deployables/serviceengines/servicemix-drools/src/main/java/org/apache/servicemix/drools/support/NamespaceContextImpl.java (with props) Modified: incubator/servicemix/trunk/deployables/serviceengines/servicemix-drools/src/main/java/org/apache/servicemix/drools/DroolsEndpoint.java incubator/servicemix/trunk/deployables/serviceengines/servicemix-drools/src/main/java/org/apache/servicemix/drools/model/Exchange.java incubator/servicemix/trunk/deployables/serviceengines/servicemix-drools/src/main/java/org/apache/servicemix/drools/model/Fault.java incubator/servicemix/trunk/deployables/serviceengines/servicemix-drools/src/main/java/org/apache/servicemix/drools/model/JbiHelper.java incubator/servicemix/trunk/deployables/serviceengines/servicemix-drools/src/main/java/org/apache/servicemix/drools/model/Message.java Modified: incubator/servicemix/trunk/deployables/serviceengines/servicemix-drools/src/main/java/org/apache/servicemix/drools/DroolsEndpoint.java URL: http://svn.apache.org/viewvc/incubator/servicemix/trunk/deployables/serviceengines/servicemix-drools/src/main/java/org/apache/servicemix/drools/DroolsEndpoint.java?view=diff&rev=526251&r1=526250&r2=526251 ============================================================================== --- incubator/servicemix/trunk/deployables/serviceengines/servicemix-drools/src/main/java/org/apache/servicemix/drools/DroolsEndpoint.java (original) +++ incubator/servicemix/trunk/deployables/serviceengines/servicemix-drools/src/main/java/org/apache/servicemix/drools/DroolsEndpoint.java Fri Apr 6 11:57:39 2007 @@ -25,6 +25,7 @@ import javax.jbi.messaging.ExchangeStatus; import javax.jbi.messaging.MessageExchange; import javax.jbi.servicedesc.ServiceEndpoint; +import javax.xml.namespace.NamespaceContext; import javax.xml.namespace.QName; import org.apache.servicemix.common.DefaultComponent; @@ -46,7 +47,8 @@ private RuleBase ruleBase; private Resource ruleBaseResource; private URL ruleBaseURL; - + private NamespaceContext namespaceContext; + public DroolsEndpoint() { super(); } @@ -100,7 +102,21 @@ public void setRuleBaseURL(URL ruleBaseURL) { this.ruleBaseURL = ruleBaseURL; } - + + /** + * @return the namespaceContext + */ + public NamespaceContext getNamespaceContext() { + return namespaceContext; + } + + /** + * @param namespaceContext the namespaceContext to set + */ + public void setNamespaceContext(NamespaceContext namespaceContext) { + this.namespaceContext = namespaceContext; + } + public void validate() throws DeploymentException { super.validate(); if (ruleBase == null && ruleBaseResource == null && ruleBaseURL == null) { Modified: incubator/servicemix/trunk/deployables/serviceengines/servicemix-drools/src/main/java/org/apache/servicemix/drools/model/Exchange.java URL: http://svn.apache.org/viewvc/incubator/servicemix/trunk/deployables/serviceengines/servicemix-drools/src/main/java/org/apache/servicemix/drools/model/Exchange.java?view=diff&rev=526251&r1=526250&r2=526251 ============================================================================== --- incubator/servicemix/trunk/deployables/serviceengines/servicemix-drools/src/main/java/org/apache/servicemix/drools/model/Exchange.java (original) +++ incubator/servicemix/trunk/deployables/serviceengines/servicemix-drools/src/main/java/org/apache/servicemix/drools/model/Exchange.java Fri Apr 6 11:57:39 2007 @@ -23,6 +23,7 @@ import javax.jbi.messaging.MessageExchange; import javax.jbi.messaging.NormalizedMessage; import javax.jbi.messaging.RobustInOnly; +import javax.xml.namespace.NamespaceContext; public class Exchange { @@ -39,9 +40,11 @@ private Message in; private Message out; private Message fault; + private NamespaceContext namespaceContext; - public Exchange(MessageExchange exchange) { + public Exchange(MessageExchange exchange, NamespaceContext namespaceContext) { this.exchange = exchange; + this.namespaceContext = namespaceContext; update(); } @@ -101,22 +104,23 @@ protected Message getMessage(String name) { NormalizedMessage msg = exchange.getMessage(name); - return msg != null ? new Message(msg) : null; + return msg != null ? new Message(msg, this.namespaceContext) : null; } protected void update() { if (in == null) { NormalizedMessage msg = exchange.getMessage("in"); - in = msg != null ? new Message(msg) : null; + in = msg != null ? new Message(msg, this.namespaceContext) : null; } if (out == null) { NormalizedMessage msg = exchange.getMessage("out"); - out = msg != null ? new Message(msg) : null; + out = msg != null ? new Message(msg, this.namespaceContext) : null; } if (fault == null) { javax.jbi.messaging.Fault msg = exchange.getFault(); - fault = msg != null ? new Fault(msg) : null; + fault = msg != null ? new Fault(msg,this.namespaceContext) : null; } } } + Modified: incubator/servicemix/trunk/deployables/serviceengines/servicemix-drools/src/main/java/org/apache/servicemix/drools/model/Fault.java URL: http://svn.apache.org/viewvc/incubator/servicemix/trunk/deployables/serviceengines/servicemix-drools/src/main/java/org/apache/servicemix/drools/model/Fault.java?view=diff&rev=526251&r1=526250&r2=526251 ============================================================================== --- incubator/servicemix/trunk/deployables/serviceengines/servicemix-drools/src/main/java/org/apache/servicemix/drools/model/Fault.java (original) +++ incubator/servicemix/trunk/deployables/serviceengines/servicemix-drools/src/main/java/org/apache/servicemix/drools/model/Fault.java Fri Apr 6 11:57:39 2007 @@ -16,10 +16,12 @@ */ package org.apache.servicemix.drools.model; +import javax.xml.namespace.NamespaceContext; + public class Fault extends Message { - public Fault(javax.jbi.messaging.Fault message) { - super(message); + public Fault(javax.jbi.messaging.Fault message, NamespaceContext namespaceContext) { + super(message, namespaceContext); } } Modified: incubator/servicemix/trunk/deployables/serviceengines/servicemix-drools/src/main/java/org/apache/servicemix/drools/model/JbiHelper.java URL: http://svn.apache.org/viewvc/incubator/servicemix/trunk/deployables/serviceengines/servicemix-drools/src/main/java/org/apache/servicemix/drools/model/JbiHelper.java?view=diff&rev=526251&r1=526250&r2=526251 ============================================================================== --- incubator/servicemix/trunk/deployables/serviceengines/servicemix-drools/src/main/java/org/apache/servicemix/drools/model/JbiHelper.java (original) +++ incubator/servicemix/trunk/deployables/serviceengines/servicemix-drools/src/main/java/org/apache/servicemix/drools/model/JbiHelper.java Fri Apr 6 11:57:39 2007 @@ -52,7 +52,7 @@ MessageExchange exchange, WorkingMemory memory) { this.endpoint = endpoint; - this.exchange = new Exchange(exchange); + this.exchange = new Exchange(exchange, endpoint.getNamespaceContext()); this.memory = memory; this.exchangeFactHandle = this.memory.assertObject(this.exchange); } Modified: incubator/servicemix/trunk/deployables/serviceengines/servicemix-drools/src/main/java/org/apache/servicemix/drools/model/Message.java URL: http://svn.apache.org/viewvc/incubator/servicemix/trunk/deployables/serviceengines/servicemix-drools/src/main/java/org/apache/servicemix/drools/model/Message.java?view=diff&rev=526251&r1=526250&r2=526251 ============================================================================== --- incubator/servicemix/trunk/deployables/serviceengines/servicemix-drools/src/main/java/org/apache/servicemix/drools/model/Message.java (original) +++ incubator/servicemix/trunk/deployables/serviceengines/servicemix-drools/src/main/java/org/apache/servicemix/drools/model/Message.java Fri Apr 6 11:57:39 2007 @@ -17,10 +17,12 @@ package org.apache.servicemix.drools.model; import javax.jbi.messaging.NormalizedMessage; +import javax.xml.namespace.NamespaceContext; import javax.xml.transform.Source; import javax.xml.transform.dom.DOMSource; import org.apache.servicemix.expression.JAXPBooleanXPathExpression; +import org.apache.servicemix.expression.JAXPStringXPathExpression; import org.apache.servicemix.jbi.jaxp.SourceTransformer; import org.w3c.dom.Element; @@ -29,10 +31,12 @@ private final static SourceTransformer TRANFORMER = new SourceTransformer(); private final NormalizedMessage message; + private final NamespaceContext namespaceContext; - public Message(NormalizedMessage message) { + public Message(NormalizedMessage message, NamespaceContext namespaceContext) { this.message = message; // Make sure message is re-readable + this.namespaceContext = namespaceContext; Source content = message.getContent(); if (content != null) { try { @@ -51,9 +55,22 @@ public boolean xpath(String xpath) throws Exception { JAXPBooleanXPathExpression expression = new JAXPBooleanXPathExpression(xpath); + if (this.namespaceContext != null) { + expression.setNamespaceContext(this.namespaceContext); + } Boolean b = (Boolean) expression.evaluate(null, message); return b.booleanValue(); } + + public String valueOf(String xpath) throws Exception { + JAXPStringXPathExpression expression = new JAXPStringXPathExpression(xpath); + if (this.namespaceContext != null) { + expression.setNamespaceContext(this.namespaceContext); + } + String res = (String)expression.evaluate(null, message); + return res; + } + public Object getProperty(String name) { return message.getProperty(name); Added: incubator/servicemix/trunk/deployables/serviceengines/servicemix-drools/src/main/java/org/apache/servicemix/drools/support/NamespaceContextImpl.java URL: http://svn.apache.org/viewvc/incubator/servicemix/trunk/deployables/serviceengines/servicemix-drools/src/main/java/org/apache/servicemix/drools/support/NamespaceContextImpl.java?view=auto&rev=526251 ============================================================================== --- incubator/servicemix/trunk/deployables/serviceengines/servicemix-drools/src/main/java/org/apache/servicemix/drools/support/NamespaceContextImpl.java (added) +++ incubator/servicemix/trunk/deployables/serviceengines/servicemix-drools/src/main/java/org/apache/servicemix/drools/support/NamespaceContextImpl.java Fri Apr 6 11:57:39 2007 @@ -0,0 +1,166 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.apache.servicemix.drools.support; + +import java.util.Collections; +import java.util.HashSet; +import java.util.Iterator; +import java.util.LinkedHashMap; +import java.util.Map; +import java.util.Set; + +import javax.xml.XMLConstants; +import javax.xml.namespace.NamespaceContext; + +/** + * A simple namespace context with a clean xbean configuration. + * + * @org.apache.xbean.XBean element="namespace-context" + * description="A NamespaceContext implementation" + * @author gnodet + * @version $Revision$ + */ +public class NamespaceContextImpl implements NamespaceContext { + + /** + * map containing bound namespaces, keyed by their prefix. A LinkedHashMap + * is used to ensure that {@link #getPrefix(String)} always returns the same + * prefix, unless that prefix is removed. + */ + private Map namespaces = new LinkedHashMap(); + + /** + * Constructs a SimpleNamespaceContext with no parent context or namespace + * declarations. + */ + public NamespaceContextImpl() { + } + + /** + * Constructs a SimpleNamespaceContext with no parent context that contains + * the specified prefixes. + * + * @param namespaces A Map of namespace URIs, keyed by their prefixes. + */ + public NamespaceContextImpl(Map namespaces) { + setNamespaces(namespaces); + } + + /** + * @org.apache.xbean.Map entryName="namespace" keyName="prefix" + * @return Returns the namespaces. + */ + public Map getNamespaces() { + return namespaces; + } + + /** + * @param namespaces The namespaces to set. + */ + public void setNamespaces(Map namespaces) { + this.namespaces.clear(); + if (namespaces != null) { + this.namespaces.putAll(namespaces); + } + } + + /* (non-Javadoc) + * @see javax.xml.namespace.NamespaceContext#getNamespaceURI(java.lang.String) + */ + public String getNamespaceURI(String prefix) { + if (prefix == null) { + throw new IllegalArgumentException("prefix argument was null"); + } else if (prefix.equals(XMLConstants.XML_NS_PREFIX)) { + return XMLConstants.XML_NS_URI; + } else if (prefix.equals(XMLConstants.XMLNS_ATTRIBUTE)) { + return XMLConstants.XMLNS_ATTRIBUTE_NS_URI; + } else if (namespaces.containsKey(prefix)) { + String uri = (String) namespaces.get(prefix); + if (uri.length() == 0) { + return null; + } else { + return uri; + } + } else { + return null; + } + } + + /* (non-Javadoc) + * @see javax.xml.namespace.NamespaceContext#getPrefix(java.lang.String) + */ + public String getPrefix(String nsURI) { + if (nsURI == null) { + throw new IllegalArgumentException("nsURI was null"); + } else if (nsURI.length() == 0) { + throw new IllegalArgumentException("nsURI was empty"); + } else if (nsURI.equals(XMLConstants.XML_NS_URI)) { + return XMLConstants.XML_NS_PREFIX; + } else if (nsURI.equals(XMLConstants.XMLNS_ATTRIBUTE_NS_URI)) { + return XMLConstants.XMLNS_ATTRIBUTE; + } + Iterator iter = namespaces.entrySet().iterator(); + while (iter.hasNext()) { + Map.Entry entry = (Map.Entry) iter.next(); + String uri = (String) entry.getValue(); + if (uri.equals(nsURI)) { + return (String) entry.getKey(); + } + } + if (nsURI.length() == 0) { + return ""; + } else { + return null; + } + } + + /* (non-Javadoc) + * @see javax.xml.namespace.NamespaceContext#getPrefixes(java.lang.String) + */ + public Iterator getPrefixes(String nsURI) { + if (nsURI == null) { + throw new IllegalArgumentException("nsURI was null"); + } else if (nsURI.length() == 0) { + throw new IllegalArgumentException("nsURI was empty"); + } else if (nsURI.equals(XMLConstants.XML_NS_URI)) { + return Collections.singleton(XMLConstants.XML_NS_PREFIX).iterator(); + } else if (nsURI.equals(XMLConstants.XMLNS_ATTRIBUTE_NS_URI)) { + return Collections.singleton(XMLConstants.XMLNS_ATTRIBUTE).iterator(); + } + Set prefixes = null; + Iterator iter = namespaces.entrySet().iterator(); + while (iter.hasNext()) { + Map.Entry entry = (Map.Entry) iter.next(); + String uri = (String) entry.getValue(); + if (uri.equals(nsURI)) { + if (prefixes == null) { + prefixes = new HashSet(); + } + prefixes.add(entry.getKey()); + } + } + if (prefixes != null) { + return Collections.unmodifiableSet(prefixes).iterator(); + } else if (nsURI.length() == 0) { + return Collections.singleton("").iterator(); + } else { + return Collections.EMPTY_LIST.iterator(); + } + } + +} + Propchange: incubator/servicemix/trunk/deployables/serviceengines/servicemix-drools/src/main/java/org/apache/servicemix/drools/support/NamespaceContextImpl.java ------------------------------------------------------------------------------ svn:eol-style = native Propchange: incubator/servicemix/trunk/deployables/serviceengines/servicemix-drools/src/main/java/org/apache/servicemix/drools/support/NamespaceContextImpl.java ------------------------------------------------------------------------------ svn:keywords = Date Revision Propchange: incubator/servicemix/trunk/deployables/serviceengines/servicemix-drools/src/main/java/org/apache/servicemix/drools/support/NamespaceContextImpl.java ------------------------------------------------------------------------------ svn:mime-type = text/plain From servicemix-commits-return-4190ohart@example.net Sat Apr 07 08:36:22 2007 Return-Path: <servicemix-commits-return-4190ohart@example.net> Delivered-To: ohart@example.net Received: (qmail 12935 invoked from network); 7 Apr 2007 08:36:21 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (83.161.120.155) by minotaur.apache.org with SMTP; 7 Apr 2007 08:36:21 -0000 Received: (qmail 88638 invoked by uid 500); 7 Apr 2007 08:36:28 -0000 Delivered-To: ohart@example.net Received: (qmail 88563 invoked by uid 500); 7 Apr 2007 08:36:28 -0000 Mailing-List: contact ohart@example.net; run by ezmlm Precedence: bulk List-Help: <mailto:ohart@example.net> List-Unsubscribe: <mailto:ohart@example.net> List-Post: <mailto:ohart@example.net> List-Id: <servicemix-commits.geronimo.apache.org> Reply-To: ohart@example.net Delivered-To: mailing list ohart@example.net Received: (qmail 88522 invoked by uid 99); 7 Apr 2007 08:36:27 -0000 Received: from herse.apache.org (HELO herse.apache.org) (83.161.120.155) by apache.org (qpsmtpd/0.29) with ESMTP; Sat, 07 Apr 2007 01:36:27 -0700 X-ASF-Spam-Status: No, hits=-98.6 required=10.0 tests=ALL_TRUSTED,INFO_TLD,NO_REAL_NAME X-Spam-Check-By: apache.org Received: from [83.161.120.155] (HELO eris.apache.org) (83.161.120.155) by apache.org (qpsmtpd/0.29) with ESMTP; Sat, 07 Apr 2007 01:36:16 -0700 Received: by eris.apache.org (Postfix, from userid 65534) id 28B9B1A9846; Sat, 7 Apr 2007 01:35:56 -0700 (PDT) Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: svn commit: r526407 [3/4] - in /incubator/servicemix/trunk/deployables/serviceengines: servicemix-bean/src/main/java/org/apache/servicemix/bean/ servicemix-bean/src/main/java/org/apache/servicemix/bean/support/ servicemix-bean/src/test/java/org/apache/... Date: Sat, 07 Apr 2007 08:35:53 -0000 To: ohart@example.net From: ohart@example.net X-Mailer: svnmailer-1.1.0 Message-Id: <ohart@example.net> X-Virus-Checked: Checked by ClamAV on apache.org Modified: incubator/servicemix/trunk/deployables/serviceengines/servicemix-eip/src/main/java/org/apache/servicemix/eip/patterns/Pipeline.java URL: http://svn.apache.org/viewvc/incubator/servicemix/trunk/deployables/serviceengines/servicemix-eip/src/main/java/org/apache/servicemix/eip/patterns/Pipeline.java?view=diff&rev=526407&r1=526406&r2=526407 ============================================================================== --- incubator/servicemix/trunk/deployables/serviceengines/servicemix-eip/src/main/java/org/apache/servicemix/eip/patterns/Pipeline.java (original) +++ incubator/servicemix/trunk/deployables/serviceengines/servicemix-eip/src/main/java/org/apache/servicemix/eip/patterns/Pipeline.java Sat Apr 7 01:35:49 2007 @@ -73,7 +73,7 @@ * faults may be sent to the target endpoint * if this flag is set to <code>true</code> */ - private boolean sendFaultsToTarget = false; + private boolean sendFaultsToTarget; /** * The correlation property used by this component @@ -169,8 +169,8 @@ * @see org.apache.servicemix.eip.EIPEndpoint#processSync(javax.jbi.messaging.MessageExchange) */ protected void processSync(MessageExchange exchange) throws Exception { - if (exchange instanceof InOnly == false && - exchange instanceof RobustInOnly == false) { + if (!(exchange instanceof InOnly) + && !(exchange instanceof RobustInOnly)) { fail(exchange, new UnsupportedOperationException("Use an InOnly or RobustInOnly MEP")); return; } @@ -183,62 +183,52 @@ // Check result if (tme.getStatus() == ExchangeStatus.DONE) { throw new IllegalStateException("Received a DONE status from the transformer"); - } // Errors must be sent back to the consumer - else if (tme.getStatus() == ExchangeStatus.ERROR) { + } else if (tme.getStatus() == ExchangeStatus.ERROR) { fail(exchange, tme.getError()); - } - else if (tme.getFault() != null) { - // Faults must be sent to the target / faultsTarget - if (faultsTarget != null || sendFaultsToTarget) { - MessageExchange me = getExchangeFactory().createExchange(exchange.getPattern()); - (faultsTarget != null ? faultsTarget : target).configureTarget(me, getContext()); - MessageUtil.transferToIn(tme.getFault(), me); - sendSync(me); - done(tme); - if (me.getStatus() == ExchangeStatus.DONE) { - done(exchange); - } else if (me.getStatus() == ExchangeStatus.ERROR) { - fail(exchange, me.getError()); - } else if (me.getFault() != null) { - if (exchange instanceof InOnly) { - // Do not use the fault has it may contain streams - // So just transform it to a string and send an error - String fault = new SourceTransformer().contentToString(me.getFault()); - done(me); - fail(exchange, new FaultException(fault, null, null)); - } else { - Fault fault = MessageUtil.copyFault(me); - MessageUtil.transferToFault(fault, exchange); - done(me); - sendSync(exchange); - } - } else { - throw new IllegalStateException("Exchange status is " + ExchangeStatus.ACTIVE + " but has no correlation set"); - } - // Faults must be sent back to the consumer - } else { + } else if (tme.getFault() != null) { + processFault(exchange, tme); + // This should not happen + } else if (tme.getOutMessage() == null) { + throw new IllegalStateException("Exchange status is " + ExchangeStatus.ACTIVE + + " but has no correlation set"); + // This is the answer from the transformer + } else { + MessageExchange me = getExchangeFactory().createExchange(exchange.getPattern()); + target.configureTarget(me, getContext()); + MessageUtil.transferOutToIn(tme, me); + sendSync(me); + done(tme); + if (me.getStatus() == ExchangeStatus.DONE) { + done(exchange); + } else if (me.getStatus() == ExchangeStatus.ERROR) { + fail(exchange, me.getError()); + } else if (me.getFault() != null) { if (exchange instanceof InOnly) { // Do not use the fault has it may contain streams // So just transform it to a string and send an error - String fault = new SourceTransformer().contentToString(tme.getFault()); - done(tme); + String fault = new SourceTransformer().contentToString(me.getFault()); + done(me); fail(exchange, new FaultException(fault, null, null)); } else { - Fault fault = MessageUtil.copyFault(tme); + Fault fault = MessageUtil.copyFault(me); MessageUtil.transferToFault(fault, exchange); - done(tme); + done(me); sendSync(exchange); } + } else { + throw new IllegalStateException("Exchange status is " + ExchangeStatus.ACTIVE + + " but has no correlation set"); } - // This should not happen - } else if (tme.getOutMessage() == null) { - throw new IllegalStateException("Exchange status is " + ExchangeStatus.ACTIVE + " but has no correlation set"); - // This is the answer from the transformer - } else { + } + } + + private void processFault(MessageExchange exchange, InOut tme) throws Exception { + // Faults must be sent to the target / faultsTarget + if (faultsTarget != null || sendFaultsToTarget) { MessageExchange me = getExchangeFactory().createExchange(exchange.getPattern()); - target.configureTarget(me, getContext()); - MessageUtil.transferOutToIn(tme, me); + (faultsTarget != null ? faultsTarget : target).configureTarget(me, getContext()); + MessageUtil.transferToIn(tme.getFault(), me); sendSync(me); done(tme); if (me.getStatus() == ExchangeStatus.DONE) { @@ -259,7 +249,22 @@ sendSync(exchange); } } else { - throw new IllegalStateException("Exchange status is " + ExchangeStatus.ACTIVE + " but has no correlation set"); + throw new IllegalStateException("Exchange status is " + ExchangeStatus.ACTIVE + + " but has no correlation set"); + } + // Faults must be sent back to the consumer + } else { + if (exchange instanceof InOnly) { + // Do not use the fault has it may contain streams + // So just transform it to a string and send an error + String fault = new SourceTransformer().contentToString(tme.getFault()); + done(tme); + fail(exchange, new FaultException(fault, null, null)); + } else { + Fault fault = MessageUtil.copyFault(tme); + MessageUtil.transferToFault(fault, exchange); + done(tme); + sendSync(exchange); } } } @@ -270,161 +275,178 @@ protected void processAsync(MessageExchange exchange) throws Exception { // The exchange comes from the consumer if (exchange.getRole() == MessageExchange.Role.PROVIDER) { - // A DONE status from the consumer can only be received - // when a fault has been sent - if (exchange.getStatus() == ExchangeStatus.DONE) { - String transformerId = (String) exchange.getProperty(correlationTransformer); - String targetId = (String) exchange.getProperty(correlationTarget); - if (transformerId == null && targetId == null) { - throw new IllegalStateException("Exchange status is " + ExchangeStatus.DONE + " but has no correlation set"); - } - // Load the exchange - MessageExchange me = (MessageExchange) store.load(targetId != null ? targetId : transformerId); - done(me); - // Errors must be sent back to the target or transformer - } else if (exchange.getStatus() == ExchangeStatus.ERROR) { - String transformerId = (String) exchange.getProperty(correlationTransformer); - String targetId = (String) exchange.getProperty(correlationTarget); - if (transformerId == null && targetId == null) { - throw new IllegalStateException("Exchange status is " + ExchangeStatus.DONE + " but has no correlation set"); - } - // Load the exchange - MessageExchange me = (MessageExchange) store.load(targetId != null ? targetId : transformerId); - fail(me, exchange.getError()); - // This is a new exchange - } else if (exchange.getProperty(correlationTransformer) == null) { - if (exchange instanceof InOnly == false && exchange instanceof RobustInOnly == false) { - fail(exchange, new UnsupportedOperationException("Use an InOnly or RobustInOnly MEP")); - return; - } - // Create exchange for target - MessageExchange tme = getExchangeFactory().createInOutExchange(); - transformer.configureTarget(tme, getContext()); - // Set correlations - exchange.setProperty(correlationTransformer, tme.getExchangeId()); - tme.setProperty(correlationConsumer, exchange.getExchangeId()); - tme.setProperty(TRANSFORMER, Boolean.TRUE); - tme.setProperty(CONSUMER_MEP, exchange.getPattern()); - // Put exchange to store - store.store(exchange.getExchangeId(), exchange); - // Send in to listener and target - MessageUtil.transferInToIn(exchange, tme); - send(tme); - } else { - throw new IllegalStateException("Exchange status is " + ExchangeStatus.ACTIVE + " but has no correlation set"); - } + processAsyncProvider(exchange); // If the exchange comes from the transformer } else if (Boolean.TRUE.equals(exchange.getProperty(TRANSFORMER))) { - // Retrieve the correlation id - String consumerId = (String) exchange.getProperty(correlationConsumer); - if (consumerId == null) { - throw new IllegalStateException(correlationConsumer + " property not found"); + processAsyncTransformerResponse(exchange); + // The exchange comes from the target + } else { + processAsyncTargetResponse(exchange); + } + } + + private void processAsyncProvider(MessageExchange exchange) throws Exception { + // A DONE status from the consumer can only be received + // when a fault has been sent + if (exchange.getStatus() == ExchangeStatus.DONE) { + String transformerId = (String) exchange.getProperty(correlationTransformer); + String targetId = (String) exchange.getProperty(correlationTarget); + if (transformerId == null && targetId == null) { + throw new IllegalStateException("Exchange status is " + ExchangeStatus.DONE + + " but has no correlation set"); } - // This should not happen beacause the MEP is an In-Out - // and the DONE status is always sent by the consumer (us) - if (exchange.getStatus() == ExchangeStatus.DONE) { - throw new IllegalStateException("Received a DONE status from the transformer"); - // Errors must be sent back to the consumer - } else if (exchange.getStatus() == ExchangeStatus.ERROR) { - MessageExchange me = (MessageExchange) store.load(consumerId); - fail(me, exchange.getError()); - } else if (exchange.getFault() != null) { - // Faults must be sent to faultsTarget / target - if (faultsTarget != null ||
{'source': 'Apache Software Foundation Public Mail Archives'}