Exceções de Intenção de Acesso

A seguir estão exceções que ocorrem em resposta ao aplicativo de políticas de intenção de acesso.

com.ibm.ws.ejbpersistence.utilpm.OptimisticUpdateFailedException
Se uma atualização falhar sob simultaneidade otimista porque campos foram alterados em outra transação entre pedidos de carregamento e de armazenamento, uma OptimisticUpdateFailedException será levantada e a consolidação falhará.
com.ibm.ws.ejbpersistence.utilpm.PersistenceManagerException
Se o método que dirige o método ejbLoad() está configurado para ser apenas leitura mas atualizações são então feitas dentro da transação que carregou o estado do bean, uma exceção será lançada durante a chamada do método ejbStore() e será efetuado rollback da transação. Da mesma forma, o método ejbRemove() não pode obter êxito em uma transação que está definida como apenas leitura. Se uma dica de atualização for aplicada a métodos de beans de entidade com persistência gerenciada por bean, o mesmo comportamento e exceção resultarão. O objeto de exceção encaminhado contém a sequência de mensagem PMGR1103E: Atualizar bean beanName somente leitura no nível da instância

Esta exceção também é lançada se o critério de intenção de acesso aplicado não puder ser honrado porque um método de acesso finder, ejbSelect, ou de relacionamento gerenciado por contêiner (CMR) retorna um resultado inerentemente apenas leitura. O objeto de exceção encaminhado contém a sequência de mensagem PMGR1001: Nenhum DataAccessSpec desse tipo - methodName

A ocorrência mais comum desse erro é quando um finder personalizado que contém uma instrução de EJB Query Language (EJB QL) apenas leitura é chamado com uma intenção de acesso aplicada de wsPessimisticUpdate ou wsPessimisticUpdate-Exclusive. Essas políticas exigem o uso de uma cláusula USE AND KEEP UPDATE LOCKS na instrução SQL SELECT a ser executada, mas uma consulta de leitura não pode suportar USE AND KEEP UPDATE LOCKS. Outros exemplos de consultas apenas leitura incluem uniões; o uso das palavras-chave ORDER BY, GROUP BY e DISTINCT.

Para eliminar a exceção, edite a consulta EJB para que ela não retorne um resultado inerentemente apenas leitura ou altere o critério de intenção de acesso que está sendo aplicado.
  • Se for necessário um acesso de atualização, altere a definição de intenção de acesso aplicada para wsPessimisticUpdate-WeakestLockAtLoad ou wsOptimisticUpdate.
  • Se o acesso de atualização não for realmente necessário, utilize wsPessimisticRead ou wsOptimisticRead.
  • Se for necessário o compartilhamento da conexão entre beans de entidade, utilize wsPessimisticUpdate-WeakestLockAtLoad ou wsPessimisticRead.
com.ibm.websphere.ejb.container.CollectionCannotBeFurtherAccessed
Se uma coleção demorada for dirigida depois que ela não está mais no escopo, e além do que já foi armazenado localmente em buffer, uma exceção CollectionCannotBeFurtherAccessed será lançada.
com.ibm.ws.exception.RuntimeWarning
Se um aplicativo estiver configurado incorretamente, uma exceção de aviso de tempo de execução será lançada quando o aplicativo for iniciado; a inicialização é finalizada. É possível validar a configuração de um aplicativo escolhendo a função de verificação. Alguns exemplos de má configuração incluem:
  • Um método configurado com dois critérios de intenção de acesso diferentes.
  • Um método configurado com um critério de intenção de acesso indefinido.

Ícone que indica o tipo de tópico Tópico de Referência



Í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=rejb_axiexc
Nome do arquivo: rejb_axiexc.html