将 InteractionSpec 输出属性作为数据来给出

可以给出输出的 InteractionSpec 属性。要给出输出的 InteractionSpec 属性,必须创建新的输出类并修改 J2C Java™ bean 的接口文件和实现文件才能在应用程序中使用它。

通常,您只给出 Java 应用程序需要作为输出的那些属性。
要给出输出的 InteractionSpec 属性,完成下列步骤:
  1. 创建一个包装器类,它将方法的当前返回值作为 bean 属性。
  2. 对该包装器类添加另一种 bean 属性,用来存放您想作为输出给出的 InteractionSpec 属性。
  3. 修改 J2C Java bean 的接口类和实现类,以便将此新的包装器类用作返回类型。
  4. 添加 J2C doclet 标记,以便使要给出的 InteractionSpec 属性与包装器 bean 的属性相关联。

示例

下列代码段给出了 TADERC99 示例中的 functionName InteractionSpec 属性。此处提供了使用 IMS™ 的详细示例。以下是一个包装器类的示例:
package sample.cics.data;

public class WrapperBean {
	protected CustomerInfo customerInfo;
	protected String funcName;

	/**
	 * @return Returns the functionName.
	 */
	public String getFuncName() {
		return funcName;
	}
	/**
	 * @param functionName The functionName to set.
	 */
	public void setFuncName(String functionName) {
		this.funcName = functionName;
	}
	/**
	 * @return Returns the customerInfo.
	 */
	public CustomerInfo getCustomerInfo() {
		return customerInfo;
	}
	/**
	 * @param customerInfo The customerInfo to set.
	 */
	public void setCustomerInfo(CustomerInfo customerInfo) {
		this.customerInfo = customerInfo;
	}
}

以下是经过更新的方法。要进行的更改是用粗体标记的。更改之后的已生成的代码是用斜体标记的。

/**
	 * @j2c.interactionSpec class="com.ibm.connector2.cics.ECIInteractionSpec"
	 * @j2c.interactionSpec-property name="functionName" value="TADERC99"
	 * @j2c.interactionSpec-returnProperty name="functionName" outputBinding="funcName"
	 * @generated
	 */
	public WrapperBean getCustomer(sample.cics.data.CustomerInfo arg) throws javax.resource.ResourceException {
		ConnectionSpec cs = getConnectionSpec();
		InteractionSpec is = interactionSpec;
		if (is == null) {
			is = new com.ibm.connector2.cics.ECIInteractionSpec();
			((com.ibm.connector2.cics.ECIInteractionSpec) is).setFunctionName("TADERC99");
		}
		sample.cics.data.CustomerInfo output = new sample.cics.data.CustomerInfo();
		invoke(cs, is, arg, output);
		WrapperBean bean = new WrapperBean();
		bean.setCustomerInfo(output);
		bean.setFuncName(((com.ibm.connector2.cics.ECIInteractionSpec) is).getFunctionName());
		return bean;	}
使用条款 | 反馈
(C) Copyright IBM Corporation 2000, 2005. All Rights Reserved.