Jun 18, 2007

Αντιγραφή και επικόλληση διαδικασιών (activities) στον BPEL Designer

Κατά τη διάρκεια μιας hands-on παρουσίασης του BPEL, ανέκυψε το ερώτημα για το εάν είναι δυνατόν να γίνει αντιγραφή και επικόλληση μιας διαδικασίας (activity) από ένα σημείο σε ένα άλλο, μέσω drag and drop ή copy-paste. Αυτό είναι ιδιαίτερα χρήσιμο, για παράδειγμα σε κόμβους απόφασης, που γίνεται ανάθεση σε μια μεταβλητή, ανάλογα με τον τύπο του αποτελέσματος (όπως στην ακόλουθη εικόνα που ο else κόμβος απουσιάζει)

Δυστυχώς, στην παρούσα έκδοση αυτό δεν είναι εφικτό με μηχανισμούς copy και paste της αρχικής διαδικασίας. Αντίθετα, αυτό που θα πρότεινα είναι να προσθέσουμε μια διαδικασία στην οποία θέλουμε να κάνουμε επικόλληση, χωρίς να της κάνουμε αρχικοποίηση (έτσι θα εμφανιστεί το εικονίδιο του λάθους στο διάγραμμά μας). Έπειτα, επιλέγουμε την διαδικασία που μας ενδιαφέρει για αντιγραφή και ακολουθούμε το tab Source στο κάτω μέρος. Με αυτόν τον τρόπο, μεταφερόμαστε απευθείας στον πηγαίο κώδικα, στο σημείο που έχουμε επιλέξει.

Τώρα, μπορούμε να σκιάσουμε ολόκληρο το κείμενο του activity προς αντιγραφή

κάνοντας μάλιστα χρήση των grouping blocks (τα σταυρουδάκια στα αριστερά)

και να το επικολλήσουμε, επικαλύπτοντας τον προσωρινό κόμβο. Τέλος, μπορούμε να το διορθώσουμε είτε από τον Source κώδικα είτε από τον Design Editor.

No comments: