Expondo ConnectionSpec para Entrada e Expondo InteractionSpec e Propriedades para Entrada e Saída

É possível expor as propriedades de InteractionSpec e ConnectionSpec para entrada como dados para que o aplicativo Java™ possa configurar os valores da propriedade. Por exemplo, é possível expor a propriedade de tempo limite de execução de ECIInteractionSpec para fornecer um valor de tempo limite baseado em entrada do usuário.

Antes de Iniciar

Normalmente você expõe apenas as propriedades que o aplicativo Java precisa como entrada.

Procedimento

  1. Ative o assistente Incluindo ou Editando um Método Java.
  2. Clique em Incluir... ou Editar... para incluir um novo método ou editar um existente.
  3. Navegue por meio do assistente até chegar à página de resumo.
  4. Na página de resumo para o assistente Incluir Método Java, selecione Mostrar Avançado.
  5. Expanda o campo Especificações de Conexão.

    Expondo especificações de conexão

  6. Selecione as propriedades que deseja expor.
  7. É possível alterar o valor de um nome de variável clicando no valor e digitando um novo valor:
  8. Usando os botões Para Cima botão Para Cima e Para Baixo botão Para Baixo para reordenar suas propriedades.
  9. Clique em Concluir.

Exemplo

Exemplo

Aqui está o método getCustomer() do tutorial tader99 modificado para usar um número inteiro, execTimeout, como outro argumento e configurá-lo na propriedade interactionSpec. As mudanças que foram feitas estão marcadas em negrito. O código gerado alterado está em itálico:

/**
	 * @j2c.interactionSpec class="com.ibm.connector2.cics.ECIInteractionSpec"
	 * @j2c.interactionSpec-property name="functionName" value="TADERC99"
	 * @j2c.interactionSpec-property
	 *   name="executeTimeout"
	 *   argumentBinding="execTimeout"
	 * 
	 * @generated
	 */
	public sample.cics.data.CustomerInfo getCustomer(
			sample.cics.data.CustomerInfo arg,
			int execTimeout) 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");
					((com.ibm.connector2.cics.ECIInteractionSpec)
is).setExecuteTimeout(execTimeout);
				}
				sample.cics.data.CustomerInfo output = new sample.cics.data.CustomerInfo();
				invoke(cs, is, arg, output);
				return output;
			}

Para tornar uma propriedade ConnectionSpec exposta para entrada, use a tag doclet @j2c.connectionSpec-property.


Feedback