Amostras de ActivitySession

O WebSphere Application Server fornece algumas amostras de ActivitySession.

Amostra MasterMind
Essa amostra é baseada no jogo MasterMind. Ela consiste nos seguintes componentes:
  • Um servlet, configurado com o atributo de tipo de controle ActivitySession definido para Contêiner, que acessa um bean de sessão stateful.
  • Um bean de sessão com preservação de estado, configurado com um critério de ativação do ActivitySession contendo dados de estado transitório.

O servlet inicia um HttpSession no início de cada novo jogo e o finaliza ao final de cada jogo; portanto, um ActivitySession permanece ativo por toda a duração de cada jogo. O critério de ativação ActivitySession impede que o bean torne-se passivo e, assim, os dados transitórios permanecem na memória. Esta amostra demonstra a associação entre HttpSession e ActivationSession no contêiner de Web e a política de ativação no escopo do ActivitySession.

O contêiner do cliente de aplicativo corporativo e um bean de entidade CMP retornados por uma origem de dados one-phase commit
Nessa amostra, o bean de entidade é configurado com as seguintes propriedades:
  • TX_NOT_SUPPORTED
  • Um critério gerenciado pelo contêiner do ActivitySession do REQUIRES
  • Um limite LTC de ActivitySession
  • Um Controle de Resolução LTC de ContainerAtBoundary
O cliente acessa UserActivitySession, inicia um ActivitySession, atualiza duas instâncias do bean e, em seguida, finaliza o ActivitySession. Faz isso duas vezes, utilizando EndModeReset e, em seguida, EndModeCheckpoint. Essa amostra demonstra a seguinte funcionalidade:
  • Acesso do cliente à interface UserActivitySession
  • Várias RMLTs (resource manager local transactions) colocadas no escopo do ActivitySession e automaticamente tomando sua direção de conclusão a partir da ActivitySession

O bean de entidade também contém uma variável transitória incrementada por cada chamada de método (gets e sets para os dados persistentes). Esse valor é verificado antes do final do ActivitySession para mostrar que a mesma instância do bean é utilizada. O cliente verifica se os resultados estão corretos.

Um contêiner do cliente de aplicativo corporativo e dois beans de sessão com tipos diferentes de ActivitySession
Esta amostra consiste em um contêiner do cliente de aplicativo corporativo e nos seguintes beans de sessão:
  • SLB1, um bean de sessão sem preservação de estado configurado com um Tipo de ActivitySession do Bean.
  • SFB2, um bean de sessão com preservação de estado configurado com um Tipo de ActivitySession do Requires, um limite LTC do ActivitySession, Controle de Resolução LTC do APPLICATION e uma Ação Não Resolvida LTC do ROLLBACK.

Os dois beans são configurados com TX_NOTSUPPORTED.

Essa amostra usa as seguintes etapas:
  1. O cliente inicia SLB1
  2. SLB1 acessa a interface UserActivitySession, inicia um ActivitySession, em seguida, chama um método em SFB2
  3. SFB2 acessa a interface UserActivitySession, inicia um ActivitySession, chama um método em SFB2
  4. SFB2 obtém uma conexão (setAutoCommit false), depois, utiliza JDBC para atualizar uma origem de dados de fase única.
  5. Opcionalmente, SLB1 chama um método separado em SFB2 para concluir o trabalho consolidando ou revertendo a RMLT.
  6. SLB1, então, finaliza o ActivitySession com um EndModeCheckpoint.
Essa amostra demonstra a seguinte funcionalidade:
  • A direção de conclusão do ActivitySession é desconectada para a direção das RMLTs, apesar da restrição das RMLTs estar ligada a ActivitySession.
  • O contêiner utilizando a ação não resolvida quando um RMLT não estiver concluído.
  • Um bean ActivitySessions gerenciado por bean utilizando a interface UserActivitySession.

A amostra verifica se os resultados estão corretos e relata os mesmos ao cliente.


Ícone que indica o tipo de tópico Tópico de Conceito



Ícone de registro de data e hora Última atualização: last_date
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=cas_samps
Nome do arquivo: cas_samps.html