final ProducerTemplate template = context.createProducerTemplate(); final Endpoint endpoint = context.getEndpoint("direct:start"); ClassLoader classLoader = context.getApplicationContextClassLoader(); InvocationHandler invocationHandler = new InvocationHandler() { @Override public Object invoke(Object proxy, Method method, Object[] args) throws Throwable { return template.requestBodyAndHeader(endpoint, args, "operationName", method.getName(), method.getReturnType()); } }; TestService service = (TestService) ProxyHelper.getProxy(classLoader, new Class[] {TestService.class}, invocationHandler);
public static void main(String args[]) throws Exception { CamelContext context = new DefaultCamelContext(); // Set up the ActiveMQ JMS Components ConnectionFactory connectionFactory = new ActiveMQConnectionFactory("tcp://localhost:51616"); // Note we can explicit name of the component context.addComponent("jms", JmsComponent.jmsComponentAutoAcknowledge(connectionFactory)); context.start(); ProducerTemplate template = context.createProducerTemplate(); String out = template.requestBodyAndHeader("jms:queue:loan", null, Constants.PROPERTY_SSN, "Client-A", String.class); System.out.println(out); template.stop(); context.stop(); }
@Test public void testTransmogrifier3() throws InterruptedException { Cat cat = (Cat) producerTemplate.requestBodyAndHeader("direct:transmogrifier-test-3", "wrong", "foo", new Dog("Fritz")); assertEquals(new Cat("Fritz likes fish"), cat); }
@Test public void testNoSessionInsert() throws Exception { Person person = new Person(); person.setName("Mauricio"); InsertObjectCommand cmd = (InsertObjectCommand) CommandFactory.newInsert(person, "salaboy"); ExecutionResults response = (ExecutionResults)template.requestBodyAndHeader("direct:test-no-session", cmd, KieComponent.KIE_LOOKUP, "ksession1"); assertTrue("Expected valid ExecutionResults object", response != null); assertTrue("ExecutionResults missing expected fact", response.getFactHandle("salaboy") != null); }
@Test public void testNoSessionInsert() throws Exception { Person person = new Person(); person.setName( "Mauricio" ); InsertObjectCommand cmd = (InsertObjectCommand) CommandFactory.newInsert( person, "salaboy" ); ExecutionResults response = (ExecutionResults) template.requestBodyAndHeader("direct:test-no-session", cmd, DroolsComponent.DROOLS_LOOKUP, "ksession1"); assertTrue( "Expected valid ExecutionResults object", response != null ); assertTrue( "ExecutionResults missing expected fact", response.getFactHandle( "salaboy" ) != null ); }