May 13, 2017

ADF και EJB timers

Είναι εξαιρετικά εύκολο να χρονοπρογραμματίσουμε την εκτέλεση μιας ADF BC μεθόδου χρησιμοποιώντας EJB timers. Ας ξεκινήσουμε με την υλοποίηση των μεθόδων σε ένα Application Module τις οποίες ορίζουμε στο client interface. Στο παράδειγμα μας δυο μέθοδοι, exportData και uploadData που εκτελούνται σε τακτικά χρονικά διαστήματα.
Σε ένα νέο JDeveloper project (πχ ονόματι tasks) ενσωματώνουμε τις κατάλληλες maven εξαρτήσεις για τo JEE και το ADF όπως:

  <dependency>
      <groupId>com.oracle.adf.library</groupId>
      <artifactId>Java-EE</artifactId>
      <version>12.2.1-1-0</version>
      <type>pom</type>
      <scope>provided</scope>
    </dependency>
    <dependency>
      <groupId>com.oracle.adf.library</groupId>
      <artifactId>EJB</artifactId>
      <version>12.2.1-1-0</version>
      <type>pom</type>
      <scope>provided</scope>
    </dependency>
    <dependency>
      <groupId>com.oracle.adf.library</groupId>
      <artifactId>ADF-Common-Runtime</artifactId>
      <version>12.2.1-1-0</version>
      <type>pom</type>
      <scope>provided</scope>
    </dependency>

Απαραίτητο είναι επίσης να ορίσουμε και το maven dependency για το model project μας. Φτιάχνουμε τώρα μια java κλάση που καλεί την διαδικασία exportData. Χρησιμοποιούμε το Schedule annotation για τον χρονοπρογραμματισμό ενώ κάνουμε μια απλή σύνδεση στο Application module για να καλέσουμε την μέθοδο που θέλουμε από το client interface.

Το παράδειγμα δοκιμάστηκε σε JDeveloper 12.2.1.1.0.

No comments: