2.3. 在 Karaf 上构建第一个 Fuse 应用程序
这组说明可帮助您在 Karaf 上构建第一个 Fuse 应用程序。
先决条件
- 在红帽客户门户网站中 您需要一个全订阅帐户。
- 您必须登录到客户门户网站。
- 您必须已下载 CodeReady Studio 安装程序。
- 您必须已在 Karaf 上下载并成功安装了 Fuse。
流程
在 CodeReady Studio 中,创建一个新项目,如下所示:
- 选择 File→New→Fuse Integration Project。
-
在 Project Name 字段中输入
fuse-camel-cbr
。 - 点击 Next。
在 Select a Target Environment 窗格中选择以下设置:
- 选择 Standalone 作为部署平台。
-
选择 Karaf 上的 Karaf/Fuse 作为运行时环境,并使用 Runtime (可选) 下拉菜单选择
fuse-karaf-7.8.0.fuse-780038-redhat-00001 Runtime
服务器作为目标运行时。
- 选择目标运行时后,会自动为您选择 Camel Version,字段将灰掉。
- 点击 Next。
- 在 Advanced Project Setup 窗格中,选择 Beginner→Content Based Router - Blueprint DSL 模板。
- 点 Finish。
- 如果系统提示您打开关联的 Fuse 集成透视图,请单击 Yes。
等待 CodeReady Studio 下载所需的工件,并在后台构建项目。
重要如果您在 CodeReady Studio 中首次构建 Fuse 项目时,向导将 需要几分钟才能完成生成项目,因为它会从远程 Maven 存储库下载依赖项。在项目在后台构建时,请勿尝试中断向导或关闭 CodeReady Studio。
将项目部署到服务器,如下所示:
在 Servers 视图(Fuse Integration 视角的左下角)中,如果服务器尚未启动,请选择
fuse-karaf-7.8.0.fuse-780038-redhat-00001 Runtime Server
服务器,然后单击绿色箭头来启动它。注意如果您看到对话框,警告:无法建立主机"localhost"的真实性。 单击 Yes 以连接到服务器并访问 Karaf 控制台。
等待 Console 视图中看到类似如下的消息:
Karaf started in 1s. Bundle stats: 12 active, 12 total
- 服务器启动后,切回到 Servers 视图,右键单击服务器,然后从上下文菜单中选择 Add and Remove。
-
在 Add and Remove 对话框中,选择
fuse-camel-cbr
项目,然后点击 Add > 按钮。 - 点 Finish。
您可以通过进入 Terminal 视图并输入
bundle:list | tail
来检查项目的 OSGi 捆绑包是否已启动。您应该看到类似如下的输出:... 228 │ Active │ 80 │ 1.0.0.201505202023 │ org.osgi:org.osgi.service.j 232 │ Active │ 80 │ 1.0.0.SNAPSHOT │ Fuse CBR Quickstart
注意Camel 路由启动后,它将在您的 Fuse 安装(不在
fuse-camel-cbr
项目中)创建一个目录work/cbr/input
。
-
将项目的
src/main/data
目录中找到的文件复制到FUSE_INSTALL/work/cbr/input
目录中。您可以在系统文件浏览器中(在 Eclipse 之外)执行此操作。 稍等片刻,然后在
FUSE_INSTALL/work/cbr/output
目录中查看由国家组织的相同文件:-
work/cbr/output/others
中的order1.xml
-
work/cbr/output/uk
中的order2.xml
和order4.xml
-
order3.xml
和order5.xml
inwork/cbr/output/us
-
取消部署项目,如下所示:
-
在 Servers 视图中,选择
Red Hat Fuse 7+ Runtime Server
服务器。 - 右键单击服务器,然后从上下文菜单中选择 Add and Remove。
-
在 Add and Remove 对话框中,选择
fuse-camel-cbr
项目,再单击 < ; Remove 按钮。 - 点 Finish。
-
在 Servers 视图中,选择