Avatar billede chrede Nybegynder
15. december 2003 - 21:10 Der er 13 kommentarer og
1 løsning

Transaktioner: EJB vs. DB

Hej derude !!!

Jeg kunne godt tænke mig at vide følgende:
Hvis jeg laver en Entity Bean (med bean managed persistens) og styrer transaktioner på metoderne (via sun one studio 4 update 1, som jeg udvikler i), slipper jeg så for at lave transaktioner i databasen? og hvad hvis jeg forestiller mig den omvendte situationen?
Eller skal man varetage transaktioner begge steder?

min app er opbygget således:
browser --> JSP --> Java Bean --> Entity Bean --> mysql 4
Avatar billede arne_v Ekspert
15. december 2003 - 21:15 #1
Din BMP entity bean vil bruge CMT (BMT er ikke supporteret for entity beans).

D.v.s at den vil kontrollere din transaktion og du bør slet ikke få lov til
at lave dine egne database transaktioner.

Din EJB container bruger databasens transaktion muligheder (EJB er 2PC
som bruger XA til databaserne).

Husk iøvrigt at for at transaktioner virker i MySQL så kræver det
InnoDB tabeller.
Avatar billede chrede Nybegynder
15. december 2003 - 21:23 #2
okay, det overrasker mig lidt, for det har forfatteren af min lærebog undladt og skrive noget om. Jeg skal lige tilføje at jeg er nybegynder inden for J2EE.
Men fungere MySql med det der XA du snakker om?
Avatar billede arne_v Ekspert
15. december 2003 - 21:31 #3
Helt ærligt er det heller ikke noget jeg har læst præcist beskrevet.
Men man kan udlede at det må være sådan udfra at entity bean altid er CMT.

Med InnoDB tabeller burde det virke.
Avatar billede chrede Nybegynder
15. december 2003 - 21:40 #4
for lige og vende tilbage til det XA, skal der laves noget om i JNDI registrering, eller er det automatisk understøttet, nu da jeg bruger innodb tabeller?
Avatar billede arne_v Ekspert
15. december 2003 - 21:44 #5
Der skal ike angives noget i din ejb-jar.xml eller lignende.

Muligvis skal der angives noget i definitionen af din data source.

Hvilken app-server bruger du ?
Avatar billede chrede Nybegynder
15. december 2003 - 21:47 #6
java reference implementation 1.3.1 der er i forbindelse med et skoleprojekt, så vi deployer på den, da sun one er automatisk sat på til den
Avatar billede arne_v Ekspert
15. december 2003 - 21:50 #7
RI 1.3.1 er noget #!%/¤#!&/¤!

JBoss kan klart anbefales fremfor den
Avatar billede arne_v Ekspert
15. december 2003 - 21:51 #8
Men gå igang.

Formod at al den slags virker indtil det modsatte er bevist.

Formålet med J2EE er faktisk at man ikke skal tænke så meget på transaktioner
og 2 Phase Commit og den slags.
Avatar billede chrede Nybegynder
15. december 2003 - 21:53 #9
hehe, det har vi efterhånden også indset... men vi vil ikke skifte nu, da vi er for tæt på afleveringstidspunktet. men tror du der skal konfigures noget på app serveren?
Avatar billede chrede Nybegynder
15. december 2003 - 21:54 #10
ok det lyder godt... smider du et svar.. :-)
Avatar billede arne_v Ekspert
15. december 2003 - 21:56 #11
svar
Avatar billede arne_v Ekspert
15. december 2003 - 22:00 #12
Hvorfor bruger I iøvrigt BMP og ikke CMP ?
Avatar billede chrede Nybegynder
15. december 2003 - 22:01 #13
vi har ingen erfaring med CMP :-(
og det kniber med tid til at nå at sætte sig ind i noget nyt...
Avatar billede arne_v Ekspert
15. december 2003 - 22:06 #14
Fair nok.

CMP var nok det mest interessante, men når deadline nærmer sig så ....
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester