7.6. 部署 CXF JAX-WS 快速入门


本示例演示了在 EAP 上使用 camel-cxf 组件来生成和使用由 Elytron 安全域保护的 JAX-WS Web 服务。Elytron 是自 EAP 7.1 起提供的一个新安全框架。在此快速入门中,Camel 路由从直接端点获取消息有效负载,并将其传递给 CXF producer 端点。producer 使用有效负载将参数传递给 BASIC HTTP 身份验证保护的 CXF JAX-WS Web 服务。

先决条件

  • 确保已安装和配置 Maven。
  • 确保安装和配置了具有 Red Hat Fuse 的应用程序服务器。

流程

  1. 设置 JBOSS_HOME 环境变量,以指向应用服务器安装的根目录。

    • 对于 Linux

      export JBOSS_HOME=...
    • 对于 Windows:

      set JBOSS_HOME=...
  2. 使用 add-user 脚本创建新服务器应用用户和组。

    • 对于 Linux

      ${JBOSS_HOME}/bin/add-user.sh -a -u testUser -p testPassword1+ -g testRole
    • 对于 Windows:

      %JBOSS_HOME%\bin\add-user.bat -a -u testUser -p testPassword1+ -g testRole
  3. 以独立模式启动应用服务器。

    • 对于 Linux

      ${JBOSS_HOME}/bin/standalone.sh -c standalone-full.xml
    • 对于 Windows:

      %JBOSS_HOME%\bin\standalone.bat -c standalone-full.xml

      此项目的 webapp/WEB-INF 目录中的 jboss-web-xmlweb.xml 文件设置应用程序安全性域、安全角色和限制。

  4. 构建和部署项目。

    mvn install -Pdeploy

    此命令还调用 CLI 脚本 configure-basic-security.cli,用于创建安全域和一些其他管理对象。

  5. 浏览至 http://localhost:8080/example-camel-cxf-jaxws-secure/

    此时会显示标题为 Send A Greeting 的页面。此 UI 可让您与已启动的 测试 问候 Web 服务进行交互。服务 WSDL 位于 http://localhost:8080/webservices/greeting-security-basic?wsdl

    单个服务操作名为 greet,它取两个名为 messagename 的 String 参数。调用 Web 服务将返回这些值链接在一起的响应。

测试 Camel Secure CXF JAX-WS 快速入门

  1. 浏览至 http://localhost:8080/example-camel-cxf-jaxws-secure/
  2. Send A Greeting web 表单上,在文本字段中输入 消息和 名称,然后按" 发送 "按钮。

    您输入的信息显示为 UI 上的问候语。CamelCxfWsServlet 处理来自 Web UI 的 POST 请求。它从参数值中检索消息和名称,并构造对象数组。此对象数组是发送到 direct:start 端点的消息有效负载。ProducerTemplate 将消息有效负载发送到 Camel。direct:start 端点将对象数组传递到 cxf:bean web 服务制作者。CamelCxfWsServlet 使用 Web 服务响应来显示 Web UI 上的问候语。您可以在 src/main/webapp/WEB-INF/cxfws-security-camel-context.xml 文件中查看完整的 Camel 路由。

取消部署快速入门

  1. 运行以下命令以取消部署 quickstart。

    mvn clean -Pdeploy
Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

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

让开源更具包容性

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

關於紅帽

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

© 2024 Red Hat, Inc.