本主题仅适用于 IBM Business Automation Workflow Advanced 配置。

开发服务组件

开发服务组件以便为服务器中的多个应用程序提供可复用的逻辑。

准备工作

此任务假定您已开发并标识对多个模块有用的处理。

关于本任务

多个模块可以使用同一服务组件。 导出服务组件使此服务组件可供其他模块使用,这些模块通过接口引用此服务组件。 此任务描述如何构建服务组件以供其他模块使用。
注: 单个服务组件可以包含多个接口。

过程

  1. 定义数据对象以便在调用者与服务组件之间移动数据。

    数据对象及其类型是调用者与服务组件之间的接口的组成部分。

  2. 定义调用者将用于引用服务组件的接口。

    此接口定义对服务组件进行命名并列示此服务组件中可用的所有方法。

  3. 生成实现调用服务的类。
  4. 开发所生成的类的实现。
  5. 将组件接口和实现保存在扩展名为 .java 的文件中。
  6. 将服务模块和必需的资源打包在 JAR 文件中。

    请参阅本文档中的 将模块部署到生产服务器 ,以获取步骤 68的描述。

  7. 运行 serviceDeploy 命令以创建包含应用程序的可安装 EAR 文件。
  8. 将此应用程序安装在服务器节点上。
  9. 可选: 如果在另一个服务模块中调用服务组件,请配置调用者与相应服务组件之间的连线。

    本文档的管理部分描述了如何配置连线。

开发组件的示例

此示例说明用于实现单一方法 CustomerInfo 的同步服务组件。 第一部分定义用于实现方法 getCustomerInfo 的服务组件的接口。
public interface CustomerInfo {
	public Customer getCustomerInfo(String customerID);
}
以下代码块实现此服务组件。
public class CustomerInfoImpl implements CustomerInfo {
	public Customer getCustomerInfo(String customerID) {
		Customer cust = new Customer();

		cust.setCustNo(customerID);
		cust.setFirstName("Victor");
		cust.setLastName("Hugo");
		cust.setSymbol("IBM");
		cust.setNumShares(100);
		cust.setPostalCode(10589);
		cust.setErrorMsg("");

		return cust;
	}
}
以下部分是与 StockQuote 相关联的类的实现。
public class StockQuoteImpl implements StockQuote {
	
	public float getQuote(String symbol) {


	    return 100.0f;
	}
}

下一步

调用此服务。