此内容没有您所选择的语言版本。

34.2. Running the Demonstrations


Building the demonstrations

Use Apache Maven to build the demonstrations. Open a new command prompt, change directory to cxf-webinars-jboss-fuse-6.3, and enter the following commands:
mvn install
This command builds all of the demonstrations under the cxf-webinars-jboss-fuse-6.3 directory (where the demonstrations are defined to be submodules of the cxf-webinars-jboss-fuse-6.3/pom.xml project). While Maven is building the demonstration code, it downloads whatever dependencies it needs from the Internet and installs them in the local Maven repository.

Starting and configuring the Red Hat JBoss Fuse container

Start and configure the Red Hat JBoss Fuse container as follows:
  1. (Optional) If your local Maven repository is in a non-standard location, you might need to edit the JBoss Fuse configuration to specify your custom location. Edit the InstallDir/etc/org.ops4j.pax.url.mvn.cfg file and set the org.ops4j.pax.url.mvn.localRepository property to the location of your local Maven repository:
    #
    # Path to the local maven repository which is used to avoid downloading
    # artifacts when they already exist locally.
    # The value of this property will be extracted from the settings.xml file
    # above, or defaulted to:
    #     System.getProperty( "user.home" ) + "/.m2/repository"
    #
    #org.ops4j.pax.url.mvn.localRepository=
    org.ops4j.pax.url.mvn.localRepository=file:E:/Data/.m2/repository
  2. Launch the JBoss Fuse container. Open a new command prompt, change directory to InstallDir/bin, and enter the following command:
    ./fuse

Running the customer-ws-osgi-bundle demonstration

It is now a relatively straightforward task to run each of the demonstrations by installing the relevant OSGi bundles.
For example, to start up the WSDL-first Web service (discussed in Chapter 36, WSDL-First Service Implementation), enter the following console commands:
JBossFuse:karaf@root> install -s mvn:com.fusesource.byexample.cxf-webinars/customer-ws-osgi-bundle/1.0-SNAPSHOT
To see the Web service in action, start up the sample Web service client (discussed in Chapter 37, Implementing a WS Client), by entering the following console command:
JBossFuse:karaf@root> install -s mvn:com.fusesource.byexample.cxf-webinars/customer-ws-client/1.0-SNAPSHOT
The bundle creates a thread that invokes the Web service once a second and logs the response. View the log by entering the following console command:
JBossFuse:karaf@root> log:tail -n 4
You should see log output like the following:
2015-08-20 16:10:16,271 | INFO  | #0 - timer://foo | timerToLog                       | ?                                   ? | 198 - org.apache.camel.camel-core - 2.15.1.redhat-620133 | The message contains Hi from Camel at 2015-08-20 16:10:16
2015-08-20 16:10:16,367 | INFO  | qtp432302853-183 | CustomerServiceImpl              | ?                                   ? | 283 - com.fusesource.byexample.cxf-webinars.customer-ws-osgi-bundle - 1.0.0.SNAPSHOT | Getting status for customer 1234
2015-08-20 16:10:16,370 | INFO  |  invoker thread. | ClientInvoker                    | ?                                   ? | 284 - com.fusesource.byexample.cxf-webinars.customer-ws-client - 1.0.0.SNAPSHOT | Got back: status = Active, statusMessage = In the park, playing with my frisbee.
2015-08-20 16:10:18,373 | INFO  | qtp432302853-182 | CustomerServiceImpl              | ?                                   ? | 283 - com.fusesource.byexample.cxf-webinars.customer-ws-osgi-bundle - 1.0.0.SNAPSHOT | Getting status for customer 1234
2015-08-20 16:10:18,376 | INFO  |  invoker thread. | ClientInvoker                    | ?                                   ? | 284 - com.fusesource.byexample.cxf-webinars.customer-ws-client - 1.0.0.SNAPSHOT | Got back: status = Active, statusMessage = In the park, playing with my frisbee.
To stop viewing the log, type the interrupt character (usually Ctrl-C).
To stop the client, first discover the client's bundle ID using the osgi:list console command. For example:
JBossFuse:karaf@root> list | grep customer-ws-client
[ 284] [Active     ] [            ] [Started] [   80] customer-ws-client (1.0.0.SNAPSHOT)
You can then stop the client using the osgi:stop console command. For example:
JBossFuse:karaf@root> stop 284
To shut down the container completely, enter the following console command:
JBossFuse:karaf@root> shutdown

Running the other demonstrations

The remaining demonstrations are all based on the Camel CXF component. You can only run one of these demonstrations at a time, because they all use the same Web service port and would clash, if started at the same time:
  • customer-ws-camel-cxf-pojo
  • customer-ws-camel-cxf-payload
  • customer-ws-camel-cxf-provider
The preceding demonstrations all require the Camel CXF component and some of them require the Camel Velocity component as well. Before you run the demonstrations, you must install the requisite features for these Camel components, as follows:
JBossFuse:karaf@root> features:install camel-cxf
JBossFuse:karaf@root> features:install camel-velocity
You can test these demonstrations using the provided customer-ws-client client or using the third-party SoapUI utility.
Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.