Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1334 connectés 

  FORUM HardWare.fr
  Programmation
  Java

  [EJB / Java] pb avec des attributs multivalués

 



 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[EJB / Java] pb avec des attributs multivalués

n°1006840
Jubijub
Parce que je le VD bien
Posté le 09-03-2005 à 14:26:48  profilanswer
 

J'ai un pb qui est le suivant :  
 
J'ai des agents, qui ont des roles (relation 1..* 1..* et chaque coté)
 
logiquement, je pensais mettre une ArrayList en attribut de l'agent, pour stocker les id des roles qu'il possède.
 
Seulement dans cloudscape le mapping crée un type bit varying 1000, et rien qu'en mettant 2 Integer dans une arrayList, on dépasse 1000 caractères...donc je me mange une truncateException ...
 
le pb vient de la base qui gère mal, ou c une limitation des EJB ?
 
au pire je peux faire un bean intermédiaire, qui rappatrie les ID agent et ID roles (comme un MLD quoi) ...


---------------
Jubi Photos : Flickr - 500px
mood
Publicité
Posté le 09-03-2005 à 14:26:48  profilanswer
 

n°1006947
replix
Posté le 09-03-2005 à 15:37:25  profilanswer
 

Jubijub a écrit :


logiquement, je pensais mettre une ArrayList en attribut de l'agent, pour stocker les id des roles qu'il possède.
 
au pire je peux faire un bean intermédiaire, qui rappatrie les ID agent et ID roles (comme un MLD quoi) ...


 
C'est pas logique d'un point de vue modélisation EJB/relationnel. Tu es sensé utiliser une CMR (container managemed relationship) et une table intermédiaire dans ta base.

n°1007058
Jubijub
Parce que je le VD bien
Posté le 09-03-2005 à 17:14:31  profilanswer
 

ben je sais pas si t'a regardé, mais mettre une relation fait exactement la meme chose...et ca ne crée par la table intermédiaire...(je bosse en top down)


Message édité par Jubijub le 09-03-2005 à 17:14:50

---------------
Jubi Photos : Flickr - 500px
n°1007136
replix
Posté le 09-03-2005 à 18:30:25  profilanswer
 

Si un agent a n roles et un role est attribué à n agents, tu n'as pas d'autres choix pour un modèle relationnel normé que d'utiliser une table intermédiaire.  
 
Qu'entends tu par top down?

n°1007199
Jubijub
Parce que je le VD bien
Posté le 09-03-2005 à 19:28:04  profilanswer
 

ben dans websphere, t'a 3 stratégies de mapping RDB : top down, bottom up, et meet in the middle..
 
la premiere prend les EJB, et crée une table par EJB, ni plus ni moins...la seconde prend les tables d'une base existante, et génère les EJB, et la dernière est un mix des 2 ...
 
le pb aussi c que j'utilise cloudscape, et que c pas pratique du tout


---------------
Jubi Photos : Flickr - 500px
n°1007240
replix
Posté le 09-03-2005 à 20:01:13  profilanswer
 

Je pense alors que la génération automatique proposée par websphere ne respecte pas les règles du modèle relationnel.  
 
Généralement je préfère faire le modèle de la base et le modèle EJB à la main.

n°1007417
glod 2
Votre trajet, notre projet.
Posté le 09-03-2005 à 22:05:35  profilanswer
 

Oui, le top down c'est bancal à 99%, à moins de savoir très exactement où on va et comment on va y aller. Et là ton problème montre bien que t'es pas dans le 1% et que tu devrais donc faire du bottom-up :o

n°1007495
Jubijub
Parce que je le VD bien
Posté le 09-03-2005 à 22:55:40  profilanswer
 

je suis d'accord, mais :  
- c un projet final dont le but aie qu'on aie trop de chose à faire pour le temps imparti (y'a un dossier de conception joint ou on doit filer un doc de vision qui explique ce qu'on a arbitré, et pkoi)
- g essayé avec d'autres bases, mais c assez complexe à configurer, et g pas le temps de m'y plonger (g essayé avec SQL server, g paumé une soirée là dessus)
==> j'utilise cloudscape, et c une saloperie à administrer
 
donc j'ai des contraintes que je maitrise pas...si j'avais un poil plus de temps, j'aurai regardé pour mettre DB2, ou un truc du style, faire un joli MLD, et me faire un bottom up dans les règles...
 
mais je préfère avoir un modèle un peu foireux et plus de fonctionnalités à montrer à la soutenance...parce que se greffe sur ce qu'on fait toute une partie d'ECD pour de la détection d'erreurs, et faut que l'appli tourne pour que ce soit possible...


---------------
Jubi Photos : Flickr - 500px
n°1007549
replix
Posté le 09-03-2005 à 23:21:55  profilanswer
 

Quelles sont tes contraintes ? Parce que si tu souhaites de la productivité je pense que tu es mal parti avec Websphere, des CMP et Cloudscape.  
 
MySql est fourni avec des outils très pratiques pour l'administration.

n°1007561
Jubijub
Parce que je le VD bien
Posté le 09-03-2005 à 23:27:36  profilanswer
 

en gros :  
on développe une appli qui permet de gérer une usine de traitement de déchets nucléaires...avec tt la sécu que ca implique, une système de gestion des autorisations par role, et le système d'ordre est cloisonné par type de role, et la communication se fait via workflow
(PS : j'emmerde le prochain qui me sort que son buzzword-o-meter a cramé, c le sujet et les technos imposées, je choisis pas)
 
on a toute latitude...le pb c qu'on est surtout "expérimentés" sur du dev d'EJB sur websphere coté métier, avec une présentation web...
 
mais on a 2 semaines à 4, dont seulement 2 codeurs...les 2 autres font de l'ECD, et on se partage la conception, et le suivi du projet...donc infaisable quoi...donc on rush, on part sur ce qu'on connait, parce que pas le temps de partir sur autre chose
 
maintenant comme je l'ai dit, si j'avais le temps, et pas de contraintes, je pense que je me ferais ca sous eclipse, avec les plugins qui vont bien, et je testerai Hibernate, sur une base que je maitrise bien (probablement Firebird ou SQL server)


Message édité par Jubijub le 09-03-2005 à 23:28:48

---------------
Jubi Photos : Flickr - 500px
mood
Publicité
Posté le 09-03-2005 à 23:27:36  profilanswer
 

n°1007661
nraynaud
lol
Posté le 10-03-2005 à 08:14:58  profilanswer
 

Jubijub a écrit :

je suis d'accord, mais :  
- c un projet final dont le but aie qu'on aie trop de chose à faire pour le temps imparti (y'a un dossier de conception joint ou on doit filer un doc de vision qui explique ce qu'on a arbitré, et pkoi)


heu ... un document de vision *après* le projet ?
genre un dossier de fin de projet quoi ...


---------------
trainoo.com, c'est fini
n°1007719
replix
Posté le 10-03-2005 à 09:20:05  profilanswer
 

Jubijub a écrit :


on a toute latitude...le pb c qu'on est surtout "expérimentés" sur du dev d'EJB sur websphere coté métier, avec une présentation web...


 
T'es dans la m****!  :)  
 
Le problème est qu'avec vos délais vous n'avez pas beaucoup de temps à perdre sur des problèmes techniques de framework. Vous devez donc les limiter au maximum.  
 
Je pense que tu as intérêt à virer le risque CMP/Cloudscape qui a des chances de vous bouffer énormément de temps. Code la partie persistance de la manière la plus simple qui soit. Tu peux jetter un coup d'oeil à iBatis et notamment à cet article sur son utilisation dans websphere : http://www-106.ibm.com/developerwo [...] 0502cline/
 
Bon courage,
 
Au fait, ça fait longtemps que je suis sorti de l'école, c'est quoi l'ECD?

n°1008090
the real m​oins moins
Posté le 10-03-2005 à 12:27:38  profilanswer
 

Jubijub a écrit :

ben dans websphere, t'a 3 stratégies de mapping RDB : top down, bottom up, et meet in the middle..


y'a pas de rapport avec websphere [:zozo]
et c'est pas des strategies de mapping, juste des strategies de generation d'ejb [:zozo]


---------------
Hey toi, tu veux acheter des minifigurines Lego, non ?
n°1012426
Jubijub
Parce que je le VD bien
Posté le 14-03-2005 à 18:39:40  profilanswer
 

nraynaud a écrit :

heu ... un document de vision *après* le projet ?
genre un dossier de fin de projet quoi ...


 
non on le rend en meme temps, mais théoriquement on est cencé l'avoir fait avant...un document de vision quoi...
 

replix a écrit :

T'es dans la m****!  :)  
 
Le problème est qu'avec vos délais vous n'avez pas beaucoup de temps à perdre sur des problèmes techniques de framework. Vous devez donc les limiter au maximum.  
 
Je pense que tu as intérêt à virer le risque CMP/Cloudscape qui a des chances de vous bouffer énormément de temps. Code la partie persistance de la manière la plus simple qui soit. Tu peux jetter un coup d'oeil à iBatis et notamment à cet article sur son utilisation dans websphere : http://www-106.ibm.com/developerwo [...] 0502cline/
 
Bon courage,
 
Au fait, ça fait longtemps que je suis sorti de l'école, c'est quoi l'ECD?


Extraction de Connaissances à partir de Données...l'idée c qu'avec l'appli, y'a une base...que dans la base, t'a des données de prod...l'idée du sujet, c que si qqn est malveillant (et cherche à piquer de la came), ou est mauvais (rate un controle, etc...), un système classique te permet juste de trouver l'erreur (stock réel != stock théorique) ...en mettant en place de l'ECD, tu peux etre plus fin : tu trouves l'erreur, trouve son contexte, et détermine des patterns d'erreur...ce qui te permet à la fin de pouvoir dire que si tu donnes un boulot à Mr Durand, t'a 99.7% de chances qu'il le fasse bien, alors que si tu le donnes à Mr Dupond, t'a que 85.6% ...je te laisse poursuivre le raisonnement en terme de gestion
 

the real moins moins a écrit :

y'a pas de rapport avec websphere [:zozo]
et c'est pas des strategies de mapping, juste des strategies de generation d'ejb [:zozo]


Ben dsl, c ce que g lu dans la doc EJB de websphere...et je te signale que ca peut etre une stratégie de mapping, dans la mesure où ca marche très bien si tu crées les EJB à priori, il te génère les tables qui correspondent...ca marche dans les 2 sens


---------------
Jubi Photos : Flickr - 500px
n°1012533
replix
Posté le 14-03-2005 à 20:37:03  profilanswer
 

Jubijub a écrit :


Extraction de Connaissances à partir de Données...l'idée c qu'avec l'appli, y'a une base...que dans la base, t'a des données de prod...


 
J'imagine que dans ton cas cela se traduit par l'insertion de pas mal de données de contexte autour de tes données métier. J'ai peur que tu aies du mal avec des CMP mais je serai curieux de connaître ton avis à la fin si tu as persisté  :ange: dans ce choix.

n°1012711
Jubijub
Parce que je le VD bien
Posté le 14-03-2005 à 23:19:08  profilanswer
 

non, parce que le contexte dont on a besoin peut etre tiré des données métier :  
 
on a une usine qui traite des lots...chaque lot se balade (ordre de transfert, validation du transfert effectué), subit éventuellement un traitement, etc...
 
donc on sait à chaque instant qui a tripoté un lot donné, où, quand, sur l'ordre de qui...donc on peut traver l'erreur, vu que tt est historisé, et tout est cloisonné, et controlé
 
sinon oui g persisté dans les CMP ...mais c aussi que je maitrise rien d'autre pour le moment, et que j'avais clairement pas le temps d'apprendre...mais je suis vacciné de websphere pour les EJB à vie


---------------
Jubi Photos : Flickr - 500px
n°1012723
glod 2
Votre trajet, notre projet.
Posté le 14-03-2005 à 23:22:35  profilanswer
 

Vaccines toi des EJB tout court si tu veux mon avis :o

n°1012736
Jubijub
Parce que je le VD bien
Posté le 14-03-2005 à 23:27:31  profilanswer
 

y'a des aspects intéressants, comme le fait que ca gère le multithreading pour toi...et la synchro qui va bien...c qd meme mieux qu'une servlet non ?


---------------
Jubi Photos : Flickr - 500px
n°1012774
nraynaud
lol
Posté le 14-03-2005 à 23:47:24  profilanswer
 

Jubijub a écrit :

y'a des aspects intéressants, comme le fait que ca gère le multithreading pour toi...et la synchro qui va bien...c qd meme mieux qu'une servlet non ?


en même temps  
1) une servlet c'est dans le tier de présentation/contrôle
2) le threading des servlet est géré par le serveur web.


---------------
trainoo.com, c'est fini
n°1012848
Jubijub
Parce que je le VD bien
Posté le 15-03-2005 à 00:38:45  profilanswer
 

je sais bien...
 
donc vous foutez quoi dans le tiers métier si c pas des EJB ? (dans la mesure où on se restreint à java hein)... y m'avait semblé que ct conçu pour...


---------------
Jubi Photos : Flickr - 500px
n°1012853
nraynaud
lol
Posté le 15-03-2005 à 01:03:41  profilanswer
 

c'est fait pour, mais on peut imaginer des métiers en pojo, ou dans d'autres trucs (javabeans par ex) ...


---------------
trainoo.com, c'est fini
n°1012892
replix
Posté le 15-03-2005 à 08:42:31  profilanswer
 

Jubijub a écrit :

je sais bien...
 
donc vous foutez quoi dans le tiers métier si c pas des EJB ? (dans la mesure où on se restreint à java hein)... y m'avait semblé que ct conçu pour...


 
Personnellement j'utilise spring. Je code le business entre des classes services équivalentes à des EJB stateless et des classes métiers que je persiste via hibernate. Les transactions sont démarquées par déclaration, tomcat me fournit les threads, la synchro des données est répartie entre la base et hibernate.
 
C'est efficace et très productif.
 
Tu peux suivre le lien ci-dessous pour tester en direct.


---------------
Gestion de bug en mode ASP/java : http://eap.bug-sweeper.fr
n°1012987
Jubijub
Parce que je le VD bien
Posté le 15-03-2005 à 10:24:19  profilanswer
 

je connaissais pas Spring...c très utilisé ? (j'arrive pas à me rendre compte de ce qui sert vraiment dans tt la nébuleuse J2EE au sens larget, entre tt les API sun, + ce qu'on trouve ailleurs dans Jakarta ou autre)


---------------
Jubi Photos : Flickr - 500px
n°1012993
replix
Posté le 15-03-2005 à 10:26:58  profilanswer
 

Disons qu'il y a des chances qu'EJB 3 ressemble à spring + hibernate (ou jboss4 + hibernate). Autant s'y mettre tout de suite et profiter des possibilités offertes par cette nouvelle proposition d'architecture.


---------------
Gestion de bug en mode ASP/java : http://eap.bug-sweeper.fr
mood
Publicité
Posté le   profilanswer
 


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  Java

  [EJB / Java] pb avec des attributs multivalués

 

Sujets relatifs
heritage mutliple en java[Java] Probleme d'applet avec un package sous eclipse
[java] recherche d'un élément dans un tableau.[BEA/Weblogic/JAVA servlet] problemgetServletConfig().getServletContex
[java][Resolu] Probleme lecture de fichier[Java] Console dans une JInternalFrame
[Java] Marche en 1.5, marche pas en 1.4 [résolu][Algo][Java] Optimiser la répartition d'un algo
Améliorer mon script java pour camera ip[debutant]applet java+echiquier
Plus de sujets relatifs à : [EJB / Java] pb avec des attributs multivalués


Copyright © 1997-2018 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR