Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import javax.sql.DataSource;
- import org.apache.camel.main.Main;
- import org.apache.camel.builder.RouteBuilder;
- import org.apache.commons.dbcp.BasicDataSource;
- public class JDBCExample {
- private Main main;
- public static void main(String[] args) throws Exception {
- JDBCExample example = new JDBCExample();
- example.boot();
- }
- public void boot() throws Exception {
- // create a Main instance
- main = new Main();
- // enable hangup support so you can press ctrl + c to terminate the JVM
- main.enableHangupSupport();
- String url = "jdbc:oracle:thin:@MYSERVER:1521:myDB";
- DataSource dataSource = setupDataSource(url);
- // bind dataSource into the registery
- main.bind("myDataSource", dataSource);
- // add routes
- main.addRouteBuilder(new MyRouteBuilder());
- // run until you terminate the JVM
- System.out.println("Starting Camel. Use ctrl + c to terminate the JVM.n");
- main.run();
- }
- class MyRouteBuilder extends RouteBuilder {
- public void configure() {
- String dst = "C:/Local Disk E/TestData/Destination";
- from("direct:myTable")
- .setBody(constant("select * from myTable"))
- .to("jdbc:myDataSource")
- .to("file:" + dst);
- }
- }
- private DataSource setupDataSource(String connectURI) {
- BasicDataSource ds = new BasicDataSource();
- ds.setDriverClassName("oracle.jdbc.driver.OracleDriver");
- ds.setUsername("sa");
- ds.setPassword("devon1");
- ds.setUrl(connectURI);
- return ds;
- }
- }
- import javax.sql.DataSource;
- import org.apache.camel.CamelContext;
- import org.apache.camel.impl.DefaultCamelContext;
- import org.apache.camel.impl.SimpleRegistry;
- import org.apache.camel.main.Main;
- import org.apache.camel.builder.RouteBuilder;
- import org.apache.commons.dbcp.BasicDataSource;
- public class JDBCExample {
- private Main main;
- public static void main(String[] args) throws Exception {
- String url = "jdbc:oracle:thin:@MYSERVER:1521:myDB";
- DataSource dataSource = setupDataSource(url);
- SimpleRegistry reg = new SimpleRegistry() ;
- reg.put("myDataSource",dataSource);
- CamelContext context = new DefaultCamelContext(reg);
- context.addRoutes(new JDBCExample().new MyRouteBuilder());
- context.start();
- Thread.sleep(5000);
- context.stop();
- }
- class MyRouteBuilder extends RouteBuilder {
- public void configure() {
- String dst = "C:/Local Disk E/TestData/Destination";
- from("direct:myTable")
- .setBody(constant("select * from myTable"))
- .to("jdbc:myDataSource")
- .to("file:" + dst);
- }
- }
- private static DataSource setupDataSource(String connectURI) {
- BasicDataSource ds = new BasicDataSource();
- ds.setDriverClassName("oracle.jdbc.driver.OracleDriver");
- ds.setUsername("sa");
- ds.setPassword("devon1");
- ds.setUrl(connectURI);
- return ds;
- }
- }
- Caused by: org.apache.camel.ResolveEndpointFailedException: Failed to resolve endpoint: jdbc://myDataSource due to: No component found with scheme: jdbc
- at org.apache.camel.impl.DefaultCamelContext.getEndpoint(DefaultCamelContext.java:534)
- at org.apache.camel.util.CamelContextHelper.getMandatoryEndpoint(CamelContextHelper.java:63)
- at org.apache.camel.model.RouteDefinition.resolveEndpoint(RouteDefinition.java:192)
- at org.apache.camel.impl.DefaultRouteContext.resolveEndpoint(DefaultRouteContext.java:106)
- at org.apache.camel.impl.DefaultRouteContext.resolveEndpoint(DefaultRouteContext.java:112)
- at org.apache.camel.model.SendDefinition.resolveEndpoint(SendDefinition.java:61)
- at org.apache.camel.model.SendDefinition.createProcessor(SendDefinition.java:55)
- at org.apache.camel.model.ProcessorDefinition.makeProcessor(ProcessorDefinition.java:500)
- at org.apache.camel.model.ProcessorDefinition.addRoutes(ProcessorDefinition.java:213)
- at org.apache.camel.model.RouteDefinition.addRoutes(RouteDefinition.java:909)
- ... 12 more
- [Thread-0] INFO org.apache.camel.main.MainSupport$HangupInterceptor - Received hang up - stopping the main instance.
- SimpleRegistry registry = new SimpleRegistry();
- // code to create data source here
- DateSource ds = ...
- registry.put("myDataSource", ds);
- CamelContext camel = new DefaultCamelContext(registry);
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement