Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

This example uses a specific service to invoke

Code Block
        InOnly exchange = client.createInOnlyExchange();

        NormalizedMessage message = exchange.getInMessage();
        message.setProperty("name", "James");
        message.setContent(new StreamSource(new StringReader("<hello>world</hello>")));

        // lets use a specific service to dispatch to
        QName service = new QName("http://servicemix.org/cheese/", "receiver");
        exchange.setService(service);
        client.send(exchange);

In this example, we assume that the JBI container will have setup a default routing connection for our client, so we don't have to worry about specifying the endpoint.

Code Block
        InOnly exchange = client.createInOnlyExchange();

        NormalizedMessage message = exchange.getInMessage();
        message.setProperty("name", "James");
        message.setContent(new StreamSource(new StringReader("<hello>world</hello>")));

        client.send(exchange);

Invoking services

Code Block
        InOut exchange = client.createInOutExchange();

        NormalizedMessage inMessage = exchange.getInMessage();
        inMessage.setProperty("name", "James");
        inMessage.setContent(new StreamSource(new StringReader("<hello>world</hello>")));

        // optionally specify the endpoint
        exchange.setService(service);

        client.sendSync(exchange);
        NormalizedMessage outMessage = exchange.getOutMessage();

...

This example uses a specific service to invoke

Code Block
        Map properties = new HashMap();
        properties.put("name", "James");

        // lets use a specific service to route to
        QName service = new QName("http://servicemix.org/cheese/", "receiver");
        EndpointResolver resolver = client.createResolverForService(service);
        client.send(resolver, null, properties, "<hello>world</hello>");

In this example, we assume that the JBI container will have setup a default routing connection for our client, so we don't have to worry about specifying the endpoint.

Code Block
        Map properties = new HashMap();
        properties.put("name", "James");

        client.send(null, null, properties, "<hello>world</hello>");

Invoking services

Code Block
        // optional endpoint resolution 
        EndpointResolver resolver = client.createResolverForService(service);

        Map properties = new HashMap();
        properties.put("name", "James");

        Object response = client.request(resolver, null, properties, "<hello>world</hello>");