svn commit: r930535 - in /camel/trunk/components/camel-gae: ./ src/main/java/org/apache/camel/component/gae/http/ src/main/java/org/apache/camel/component/gae/mail/ src/test/java/com/google/appengine/
Author: krasserm Date: Sat Apr 3 15:57:29 2010 New Revision: 930535 URL: http://svn.apache.org/viewvc?rev=930535&view=rev Log: use GAE SDK mocks for gmail component tests, minor edits in gmail component Removed: camel/trunk/components/camel-gae/src/test/java/com/google/appengine/api/urlfetch/ camel/trunk/components/camel-gae/src/test/java/org/apache/camel/component/gae/http/MockUrlFetchService.java Modified: camel/trunk/components/camel-gae/pom.xml camel/trunk/components/camel-gae/src/main/java/org/apache/camel/component/gae/http/GHttpComponent.java camel/trunk/components/camel-gae/src/main/java/org/apache/camel/component/gae/http/GHttpEndpoint.java camel/trunk/components/camel-gae/src/main/java/org/apache/camel/component/gae/mail/GMailComponent.java camel/trunk/components/camel-gae/src/test/java/org/apache/camel/component/gae/http/GHttpBindingTest.java camel/trunk/components/camel-gae/src/test/java/org/apache/camel/component/gae/http/GHttpCombinedRouteBuilder.java camel/trunk/components/camel-gae/src/test/java/org/apache/camel/component/gae/http/GHttpCombinedRouteBuilderTest.java camel/trunk/components/camel-gae/src/test/java/org/apache/camel/component/gae/http/GHttpEndpointTest.java camel/trunk/components/camel-gae/src/test/java/org/apache/camel/component/gae/http/GHttpInboundRouteBuilderTest.java camel/trunk/components/camel-gae/src/test/java/org/apache/camel/component/gae/http/GHttpOutboundRouteBuilder.java camel/trunk/components/camel-gae/src/test/java/org/apache/camel/component/gae/http/GHttpOutboundRouteBuilderTest.java camel/trunk/components/camel-gae/src/test/java/org/apache/camel/component/gae/http/GHttpTestUtils.java camel/trunk/components/camel-gae/src/test/java/org/apache/camel/component/gae/mail/GMailBindingTest.java camel/trunk/components/camel-gae/src/test/java/org/apache/camel/component/gae/mail/GMailEndpointTest.java camel/trunk/components/camel-gae/src/test/java/org/apache/camel/component/gae/mail/GMailOutboundRouteBuilderTest.java camel/trunk/components/camel-gae/src/test/java/org/apache/camel/component/gae/mail/GMailTestUtils.java camel/trunk/components/camel-gae/src/test/java/org/apache/camel/component/gae/support/ServletTestSupport.java camel/trunk/components/camel-gae/src/test/resources/org/apache/camel/component/gae/http/context-combined.xml camel/trunk/components/camel-gae/src/test/resources/org/apache/camel/component/gae/http/context-inbound.xml camel/trunk/components/camel-gae/src/test/resources/org/apache/camel/component/gae/http/context-outbound.xml Modified: camel/trunk/components/camel-gae/pom.xml URL: http://svn.apache.org/viewvc/camel/trunk/components/camel-gae/pom.xml?rev=930535&r1=930534&r2=930535&view=diff == --- camel/trunk/components/camel-gae/pom.xml (original) +++ camel/trunk/components/camel-gae/pom.xml Sat Apr 3 15:57:29 2010 @@ -78,6 +78,14 @@ ${appengine-sdk-version} + org.eclipse.jetty + jetty-server + + + org.eclipse.jetty + jetty-servlet + + org.apache.camel camel-test test Modified: camel/trunk/components/camel-gae/src/main/java/org/apache/camel/component/gae/http/GHttpComponent.java URL: http://svn.apache.org/viewvc/camel/trunk/components/camel-gae/src/main/java/org/apache/camel/component/gae/http/GHttpComponent.java?rev=930535&r1=930534&r2=930535&view=diff == --- camel/trunk/components/camel-gae/src/main/java/org/apache/camel/component/gae/http/GHttpComponent.java (original) +++ camel/trunk/components/camel-gae/src/main/java/org/apache/camel/component/gae/http/GHttpComponent.java Sat Apr 3 15:57:29 2010 @@ -19,9 +19,6 @@ package org.apache.camel.component.gae.h import java.net.URI; import java.util.Map; -import com.google.appengine.api.urlfetch.URLFetchService; -import com.google.appengine.api.urlfetch.URLFetchServiceFactory; - import org.apache.camel.Endpoint; import org.apache.camel.component.gae.bind.InboundBinding; import org.apache.camel.component.gae.bind.OutboundBinding; @@ -50,14 +47,11 @@ public class GHttpComponent extends Serv parameters, "outboundBindingRef", OutboundBinding.class, new GHttpBinding()); InboundBinding inboundBinding = resolveAndRemoveReferenceParameter( parameters, "inboundBindingRef", InboundBinding.class, new GHttpBinding()); -URLFetchService service = resolveAndRemoveReferenceParameter( -parameters, "urlFetchServiceRef", URLFetchService.class, URLFetchServiceFactory.getURLFetchService()); GHttpEndpoint endpoint = (GHttpEndpoint)super.createEndpoint(uri, remaining, parameters); endpoint.setThrowExceptionOnFailure(throwException); endpoint.setBridgeEndpoint(bridgeEndpoint);
[CONF] Apache Camel > Articles
Articles Page edited by Claus Ibsen See alsoSee also Camel User Stories. Articles on Apache Camel A bit more meat: Camel applied : JMS to File by Mike McLean Mathew Thomas posted his thoughts on Apache Camel including a sample project Matteo wrote a blog entry about using Camel with iBatis Knowledge Tree integration using Apache Camel Integrating Apache Camel with JBoss ESB by Edgar Ankiewsky Simple DSL OSGi bundle example by Andrej Koelewijn Realization of EAI Patterns with Apache Camel by Pascal Kolb at the Universität Stuttgart Using Camel with Maven to access web services and message queues by Glen Mazza Spring Remoting with JMS Example on Amin Abbaspour's Weblog Implementing Enterprise Integration Patterns with Apache Camel presentation by Eduard Hildebrandt. Very nice power point presentation. Implementing Fuji integration scenario using Camel SE by Louis Polycarpou on using Camel with Open ESB Using the Camel aggregator correctly by Torsten Mielke, a great blog entry how to use the Camel aggregator. Camel routes and HL7 by Roger Searjeant on using Camel and its HL7 support in the health care space. Combining ApacheCamel+BSF to make JBoss ESB polyglot by Edgard Ankiewsky Silva, a JBoss employeer. Groovy and Grape - easiest way to send gtalk message with Apache Camel by Andrej Koelewijn how easy it is to use Groovy and Grape to quickly try out new frameworks such as Apache Camel. Domain-Specific Languages (DSLs) in Apache Camel (Spanish) by Gema Perdiguero, Tecsisa. Apache Camel integration in ServiceMix (Spanish) by Sebastián Gómez, Tecsisa. Apache Camel: Integration Nirvana by Jonathan Anstey Great for learning what Camel is and what it can do Leverage EIP with Apache Camel and Twitter by Bruno Borges Apache Camel Reference Card at DZone (the first card out of two) by Claus Ibsen Using RSS with Apache Camel by Jeroen Reijn Using Groovy and Camel to pool Google Analyst email reports by Mr. Haki Using grails-camel plugin to work with Camel in Grails land by Mr. Haki Send mail with Apache Camel from Gails by Mr. Haki Navigating the Integration Landscape - Claus Ibsen on Apache Camel Claus Ibsen was interviewed at DZone discussing the integration landscape Apache Camel: Enterprise Integration met scripttalen en DSLs (Dutch) by Peter Maas, Finalist IT Group. Axis 2 ride with Camel how to use Axis 2 with the Camel report incident tutorial by Sagara Introduction to the Open eHealth Integration Platform (based on top of Apache Camel) Excellent DZone article by Martin Krasser An IRC alerter written using Apache Camel and Java how to easily integrate IRC with Camel to monitor and do alerts. Entreprise Integration Pattern with Apache Camel 2.0 by Julien Dechmann, how to use Camel to split and transform CSV files to POJO and XML and sending to a JMS destination A Camel based XML payload HTTP polling provider by Christopher Hunt to use Camel with AJAX. Interesting read. Camel vs. JBI by Adrian Trenaman. Things to consider when selecting between Apache Camel and Apache Servicemix by Ashwin Karpe Dead Simple Integration with Apache Camel presentation by Aaron Mulder from Chariot Solutions. Groovy and Camel for monitoring ActiveMQ by Eric Hauser how to monitor AMQ Advisory queues from a single groovy file. Camellos - Discovering Apache Camel by Gunnar Hillert. A very nice and short blog series about Camel showing its powers in a simple and intuitive way. Highly recommended for new users Apache Camel alternatives by Gunnar Hillert. He presents a brief overview of other projects in the integration space. First steps with Apache Camel on Google App Engine by Martin Krasser posts his findings to get Camel running on the GAE. A jira notification system for irc using Camel by Guillaume Nodet - all code is in a single XML hot deployed in Apache Karaf. Camel, CXF and JMS by Example by Silvester van der Bijl. Good blog entry how to use CXF and Camel together. A simple file monitoring console with camel, cometd and jquery by Andrej Koelewijn. Shows how to use Camel to monitor log files and push lines changed using cometd to a webpage. All in a few files using Groovy. A Groovy ride on Camel by Jack Hung. Shows how to use Groovy with Camel to do a great content based route and transformation. First step with Apache Camel by Lukasz Budnik. Great first steps where Lukas does a fairly complex route as his first encounter with Camel. Advanced Event Notification Framework with Apache Camel by Hendy showing how to use Camel for a lightweight even notification system. Spring Integration and Apache Camel by Biju Kunjummen. An objective showcase, showing the same case how to do it with Spring Integration and Apache Camel. Camel IRC Message Route Example by James Carr. An IRC bot which can parse _javascript_ and Ruby expressions. Camel + Smooks from the official Smooks blog about Smooks integration Camel out of the box. H
svn commit: r930493 - in /camel/trunk/components/camel-spring/src: main/java/org/apache/camel/spring/ main/java/org/apache/camel/spring/handler/ test/java/org/apache/camel/spring/config/ test/resource
Author: davsclaus Date: Sat Apr 3 08:47:09 2010 New Revision: 930493 URL: http://svn.apache.org/viewvc?rev=930493&view=rev Log: CAMEL-2610: Added depends-on to CamelContext XML tag. Added: camel/trunk/components/camel-spring/src/test/java/org/apache/camel/spring/config/MyDependsOnBean.java (with props) camel/trunk/components/camel-spring/src/test/java/org/apache/camel/spring/config/MyDependsOnRouteBuilder.java (with props) camel/trunk/components/camel-spring/src/test/java/org/apache/camel/spring/config/SpringCamelContextDependsOnTest.java (with props) camel/trunk/components/camel-spring/src/test/java/org/apache/camel/spring/config/SpringCamelContextNoDependsOnTest.java (with props) camel/trunk/components/camel-spring/src/test/resources/org/apache/camel/spring/config/SpringCamelContextDependsOnTest.xml - copied, changed from r930484, camel/trunk/components/camel-spring/src/test/resources/org/apache/camel/spring/config/CamelPropertiesTest.xml camel/trunk/components/camel-spring/src/test/resources/org/apache/camel/spring/config/SpringCamelContextNoDependsOnTest.xml (with props) Modified: camel/trunk/components/camel-spring/src/main/java/org/apache/camel/spring/CamelContextFactoryBean.java camel/trunk/components/camel-spring/src/main/java/org/apache/camel/spring/handler/CamelNamespaceHandler.java Modified: camel/trunk/components/camel-spring/src/main/java/org/apache/camel/spring/CamelContextFactoryBean.java URL: http://svn.apache.org/viewvc/camel/trunk/components/camel-spring/src/main/java/org/apache/camel/spring/CamelContextFactoryBean.java?rev=930493&r1=930492&r2=930493&view=diff == --- camel/trunk/components/camel-spring/src/main/java/org/apache/camel/spring/CamelContextFactoryBean.java (original) +++ camel/trunk/components/camel-spring/src/main/java/org/apache/camel/spring/CamelContextFactoryBean.java Sat Apr 3 08:47:09 2010 @@ -108,6 +108,8 @@ import static org.apache.camel.util.Obje public class CamelContextFactoryBean extends IdentifiedType implements RouteContainer, FactoryBean, InitializingBean, DisposableBean, ApplicationContextAware, ApplicationListener { private static final Log LOG = LogFactory.getLog(CamelContextFactoryBean.class); +@XmlAttribute(name = "depends-on", required = false) +private String dependsOn; @XmlAttribute(required = false) private String trace; @XmlAttribute(required = false) @@ -954,6 +956,14 @@ public class CamelContextFactoryBean ext this.threadPoolProfiles = threadPoolProfiles; } +public String getDependsOn() { +return dependsOn; +} + +public void setDependsOn(String dependsOn) { +this.dependsOn = dependsOn; +} + // Implementation methods // - Modified: camel/trunk/components/camel-spring/src/main/java/org/apache/camel/spring/handler/CamelNamespaceHandler.java URL: http://svn.apache.org/viewvc/camel/trunk/components/camel-spring/src/main/java/org/apache/camel/spring/handler/CamelNamespaceHandler.java?rev=930493&r1=930492&r2=930493&view=diff == --- camel/trunk/components/camel-spring/src/main/java/org/apache/camel/spring/handler/CamelNamespaceHandler.java (original) +++ camel/trunk/components/camel-spring/src/main/java/org/apache/camel/spring/handler/CamelNamespaceHandler.java Sat Apr 3 08:47:09 2010 @@ -209,7 +209,7 @@ public class CamelNamespaceHandler exten } // now lets parse the routes with JAXB -Binder binder = null; +Binder binder; try { binder = getJaxbContext().createBinder(); } catch (JAXBException e) { @@ -237,6 +237,8 @@ public class CamelNamespaceHandler exten builder.addPropertyValue("camelPropertyPlaceholder", factoryBean.getCamelPropertyPlaceholder()); builder.addPropertyValue("camelJMXAgent", factoryBean.getCamelJMXAgent()); builder.addPropertyValue("threadPoolProfiles", factoryBean.getThreadPoolProfiles()); +// add any depends-on +addDependsOn(factoryBean, builder); } boolean createdBeanPostProcessor = false; @@ -293,6 +295,25 @@ public class CamelNamespaceHandler exten } +protected void addDependsOn(CamelContextFactoryBean factoryBean, BeanDefinitionBuilder builder) { +String dependsOn = factoryBean.getDependsOn(); +if (ObjectHelper.isNotEmpty(dependsOn)) { +// comma, whitespace and semi colon is valid separators in Spring depends-on +String[] depends = dependsOn.split(",|;|\\s"); +if (depends == null) { +throw new IllegalArgumentException("Cannot separate depends-on, was: "
[CONF] Apache Camel > Xml Reference
Xml Reference Page edited by Claus Ibsen Camel Xml Reference This page contains a link to the XML reference guides and XML schema documents for Xml Configuration with Camel releases. You can refer to http://camel.apache.org/schema/spring/ to see the individual XSDs available. Released Schemas Version XML Schema 2.2.0 http://camel.apache.org/schema/spring/camel-spring-2.2.0.xsd 2.1.0 http://camel.apache.org/schema/spring/camel-spring-2.1.0.xsd 2.0.0 http://camel.apache.org/schema/spring/camel-spring-2.0.0.xsd 2.0-M3 http://camel.apache.org/schema/spring/camel-spring-2.0-M3.xsd 2.0-M2 http://camel.apache.org/schema/spring/camel-spring-2.0-M2.xsd 2.0-M1 http://camel.apache.org/schema/spring/camel-spring-2.0-M1.xsd 1.6.2 http://camel.apache.org/schema/spring/camel-spring-1.6.2.xsd 1.6.1 http://camel.apache.org/schema/spring/camel-spring-1.6.1.xsd 1.6.0 http://camel.apache.org/schema/spring/camel-spring-1.6.0.xsd 1.5.0 http://activemq.apache.org/camel/schema/spring/camel-spring-1.5.0.xsd 1.4.0 http://activemq.apache.org/camel/schema/spring/camel-spring-1.4.0.xsd 1.3.0 http://activemq.apache.org/camel/schema/spring/camel-spring-1.3.0.xsd 1.2.0 http://activemq.apache.org/camel/schema/spring/camel-spring-1.2.0.xsd 1.1.0 http://activemq.apache.org/camel/schema/spring/camel-spring-1.1.0.xsd 1.0.0 http://activemq.apache.org/camel/schema/spring/camel-spring-1.0.0.xsd Using the XSDs in configuration files When you are using Spring's 2.5 XML handling to parse the XML then you need to refer to the XSD locations in your XML document. You can refer to a specific version of the XSD in your XML as follows "http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation=" http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd http://activemq.apache.org/camel/schema/spring http://activemq.apache.org/camel/schema/spring/camel-spring-2.2.0.xsd"> or if you prefer you can use a generic XSD without the version number "http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation=" http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://activemq.apache.org/camel/schema/spring http://activemq.apache.org/camel/schema/spring/camel-spring.xsd"> Your IDE won't be able to fetch this XSD, you'll have to manually associate a specific release; however it does mean that you won't have to upgrade your XML config file with each Camel release; as it will resolve this XSD using the bundled XSD inside the camel-spring.jar. Change Notification Preferences View Online | View Change | Add Comment
[CONF] Apache Camel > Camel 2.3.0 Release
Camel 2.3.0 Release Page edited by Claus Ibsen Camel 2.3.0 release (currently in progress) New and Noteworthy Welcome to the 2.3.0 release which approx XXX issues resolved (new features, improvements and bug fixes such as...) Overhauled threading model and introducing threadPoolProfile to define profiles for thread pools to have easy configuration. Property placeholders in for example endpoint uris is not natively supported in camel-core which means you no long need to use Spring for that. It works therefore in any environment as its provided out of the box in camel-core. Property placeholders also works in the when using Spring XML. Basically nearly all places where you enter text the property placeholder is supported. Added ExchangeSentEvent to EventNotifier which contains time taken and is emitted when an Exchange is sent to an Endpoint. This allows end users to easily gather performance stats for Exchange send to endpoints. Added disconnect option to MINA to close Mina session right after usage. Jetty now supports to get the HttpServletRequest and HttpServletResponse from the Message header. XPathBuilder now supports being used without an Exchange which allows you to use it in a custom/generic fashion. XPath now supports using the JVM system property specifying a custom XPathFactory to be used. You can use this to switch from default to use e.g. Saxon. XSLT now supports using where the files is loaded from classpath, and being able to load relative according to the endpoint configured location. See the wiki page for details. File, FTP added option eagerDeleteTargetFile to control the behavior when using tempFile whether or not to eagerly delete the target file or wait until last moment. Reduced registering producers in JMX to prevent using too much memory and potentially registering short lived producers which didn't bring much value of being managed as well. Upgraded HTTP to use Apache HTTP Client 4.0.1. You may need to migrate if you use special or advanced configuration of HTTP Client. Upgraded Jetty to use Jetty 7.0.1. Individual routes can be Graceful Shutdown at runtime, which allows you to stop the route in a more reliable and gentle way. Total overhaul of the Aggregator EIP, which now has better completion triggers, and supports pluggable repository. For example to use camel-hawtdb as persistent store. Added removeHeaders to remove multiple headers, e.g. use removeHeaders("Camel*") to remove all Camel related headers. Improved the Failover load balancer to support round robin mode and a few other options as well. Fixed issue with Camel not being able to run deployed as a WAR in WebLogic server. Fixed Polling Consumer not working with JMS selector. pollEnrich now handover completions which means you can use the move like options from File or FTP component. For example to enrich with a file and have that file moved when the route completes. Added @Attachments annotation to Bean binding. Simple and Bean language now has a build in OGNL notation which allows you to reference from Map or List structures and as well to invoke methods in a OGNL like notation. See more details at Simple wiki page. camel-jetty supports the multipart/form post out of box. Graceful Shutdown now shut down routes in the reverse order in which they was started. Option shutdownRoutesInReverseOrder can be used to control this behavior. XSLT component now allows you to chose which output type to use with the output option. For example you can now stream directly to a file, for example when transforming very big xml messages. Error Handler can be configure with specialized tag to make it easier to configure error handling in Spring XML. Added depends-on attribute to so you can have other beans created before Camel when using Spring XML. New Enterprise Integration Patterns New Components camel-nagios for sending passive checks to Nagios properties for using property placeholders to resolve endpoint uris. camel-gae extensions gauth component for implementing OAuth consumers. glogin component for programmatic login to Google App Engine applications from Java clients. camel-hawtdb as persistent store for the Aggregator EIP. camel-netty for working with TCP and UDP protocols using Java NIO based capabilities offered by the JBoss Netty. New DSL removeHeaders New Annotations @Attachments New Data Formats SOAP data format provides basic webservice support without the CXF Stack New Languages New Examples camel-example-aggregate shows the new overhauled Aggregator in use with persistence storage using HawtDB. API breaking The Aggregate has been overhauled and thus you need to migrate you Camel application if you use it. See the Aggregate wiki page for which options it has you should use. In MINA the header key MinaConsumer.HEADER_CLOSE_SESSION_WHEN_COMPLETE is moved to MinaConstants.MINA_C
svn commit: r930488 - /camel/trunk/parent/pom.xml
Author: davsclaus Date: Sat Apr 3 07:31:54 2010 New Revision: 930488 URL: http://svn.apache.org/viewvc?rev=930488&view=rev Log: Upgraded to spring 3.0.2 in the spring profile 3.x. Modified: camel/trunk/parent/pom.xml Modified: camel/trunk/parent/pom.xml URL: http://svn.apache.org/viewvc/camel/trunk/parent/pom.xml?rev=930488&r1=930487&r2=930488&view=diff == --- camel/trunk/parent/pom.xml (original) +++ camel/trunk/parent/pom.xml Sat Apr 3 07:31:54 2010 @@ -1430,7 +1430,7 @@ spring-3.x - 3.0.1.RELEASE + 3.0.2.RELEASE 4.8.1