SOA-Suite

发布时间 2023-07-18 17:39:29作者: 水木夏

简介

安装

下载

安装

  • 操作系统:Windows 10

  • 解压下载的两个压缩包,至同一目录下
    image-20210328211845721

  • 系统装有jdk 1.8_211(适配SOA 12.2.1.4,试装了1.8.251后启动Jdeveloper时,报错缺失dll文件)

  • 系统管理员身份启动cmd,运行命令:

    %JAVA_HOME%\bin\java.exe -jar fmw_12.2.1.4.0_soa_quickstart.jar

  • 一路默认至安装概要,然后点击安装即可:
    image-20210328213734290

配置Weblogic

这里采用内嵌的方式,即在Jdeveloper内启动Weblogic。
Jdeveloper关闭时,Weblogic也会关闭。

  • 启动Jdeveloper
    路径:上节安装概要中的主目录\jdeveloper\jdeveloper.exe
    设置兼容性,管理员身份运行(防止高分辨率下,SOA项目界面显示过小的问题)
    image-20210328214214121

  • 点击菜单Run -> Start Server Instance

    第一次运行时,会提示输入Weblogic的地址、端口、管理员密码,需要较长时间的配置
    image-20210328221942539

使用

发布SOAP Service

启动Jdeveloper

创建项目

  • 创建项目
    image-20210328214532538

  • 选择SOA
    image-20210328214601753

  • 指定应用名

  • 指定项目名

  • 选择空,然后完成
    image-20210328214805047

创建流程

  • 添加流程
    指定流程名称、模板类型

    image-20210328215037913

  • 创建数据库
    从右边拖个数据库组件过来。
    没有数据库,则新建一个,指定连接信息。
    这里的JNDI名字,后续会在Weblogic中创建

    image-20210328215420820

  • 指定从表中查询数据
    image-20210328215628792

  • 选择需要查询的表,然后点击OK
    image-20210328215727070

  • 选择主键,下一步
    image-20210328215910221

  • 单表,无关系需创建,下一步

  • 选择需查询出的列,下一步
    image-20210328220000555

  • 创建查询参数及关系
    先在"1"处创建查询参数。
    再在"2"处定义查询条件,确定后,会在SQL框中多出一个查询条件。
    然后一路默认至最后
    image-20210328220341813

  • 连接流程与数据库
    image-20210328220744237

  • 变更输入参数,使其与数据库一致
    image-20210328220859736

  • 变更输入为数据库组件中的查询参数
    image-20210328220955760

  • 同理变更输出为数据库组件的输出集合

  • 编辑流程
    image-20210328221106609

  • 添加两个assign activity与一个invoke activity
    并将invoke于数据库连接上
    image-20210328221324602

  • 右键编辑Assign1
    image-20210328221413540

  • 右键编辑Assign2
    image-20210328221442337

创建数据源

  • 登录Weblogic

  • 先配置Weblogic数据源,否则会发布失败:

    <oracle.integration.platform.blocks.adapter.fw.log.LogManagerImpl> <JCABinding=> [SOAPWSDemo.DL_DEV/1.0] JNDI lookup of 'eis/DB/DL_DEV' failed due to: Unable to resolve 'eis.DB.DL_DEV'. Resolved 'eis.DB'>
    <oracle.integration.platform.blocks.adapter.fw.log.LogManagerImpl> <JCABinding=> [SOAPWSDemo.DL_DEV/1.0] Cannot determine resource adapter class name. ResourceAdapterClassName attribute is probably not defined. Make sure is defined.>
    <oracle.integration.platform.blocks.adapter.fw.validation.WSDLDeploymentValidation> <JCA Deployment Validation failed for Adapters/DL_DEV_db.jca:
    Problem 1: [ ]:
    JCA 绑定组件无法定位 元素中指定的资源适配器: DOMAIN location='eis/DB/DL_DEV'
    出现这种情况的最可能的原因是

    1. 尚未将资源适配器 RAR 文件成功部署到 WebLogic J2EE 应用程序服务器, 或者
    2. 未将 WebLogic JCA 部署描述符中的 JNDI 设置设为 eis/DB/DL_DEV。在第二种情况下, 可能需要向部署描述符中添加一个新的 'connector-factory' 条目 (连接)。
      请更正此错误, 然后重新启动 WebLogic 应用程序服务器
  • 登录weblogic,选择创建数据源
    image-20210328222954151

  • 定义数据源及JNDI名称
    此处的名称与SOA项目中的JNDI名称不一样(还在后面定义)
    image-20210328223307752

  • 一路默认,完成数据库信息配置

  • 在部署中,找到DbAdapter,切到配置->出站连接池页签,点击创建
    image-20210328223731451

  • 默认至最后一步时,指定JNDI名称, 此处与SOA项目中的数据库组件一致
    image-20210328223811294

  • 返回配置页签,点击新的连接池
    image-20210328224023309

  • 在下示的属性位置,单击,然后输入创建的第一个数据源JNDI名称,然后回车,保存,使两者绑定
    image-20210328224238602

  • 返回部署页面,选中DbAdapter,点击更新
    image-20210328224612701

  • 默认选择第二个。
    然后下一步,完成,使上面创建的出站连接池生效
    image-20210328224650402

  • 设置第一步创建的数据源DL_DEV(不然发布后调用时会报错):

    JDBC driver does not support XA, hence cannot be a participant in two-phase commit. To force this participation, set the GlobalTransactionsProtocol attribute to LoggingLastResource (recommended) or EmulateTwoPhaseCommit for the Data Source = DL_DEV

发布

  • 右键项目发布
    这里会创建一个发布的配置文件
    image-20210328222531677

  • 选择发布至服务器
    image-20210328222625426

  • 下一步至服务选择,然后完成
    image-20210328222732918

  • 再次选择发布
    image-20210328222821263

  • 登录em平台(http://:/em)

  • 选择左侧导航中的SOA
    image-20210328224902334

  • 点击刚部署的服务
    image-20210328225006088

  • 点击测试
    image-20210328225035207

  • 列出了服务地址,可以用第三方软件(SOAP UI等)测试,也可在页面下方输入查询值进行测试
    image-20210328225145636