3.2.2.8. Modificação das Propriedades de Persistência para os Aplicativos Hibernate e Seam Migrados que Executam em um Ambiente Clusterizado
Caso o aplicativo gerenciado pelo contêiner JPA seja migrado, as propriedades que influenciam a serialização dos contextos de persistência estendidos são automaticamente passadas para o contêiner.
No entanto, devido às alterações no Hibernate, você pode executar com problemas de serialização, caso execute seu aplicativo Hibernate ou Seam migrado em um ambiente clusterizado. Você pode encontrar mensagens de log de erro semelhantes ao seguinte:
Para solucionar esses erros, você precisa modificar as propriedades no arquivo de configuração. Na maioria das vezes, o arquivo é
javax.ejb.EJBTransactionRolledbackException: JBAS010361: Failed to deserialize
....
Caused by: java.io.InvalidObjectException: could not resolve session factory during session deserialization [uuid=8aa29e74373ce3a301373ce3a44b0000, name=null]
persistence.xml. Para os aplicativos Hibernate API nativos, o arquivo é hibernate.cfg.xml.
Procedimento 3.15. Configuração das propriedades de persistência para executar em um ambiente clusterizado
- Configure o valor
hibernate.session_factory_namecomo um nome único. Este nome deve ser único por todas as implantações do aplicativo na instância do JBoss EAP 6. Por exemplo:<property name="hibernate.session_factory_name" value="jboss-seam-booking.ear_session_factory"/> - Configure o valor
hibernate.ejb.entitymanager_factory_namecomo um nome único. Este nome deve ser único para todas as implantações do aplicativo na instância do JBoss EAP 6. Por exemplo:<property name="hibernate.ejb.entitymanager_factory_name" value="seam-booking.ear_PersistenceUnitName"/>
Para mais informações sobre as configurações das Propriedades da Unidade de Persistência Hibernate JPA, consulte Seção 3.2.2.3, “Propriedades da Unidade de Persistência”.