Switch branches/tags
wildfly-camel-examples-5.2.0.fuse-720017 wildfly-camel-examples-5.2.0.fuse-720016 wildfly-camel-examples-5.2.0.fuse-720015 wildfly-camel-examples-5.2.0.fuse-720014 wildfly-camel-examples-5.2.0.fuse-720013 wildfly-camel-examples-5.2.0.fuse-720012 wildfly-camel-examples-5.2.0.fuse-720011 wildfly-camel-examples-5.2.0.fuse-720010 wildfly-camel-examples-5.2.0.fuse-720009 wildfly-camel-examples-5.2.0.fuse-720008 wildfly-camel-examples-5.2.0.fuse-720007 wildfly-camel-examples-5.2.0.fuse-720006 wildfly-camel-examples-5.2.0.fuse-720005 wildfly-camel-examples-5.2.0.fuse-720004 wildfly-camel-examples-5.2.0.fuse-720003 wildfly-camel-examples-5.2.0.fuse-720002 wildfly-camel-examples-5.2.0.fuse-720001 wildfly-camel-examples-5.2.0.fuse-711004 wildfly-camel-examples-5.2.0.fuse-711003 wildfly-camel-examples-5.2.0.fuse-711002 wildfly-camel-examples-5.2.0.fuse-711001 wildfly-camel-examples-5.2.0.fuse-710022 wildfly-camel-examples-5.2.0.fuse-710021 wildfly-camel-examples-5.2.0.fuse-710020 wildfly-camel-examples-5.2.0.fuse-710019 wildfly-camel-examples-5.2.0.fuse-710018 wildfly-camel-examples-5.2.0.fuse-710017 wildfly-camel-examples-5.2.0.fuse-710016 wildfly-camel-examples-5.2.0.fuse-710015 wildfly-camel-examples-5.2.0.fuse-710014 wildfly-camel-examples-5.2.0.fuse-710013 wildfly-camel-examples-5.2.0.fuse-710012 wildfly-camel-examples-5.2.0.fuse-710011 wildfly-camel-examples-5.2.0.fuse-710010 wildfly-camel-examples-5.2.0.fuse-710009 wildfly-camel-examples-5.2.0.fuse-710008 wildfly-camel-examples-5.2.0.fuse-710007 wildfly-camel-examples-5.2.0.fuse-710006 wildfly-camel-examples-5.2.0.fuse-710005 wildfly-camel-examples-5.2.0.fuse-710004 wildfly-camel-examples-5.2.0.fuse-710003 wildfly-camel-examples-5.2.0.fuse-710002 wildfly-camel-examples-5.2.0.fuse-710001 wildfly-camel-examples-5.1.0.fuse-000062 wildfly-camel-examples-5.1.0.fuse-000061 wildfly-camel-examples-5.1.0.fuse-000060 wildfly-camel-examples-5.1.0.fuse-000059 wildfly-camel-examples-5.1.0.fuse-000059-redhat-3 wildfly-camel-examples-5.1.0.fuse-000058 wildfly-camel-examples-5.1.0.fuse-000057 wildfly-camel-examples-5.1.0.fuse-000056 wildfly-camel-examples-5.1.0.fuse-000055 wildfly-camel-examples-5.1.0.fuse-000054 wildfly-camel-examples-5.1.0.fuse-000053 wildfly-camel-examples-5.1.0.fuse-000052 wildfly-camel-examples-5.1.0.fuse-000051 wildfly-camel-examples-5.1.0.fuse-000050 wildfly-camel-examples-5.1.0.fuse-000049 wildfly-camel-examples-5.1.0.fuse-000048 wildfly-camel-examples-5.1.0.fuse-000047 wildfly-camel-examples-5.1.0.fuse-000046 wildfly-camel-examples-5.1.0.fuse-000045 wildfly-camel-examples-5.1.0.fuse-000044 wildfly-camel-examples-5.1.0.fuse-000043 wildfly-camel-examples-5.1.0.fuse-000042 wildfly-camel-examples-5.1.0.fuse-000041 wildfly-camel-examples-5.1.0.fuse-000040 wildfly-camel-examples-5.1.0.fuse-000039 wildfly-camel-examples-5.1.0.fuse-000038 wildfly-camel-examples-5.1.0.fuse-000037 wildfly-camel-examples-5.1.0.fuse-000036 wildfly-camel-examples-5.1.0.fuse-000035 wildfly-camel-examples-5.1.0.fuse-000034 wildfly-camel-examples-5.1.0.fuse-000033 wildfly-camel-examples-5.1.0.fuse-000032 wildfly-camel-examples-5.1.0.fuse-000031 wildfly-camel-examples-5.1.0.fuse-000030 wildfly-camel-examples-5.1.0.fuse-000029 wildfly-camel-examples-5.1.0.fuse-000028 wildfly-camel-examples-5.1.0.fuse-000027 wildfly-camel-examples-5.1.0.fuse-000026 wildfly-camel-examples-5.1.0.fuse-000025 wildfly-camel-examples-5.1.0.fuse-000024 wildfly-camel-examples-5.1.0.fuse-000023 wildfly-camel-examples-5.1.0.fuse-000022 wildfly-camel-examples-5.1.0.fuse-000021 wildfly-camel-examples-5.1.0.fuse-000020 wildfly-camel-examples-5.1.0.fuse-000019 wildfly-camel-examples-5.1.0.fuse-000018 wildfly-camel-examples-5.1.0.fuse-000017 wildfly-camel-examples-5.1.0.fuse-000016 wildfly-camel-examples-5.1.0.fuse-000015 wildfly-camel-examples-5.1.0.fuse-000014 wildfly-camel-examples-5.1.0.fuse-000014-redhat-1 wildfly-camel-examples-5.1.0.fuse-000013 wildfly-camel-examples-5.1.0.fuse-000012 wildfly-camel-examples-5.1.0.fuse-000011 wildfly-camel-examples-5.1.0.fuse-000010 wildfly-camel-examples-5.1.0.fuse-000009 wildfly-camel-examples-5.1.0.fuse-000008
Nothing to show
Find file History
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
..
Failed to load latest commit information.
src/main
README.md
pom.xml

README.md

Camel CXF JAX-WS Example

This example demonstrates using the camel-cxf component with the WildFly Camel Subsystem to produce and consume JAX-WS web services.

In this example, a Camel route takes a message payload from a direct endpoint and passes it on to a CXF producer endpoint. The producer uses the payload to pass arguments to a CXF JAX-WS web service.

Prerequisites

  • Maven
  • An application server with the wildfly-camel subsystem installed

Running the example

To run the example.

  1. Start the application server in standalone mode ${JBOSS_HOME}/bin/standalone.sh -c standalone-full-camel.xml
  2. Build and deploy the project mvn install -Pdeploy
  3. Browse to http://localhost:8080/example-camel-cxf-jaxws/

You should see a page titled 'Send A Greeting'. This UI enables us to interact with the test 'greeting' web service which will have also been started. The service WSDL is available at http://localhost:8080/webservices/greeting?wsdl.

There is a single service operation named 'greet' which takes 2 String parameters named 'message' and 'name'. Invoking the web service will return a response where these values have been concatenated together.

Testing Camel CXF JAX-WS

Web UI

Browse to http://localhost:8080/example-camel-cxf-jaxws/.

From the 'Send A Greeting' web form, enter a 'message' and 'name' into the text fields and press the 'send' button. You'll then see the information you entered combined to display a greeting on the UI.

So what just happened there?

CamelCxfWsServlet handles the POST request from the web UI. It retrieves the message and name form parameter values and constructs an object array. This object array will be the message payload that is sent to the direct:start endpoint. A ProducerTemplate sends the message payload to Camel. The direct:start endpoint passes the object array to a cxf:bean web service producer. The web service response is used by CamelCxfWsServlet to display the greeting on the web UI.

The full Camel route can be seen in src/main/webapp/WEB-INF/cxfws-camel-context.xml.

Undeploy

To undeploy the example run mvn clean -Pdeploy.

Learn more

Additional camel-cxf documentation can be found at the WildFly Camel User Guide site.