Feature #1216
fermé
Supprimer l'EJB et modifier la persistence
Ajouté par Nicolas Eysseric il y a environ 14 ans.
Mis à jour il y a plus de 13 ans.
Catégorie:
Personnalisation
Description
Actuellement, l'EJB Personnalisation est un EJB Session Statefull sans véritable raison.
L'objectif est de le supprimer pour le remplacer par un mécanisme plus simple.
De plus, les données de personnalisation sont stockées (dans une table unique) en colonne (un paramètre par colonne).
Ce modèle n'est pas très évolutif. L'ajout d'un nouveau paramètre nécessite obligatoirement l'ajout d'une nouvelle colonne.
Un modèle "par ligne" serait plus adapté à de telles données.
Cela permettra également de supprimer les erreurs de ce type :
28/10/10-08:27:38,405 - ERROR : EJBException in method: public abstract boolean com.stratelia.webactiv.personalization.control.ejb.PersonalizationBmBusinessSkeleton.getDragAndDropStatus() throws java.rmi.RemoteException:
javax.ejb.EJBException: Application Error: no concurrent calls on stateful beans
at org.jboss.ejb.plugins.StatefulSessionInstanceInterceptor.invoke(StatefulSessionInstanceInterceptor.java:289)
at org.jboss.ejb.plugins.CallValidationInterceptor.invoke(CallValidationInterceptor.java:48)
at org.jboss.ejb.plugins.AbstractTxInterceptor.invokeNext(AbstractTxInterceptor.java:106)
at org.jboss.ejb.plugins.TxInterceptorCMT.runWithTransactions(TxInterceptorCMT.java:300)
at org.jboss.ejb.plugins.TxInterceptorCMT.invoke(TxInterceptorCMT.java:166)
at org.jboss.ejb.plugins.LogInterceptor.invoke(LogInterceptor.java:192)
at org.jboss.ejb.plugins.ProxyFactoryFinderInterceptor.invoke(ProxyFactoryFinderInterceptor.java:122)
at org.jboss.ejb.SessionContainer.internalInvoke(SessionContainer.java:624)
at org.jboss.ejb.Container.invoke(Container.java:873)
at sun.reflect.GeneratedMethodAccessor96.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:141)
at org.jboss.mx.server.Invocation.dispatch(Invocation.java:80)
at org.jboss.mx.server.Invocation.invoke(Invocation.java:72)
at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:245)
at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:644)
at org.jboss.invocation.local.LocalInvoker$MBeanServerAction.invoke(LocalInvoker.java:155)
at org.jboss.invocation.local.LocalInvoker.invoke(LocalInvoker.java:104)
at org.jboss.invocation.InvokerInterceptor.invokeLocal(InvokerInterceptor.java:179)
at org.jboss.invocation.InvokerInterceptor.invoke(InvokerInterceptor.java:165)
at org.jboss.proxy.TransactionInterceptor.invoke(TransactionInterceptor.java:46)
at org.jboss.proxy.SecurityInterceptor.invoke(SecurityInterceptor.java:55)
at org.jboss.proxy.ejb.StatefulSessionInterceptor.invoke(StatefulSessionInterceptor.java:106)
at org.jboss.proxy.ClientContainer.invoke(ClientContainer.java:86)
at $Proxy189.getDragAndDropStatus(Unknown Source)
at com.stratelia.webactiv.kmelia.control.KmeliaSessionController.isDragAndDropEnableByUser(KmeliaSessionController.java:2951)
at com.stratelia.webactiv.kmelia.control.KmeliaSessionController.init(KmeliaSessionController.java:265)
- Version cible mis à Version 5.6
- Statut changé de Assigned à In progress...
- % réalisé changé de 0 à 50
- Temps estimé mis à 24.00 h
- Statut changé de In progress... à Resolved
- % réalisé changé de 50 à 100
Passage par Hades et JPA2 pour faciliter l'écriture de la DAO.
On conserve l'enregistrement par ligne, plus performant en SGDB.
- Statut changé de Resolved à Closed
Formats disponibles : Atom
PDF