olona Skrevet 10. oktober 2007 Del Skrevet 10. oktober 2007 (endret) Hei. Jeg har behov for å starte en oracle stored procedure fra java. For øyeblikket går det greit å starte den, ved å bruke dette: String sql = "begin start_transfer(); end;"; HibernateUtil.getSessionFactory().openStatelessSession().connection().prepareCall(sql).exe te(); Denne snutten kalles fra en jsp side, til en kontroller og deretter til en manager. Jeg bruker også hibernate her, men jeg antar det ikke ville vært stort forskjellig fra vanlig JDBC. Problemet mitt er at den proceduren kan ta forferdelig lang tid og jeg vil gjerne gi kontrollen tilbake til brukeren. Noen som vet hvordan jeg kan gjøre dette? Kanskje en seperate tråd? Noen andre ting ? Endret 10. oktober 2007 av olona Lenke til kommentar
___ Skrevet 10. oktober 2007 Del Skrevet 10. oktober 2007 Hei! Det er mange måter å løse dette på. Men siden det er snakk om Oracle, så kan det være en ide å se litt på DBMS_JOB-pakken som ligger i Oracle. http://www.devx.com/dbzone/10MinuteSolutio...02/1954?pf=true Hilsen Werner Lenke til kommentar
olona Skrevet 11. oktober 2007 Forfatter Del Skrevet 11. oktober 2007 Dette fungerte fint..... new Thread(new Runnable() { public void run() { try { String sql = " begin " + " startProc(); commit; end;"; .....connection().prepareCall(sql).execute(); } catch (Exception e) { logger.error("General error:" + e); } } }).start(); Lenke til kommentar
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå