Avatar billede coolioclm Nybegynder
11. september 2002 - 23:21 Der er 3 kommentarer og
1 løsning

Executing commands fra EJB

Jeg kan ikke få min EJB applikation til at køre commands (f.eks. starte et program)
Det er meningen at en Klient skal kalde en metode på bønnen som derefter skal starte et program på serveren.

I alm. java har jeg fået det til at virke med følgende:
Runtime.getRuntime().exec("cmd /c start c:\\test.bat");

Kan det lade sig gøre i J2EE
Avatar billede disky Nybegynder
12. september 2002 - 07:16 #1
Virker det ikke i J2EE ?

J2EE er jo 'bare' en application så egentligt skulle det virke.

Men jeg vil fraråde at begynde at kalde native ting fra et java program, i samme øjeblik smadrer man platformsuafhængigheden.
Avatar billede logical Nybegynder
12. september 2002 - 10:44 #2
Hvorfor bruger du EJB?

EJB er til distribuerede transaktioner og persistens. Kald ud af en EJB container bryder ofte disse service behov.

At kalde et ekstern program kræver som regel en god forklaring. Hvis det er for at lave en launcher applikationer, så er EJB ikke en god teknologi til dette. Prøv JMX istedet.
Avatar billede hansmorten Nybegynder
14. maj 2003 - 20:14 #3
Det kan du ikke gøre generelt idet det vil bryde J2EE specifikationen. Andre muligheder:

Du kan lave en connector som kan optræde som en forbindelse mellem din bønne og dit program.

Afhængig af din app. server kan du f.eks. i WebLogic lave et startup klasse som instanserer et objekt som dine bønner kan kalde. Jeg vil dog anbefale dig connector'en idet den er app. uafhængig.

JMX kan bruges i en del tilfælde men det er stadig meget app. specifik hvad de enkelte app. server tilbyder.

/Lars
Avatar billede arne_v Ekspert
17. maj 2003 - 16:28 #4
Det er faktisk ikke nævnt som i EJB programming restrictions.

Men taget i betragtning af hvad der ellers er nævnt der, så er det nok
en rimelig antagelse, at det ikke er nævnt fordi ingen havde forestillet
sig at nogen ville bruge det.

Det er vel OK ifølge JCA spec at gøre det i en connector. Men det er
ikke hvad connector's er tiltænkt. Jeg vil ikke kalde et operativ-system
for et EIS.

EJB er simpelthen ikke den rigtigt teknologi til noget sådant.

RMI server program eller socket server progarm passede nok bedre
til problem-stillingen.
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