Προγραμματισμός

Συνδέστε την Java με Java Plug-in

Καθώς η τεχνολογία Java ωριμάζει, η Sun Microsystems (δημιουργός της Java) κυκλοφορεί νέες εκδόσεις Java μέσω του Java Development Kit (JDK). Το Netscape και άλλοι προμηθευτές προγραμμάτων περιήγησης υποστηρίζουν κάθε νέα έκδοση προσθέτοντας το στοιχείο χρόνου εκτέλεσης αυτής της έκδοσης - το Java Runtime Environment (JRE) - στην επόμενη επανάληψη των προγραμμάτων περιήγησής τους. Ωστόσο, ο χρόνος καθυστέρησης μεταξύ της Sun για την εισαγωγή μιας νέας έκδοσης Java και της απελευθέρωσης προγραμμάτων περιήγησης που το υποστηρίζει έχει απογοητεύσει τους εταιρικούς προγραμματιστές intranet που πρέπει να κάνουν χρήση των πιο πρόσφατων δυνατοτήτων του JRE (και διορθώσεις σφαλμάτων). Και η άρνηση της Microsoft να υποστηρίξει πλήρως το JRE στον Internet Explorer 4.0 και 5.0 έκανε την κατάσταση ακόμη πιο απογοητευτική για τους προγραμματιστές.

Η Sun έχει μια λύση σε αυτά τα προβλήματα. Αυτή η λύση παρακάμπτει τον προμηθευτή και βασίζεται στην τεχνολογία plug-in για τη διανομή νεότερων JRE.

ΕΝΑ αρχιτεκτονική plug-in - ουσιαστικά ο συνδυασμός αρχιτεκτονικής και προσθηκών - είναι μια προδιαγραφή και εφαρμογή αυτού του μέρους ενός προγράμματος περιήγησης που φορτώνει δυναμικά πρόσθετα όπως απαιτείται. Τόσο η Netscape όσο και η Microsoft έχουν προσθέσει αυτήν την αρχιτεκτονική στα προγράμματα περιήγησής τους. (Οι πραγματικές υλοποιήσεις της αρχιτεκτονικής είναι αρκετά διαφορετικές: Το Netscape χρησιμοποιεί μια απλή εκτελέσιμη υλοποίηση, ενώ η Microsoft χρησιμοποιεί την εφαρμογή μοντέλου αντικειμένου ActiveX.)

ΕΝΑ συνδέω είναι εκτελέσιμος κώδικας που είναι αποθηκευμένος σε ένα αρχείο βιβλιοθήκης. Όταν αναφέρεται μέσω ειδικών ετικετών HTML, το πρόγραμμα περιήγησης φορτώνει αυτήν τη βιβλιοθήκη, μέσω της αρχιτεκτονικής προσθήκης και αρχίζει να εκτελεί τον κώδικα της βιβλιοθήκης. (Εάν έχετε συναντήσει ποτέ μια ιστοσελίδα που αναφέρεται στο Shockwave της Macromedia ή στο VXtreme Web Theatre, έχετε δει παραδείγματα προσθηκών στην εργασία.)

Η λύση της Sun είναι η δημιουργία ενός plug-in για Java, γνωστό ως Java Plug-in.

Τι είναι η προσθήκη Java;

Πρόσθετο Java είναι ένα προϊόν λογισμικού που χρησιμεύει ως γέφυρα μεταξύ ενός προγράμματος περιήγησης και ενός εξωτερικού JRE. Ένας προγραμματιστής "λέει" στο πρόγραμμα περιήγησης να χρησιμοποιήσει αυτό το εξωτερικό JRE τοποθετώντας ειδικές ετικέτες HTML σε μια ιστοσελίδα. Μόλις γίνει αυτό, ένα πρόγραμμα περιήγησης μπορεί να εκτελέσει εφαρμογές Java ή στοιχεία JavaBeans που έχουν πρόσβαση σε όλες τις δυνατότητες (εντός των ορίων του μοντέλου ασφαλείας Java) αυτού του εξωτερικού JRE.

Η Sun κυκλοφόρησε το Java Plug-in 1.1 τον Απρίλιο του '98. Λίγο αργότερα, JavaWorld δημοσίευσε την αναγνωσιμότητα του για να μετρήσει την αντίδραση σε αυτό το προϊόν. Ακολούθησαν οι εκδόσεις συντήρησης Java Plug-in 1.1.1 και 1.1.2. (Δείτε πόρους για λεπτομέρειες σχετικά με το JavaWorld δημοσκόπηση και εκδόσεις Java Plug-in.)

Σε συνδυασμό με την κυκλοφορία του JDK 1.2 (τώρα γνωστή ως πλατφόρμα Java 2), η Sun κυκλοφόρησε το Java Plug-in 1.2. Ωστόσο, σε αντίθεση με προηγούμενες εκδόσεις, αυτή η έκδοση είναι προς το παρόν διαθέσιμη μόνο για την πλατφόρμα Microsoft Windows (95/98 / NT). Η Sun εργάζεται επί του παρόντος για να κάνει το Java Plug-in 1.2 διαθέσιμο για την πλατφόρμα Solaris.

Αυτό το άρθρο εξετάζει το Java Plug-in 1.2, ξεκινώντας από μια συζήτηση σχετικά με τον τρόπο λήψης και εγκατάστασης αυτής της τεχνολογίας. Βασίζεται στην εμπειρία μου από τη χρήση Java Plug-in 1.2 με τα προγράμματα περιήγησης Internet Explorer 3.02 και Netscape Communicator 4.5, στο λειτουργικό σύστημα Windows 95.

Συνδεθείτε!

Το Java Plug-in 1.2 είναι προς το παρόν συσκευασμένο με JRE 1.2. Εάν θέλετε να προεγκαταστήσετε το Java Plug-in, πραγματοποιήστε λήψη και εγκατάσταση του JRE 1.2 από την τοποθεσία Web της Sun, η οποία είναι συνδεδεμένη στην ενότητα Πόροι. Εναλλακτικά, μπορείτε να επιλέξετε να κάνετε λήψη του προγράμματος περιήγησης Java Plug-in (με ελάχιστη παρέμβαση από εσάς, ανάλογα με το πρόγραμμα περιήγησής σας) όταν "σερφάρετε" σε μια ιστοσελίδα που αναφέρεται σε αυτήν την προσθήκη. Δείτε πώς:

Όταν ένα πρόγραμμα περιήγησης συναντά μια ιστοσελίδα που απαιτεί τη χρήση Java Plug-in, ελέγχει αν η Java Plug-in έχει εγκατασταθεί στον ίδιο υπολογιστή με το πρόγραμμα περιήγησης. Εάν δεν έχει, το πρόγραμμα περιήγησης πρέπει να κατεβάσει και να εγκαταστήσει τα απαιτούμενα αρχεία. Ο τρόπος που λειτουργεί εξαρτάται από το πρόγραμμα περιήγησής σας, οπότε θα εξετάσουμε αυτές τις διαφορές στη συνέχεια.

Netscape Communicator 4.5

Εάν χρησιμοποιείτε το Netscape Communicator, μια ιστοσελίδα που περιέχει το HTML Η ετικέτα που αναφέρεται στην Java Plug-in θα ενεργοποιήσει τη λήψη. Θα εξερευνήσουμε αργότερα σε αυτό το άρθρο. Προς το παρόν, αρκεί να το γνωρίζουμε περιέχει πληροφορίες που αναφέρουν στο πρόγραμμα περιήγησης τι απαιτείται πρόσθετο και πού να το αποκτήσετε. Το σχήμα 1 δείχνει την αρχική σελίδα λήψης που εμφανίζεται όταν ο Communicator συναντά μια ιστοσελίδα που αναφέρεται σε μια μη εγκατεστημένη προσθήκη.

Εάν κάνετε κλικ στην εικόνα σε αυτήν τη σελίδα, το Communicator εμφανίζει ένα παράθυρο διαλόγου "Plug-in Not Loaded" όπως αυτό που φαίνεται στο σχήμα 2.

Αυτό το παράθυρο διαλόγου μας δείχνει ότι το πρόγραμμα περιήγησης γνωρίζει ακριβώς τι χρειάζεται (ένα πρόσθετο για application / x-java-applet; έκδοση = 1.2) και πού να το αποκτήσετε (//java.sun.com/products/plugin/1.2/plugin-install.html).

Τι συμβαίνει λοιπόν όταν κάνετε κλικ στο κουμπί "Λήψη της προσθήκης"; Το πρόγραμμα περιήγησης αλλάζει από την τρέχουσα σελίδα στη σελίδα που καθορίζεται από τη διεύθυνση Internet στο παράθυρο διαλόγου. Από αυτήν τη σελίδα, ακολουθείτε οδηγίες για λήψη και εγκατάσταση του JRE 1.2 με Java Plug-in.

Μόλις εγκατασταθεί το JRE με Java Plug-in, στην επόμενη συνάντηση του Netscape με μια ιστοσελίδα που απαιτεί Java Plug-in, αυτή η προσθήκη θα φορτωθεί από τον σκληρό δίσκο του τοπικού μηχανήματος και το applet ή το JavaBeans θα εκτελεστεί, καθώς φαίνεται στο σχήμα 3.

Internet Explorer 3.02

Εάν χρησιμοποιείτε τον Internet Explorer, μια ιστοσελίδα που περιέχει το ετικέτα που αναφέρεται στην Java Plug-in θα ενεργοποιήσει τη διαδικασία λήψης αυτής της προσθήκης. (Οπως και με , θα εξερευνήσουμε το ετικέτα αργότερα σε αυτό το άρθρο). Αυτή η ετικέτα περιέχει πληροφορίες που επιτρέπουν στο πρόγραμμα περιήγησης να γνωρίζει τι είδους προσθήκη απαιτείται και από πού να το αποκτήσει. Όπως θα δούμε, η διαδικασία για τη λήψη Java Plug-in είναι κάπως πιο αυτοματοποιημένη στην Εξερεύνηση από ό, τι στο Communicator. Το Σχήμα 4 δείχνει την αρχική σελίδα που εμφανίζεται όταν ο Εξερεύνηση συναντά μια ιστοσελίδα που αναφέρεται σε μια μη εγκατεστημένη προσθήκη.

(Σημείωση: Το πολύχρωμο διαμάντι στην επάνω αριστερή γωνία του χώρου προσθήκης εμφανίζεται εάν ο υπολογιστής είναι συνδεδεμένος στο Διαδίκτυο. Εάν ο υπολογιστής δεν είναι συνδεδεμένος στο Διαδίκτυο, αυτό το διαμάντι αντικαθίσταται με κόκκινο Χ χαρακτήρα, και προφανώς ο Explorer δεν θα κάνει τίποτα για να αποκτήσει την προσθήκη).

Υποθέτοντας ότι ο υπολογιστής είναι συνδεδεμένος στο Internet, ο Explorer προχωρά στη λήψη ενός μικρού στοιχείου ελέγχου ActiveX που είναι υπεύθυνος για τη λήψη του Java Active Plug-in ActiveX και JRE. Η Εξερεύνηση εμφανίζει το πιστοποιητικό Verisign που σχετίζεται με αυτό το πρώτο στοιχείο ελέγχου ActiveX, όπως φαίνεται στο Σχήμα 5.

Υποθέτοντας ότι επιλέγετε να εγκαταστήσετε και να εκτελέσετε Java Plug-in, κάνοντας κλικ στο κουμπί Ναι στο προηγούμενο παράθυρο διαλόγου, ο Explorer σας ζητά πληροφορίες τοπικής εμβέλειας μέσω του παραθύρου διαλόγου που φαίνεται στο σχήμα 6.

Μόλις ληφθούν οι τοπικές πληροφορίες (και έχετε κάνει κλικ στο κουμπί Εγκατάσταση), η Εξερεύνηση εμφανίζει ένα παράθυρο διαλόγου λήψης, όπως φαίνεται στο Σχήμα 7.

Μόλις ολοκληρωθεί η λήψη, ο Explorer θα προσπαθήσει να ξεκινήσει το JRE με πρόγραμμα εγκατάστασης Java Plug-in. (Την πρώτη φορά που έκανα λήψη του Java Plug-in μέσω του Explorer, έλαβα ένα μήνυμα σφάλματος CAB - Windows cabinet - κατεστραμμένο αρχείο, το οποίο εμπόδισε την έναρξη και την ολοκλήρωση της εγκατάστασης του προγράμματος εγκατάστασης. Το πρόγραμμα εγκατάστασης ξεκίνησε και ολοκληρώθηκε με επιτυχία στις δεύτερη προσπάθεια.) Μόλις ολοκληρωθεί το πρόγραμμα εγκατάστασης, ο Explorer φορτώνει και εκτελεί το applet (ή το στοιχείο JavaBeans), όπως φαίνεται στο σχήμα 8.

Ρυθμίσεις μητρώου των Windows

Το πρόγραμμα εγκατάστασης JRE με Java Plug-in καταγράφει διάφορες ρυθμίσεις JRE και Java Plug-in στο μητρώο των Windows - μια κεντρική βάση δεδομένων εγκατάστασης και άλλων δεδομένων διαμόρφωσης και ένα θεμελιώδες μέρος των διαφόρων λειτουργικών συστημάτων Windows 32-bit. Ο παρακάτω πίνακας δείχνει πολλές ρυθμίσεις Java Plug-in που είναι αποθηκευμένες σε αυτήν τη βάση δεδομένων. Κάθε ρύθμιση αποτελείται από ένα κλειδί που προσδιορίζει μια ρύθμιση καθώς και την τιμή αυτής της ρύθμισης.

Κλειδίαξία
HKEY_LOCAL_MACHINE / ΛΟΓΙΣΜΙΚΟ / JavaSoft / Java Plug-in / 1.2 / JavaHomec: \ Program Files \ JavaSoft \ JRE \ 1.2
HKEY_LOCAL_MACHINE / ΛΟΓΙΣΜΙΚΟ / JavaSoft / Java Plug-in / 1.2 / RuntimeLibc: \ Program Files \ JavaSoft \ JRE \ 1.2 \ bin \ classic \ jvm.dll
HKEY_CURRENT_USER / Λογισμικό / JavaSoft / Java Plug-in / Debug Mode0
HKEY_CURRENT_USER / Λογισμικό / JavaSoft / Java Plug-in / Debug Port2502
HKEY_CURRENT_USER / Λογισμικό / JavaSoft / Java Plug-in / Java RuntimeΠροκαθορισμένο
HKEY_CURRENT_USER / Λογισμικό / JavaSoft / Java Plug-in / Java Runtime Version1.2
HKEY_CURRENT_USER / Λογισμικό / JavaSoft / Java Plug-in / JIT Enabled1
HKEY_CURRENT_USER / Λογισμικό / JavaSoft / Java Plug-in / JIT PathΣυμφιτ
Πίνακας 1. Ρυθμίσεις προσθήκης Java που είναι αποθηκευμένες στο μητρώο των Windows

Οι δύο πρώτες ρυθμίσεις Java Plug-in προσδιορίζονται από το JavaHome και Χρόνος εκτέλεσης κλειδιά. Οι τιμές που σχετίζονται με αυτά τα κλειδιά χρησιμοποιούνται από τον Communicator και τον Explorer για τον εντοπισμό του αρχικού καταλόγου JRE και της εικονικής μηχανής εκτέλεσης του JRE, αντίστοιχα. Οι πληροφορίες καταλόγου που περιέχονται σε αυτές τις τιμές αντικατοπτρίζουν τον προεπιλεγμένο κατάλογο εγκατάστασης που επιλέχθηκε κατά την εγκατάσταση. Τα υπόλοιπα κλειδιά χρησιμοποιούνται από τον Πίνακα Ελέγχου Java Plug-in.

Εντολή και έλεγχος

ο Πίνακας ελέγχου προσθήκης Java είναι μια εφαρμογή Swing που καθιστά δυνατή την τροποποίηση της συμπεριφοράς του Java Plug-in. Το πρόγραμμα εγκατάστασης JRE / Java Plug-in προσθέτει μια καταχώρηση στο πρόγραμμα εκκίνησης προγραμμάτων των Windows που, όταν επιλέγεται, ενεργοποιεί τον Πίνακα Ελέγχου Java Plug-in. Αυτή η καταχώρηση αποτελείται από την ακόλουθη γραμμή (υποθέτοντας τον προεπιλεγμένο κατάλογο εγκατάστασης):

"c: \ Program Files \ JavaSoft \ JRE \ 1.2 \ bin \ javaw.exe" -classpath .. \ lib \ rt.jar; .. \ lib \ jaws.jar sun.plugin.panel.ControlPanel 

Ο πίνακας ελέγχου αποτελείται από μια διασύνδεση με καρτέλες με τρεις καρτέλες (Basic, Advanced και Proxies) και δύο κουμπιά (Εφαρμογή και επαναφορά). Η καρτέλα Basic ελέγχει τη βασική λειτουργία του Java Plug-in. Για παράδειγμα, μπορείτε να επιλέξετε εάν θα εμφανίζεται ή όχι η κονσόλα Java της προσθήκης Java. Η καρτέλα για προχωρημένους ελέγχει το JRE που θα χρησιμοποιηθεί με την προσθήκη Java μαζί με τον εντοπισμό σφαλμάτων. Η καρτέλα Proxies ελέγχει τις διευθύνσεις και τους αριθμούς θύρας που χρησιμοποιεί το Java Plug-in κατά την επικοινωνία, μέσω ενός ενδιάμεσου υπολογιστή, με έναν άλλο υπολογιστή μέσω του Διαδικτύου. Το κουμπί Εφαρμογή αποθηκεύει τυχόν αλλαγές στον πίνακα ελέγχου, ενώ το κουμπί Επαναφορά επαναφέρει τις προεπιλεγμένες τιμές.

Το σχήμα 9 δείχνει τον πίνακα ελέγχου με το Βασικός ως ενεργή καρτέλα.

Το πλαίσιο ελέγχου Ενεργοποίηση προσθήκης Java, όταν είναι επιλεγμένο, επιτρέπει την προσθήκη Java για την εκτέλεση μικροεφαρμογών ή στοιχείων JavaBeans. Η προεπιλεγμένη ρύθμιση είναι ενεργοποιημένη (το πλαίσιο είναι επιλεγμένο).

Το πλαίσιο ελέγχου Show Java Console επιτρέπει την εμφάνιση της νέας κονσόλας Java κατά την εκτέλεση μικροεφαρμογών ή στοιχείων JavaBeans. Όπως θα δούμε αργότερα, η κονσόλα εμφανίζει μηνύματα που έχουν εκτυπωθεί από System.out και System.err αντικείμενα (χρήσιμα για εντοπισμό σφαλμάτων). Η προεπιλεγμένη ρύθμιση χρησιμοποιείται για την εμφάνιση της νέας κονσόλας Java (το πλαίσιο είναι επιλεγμένο).

Το πλαίσιο ελέγχου Cache JARs στη μνήμη, όταν είναι επιλεγμένο, προκαλεί προσωρινή αποθήκευση applet ή κλάσεις στοιχείων που έχουν φορτωθεί και επαναχρησιμοποιηθεί κατά τη φόρτωση αυτής της μικροεφαρμογής, επιτρέποντας αποτελεσματικότερη χρήση μνήμης. Αυτή η επιλογή δεν πρέπει να ελεγχθεί εάν ένα μικροεφαρμογή ή ένα στοιχείο πραγματοποιείται εντοπισμός σφαλμάτων ή εάν θέλετε να βεβαιωθείτε ότι γίνεται λήψη των πιο πρόσφατων κλάσεων μικροεφαρμογών ή στοιχείων. Η προεπιλεγμένη ρύθμιση είναι η προσωρινή αποθήκευση JAR στη μνήμη (το πλαίσιο είναι επιλεγμένο).

Το αναπτυσσόμενο πλαίσιο λίστας πρόσβασης δικτύου σάς επιτρέπει να επιλέξετε ποια δικαιώματα πρόσβασης δικτύου θέλετε να εκχωρήσετε στις εφαρμογές και τα στοιχεία που εκτελείτε. Αυτή η επιλογή είναι ενεργοποιημένη εάν εκτελείτε Java Plug-in 1.1.x. Για Java Plug-in 1.2, πρέπει να χρησιμοποιήσετε τη νέα αρχιτεκτονική ασφαλείας για να ενεργοποιήσετε την ίδια συμπεριφορά. (Για περισσότερες πληροφορίες, ανατρέξτε στην ενότητα "Ασφάλεια και υπογεγραμμένες μικροεφαρμογές / Αρχιτεκτονική ασφάλειας" στην τεκμηρίωση JDK 1.2.) Από προεπιλογή, οι μικροεφαρμογές και τα στοιχεία μπορούν να συνδεθούν μόνο στον αρχικό διακομιστή τους (Network Access = Applet Host). Όταν είναι ενεργοποιημένη η πρόσβαση στο δίκτυο, μπορείτε να χρησιμοποιήσετε τα ακόλουθα δικαιώματα, εκτός από την προεπιλογή:

  • Να μην επιτρέπεται η πρόσβαση στο δίκτυο, ώστε μια μικροεφαρμογή ή ένα στοιχείο να μην μπορεί να πραγματοποιήσει κλήσεις δικτύου

  • Να επιτρέπεται απεριόριστη πρόσβαση στο δίκτυο (που αποτελεί κίνδυνο για την ασφάλεια και πρέπει να χρησιμοποιείται πολύ προσεκτικά) έτσι ώστε μια μικροεφαρμογή ή στοιχείο να μπορεί να συνδεθεί σε οποιονδήποτε κεντρικό διακομιστή

ο Παράμετροι χρόνου εκτέλεσης Java Το πεδίο κειμένου παρακάμπτει τις προεπιλεγμένες παραμέτρους εκκίνησης Java Plug-in καθορίζοντας προσαρμοσμένες επιλογές. Θα χρησιμοποιούσατε την ίδια σύνταξη για αυτό το πεδίο κειμένου που χρησιμοποιείτε κατά τον καθορισμό παραμέτρων στο java.exe εργαλείο γραμμής εντολών.

Το σχήμα 10 δείχνει τον πίνακα ελέγχου με το Προχωρημένος ως ενεργή καρτέλα.

ο Περιβάλλον χρόνου εκτέλεσης Java Το αναπτυσσόμενο πλαίσιο επιτρέπει στο Java Plug-in να εκτελείται με JDK 1.2 ή οποιοδήποτε JRE που είναι εγκατεστημένο στο μηχάνημά σας. Η Java Plug-in 1.2 παραδίδεται με ένα προεπιλεγμένο JRE (επί του παρόντος JRE 1.2). Ωστόσο, μπορείτε να παρακάμψετε αυτό το προεπιλεγμένο JRE και να χρησιμοποιήσετε μια παλαιότερη ή νεότερη έκδοση. Ο πίνακας ελέγχου εντοπίζει αυτόματα όλες τις εκδόσεις του JDK ή JRE που έχουν εγκατασταθεί στο μηχάνημα. Εμφανίζει αυτές τις εκδόσεις στο πλαίσιο λίστας. Το πρώτο στοιχείο στη λίστα θα είναι πάντα Προεπιλογή Java Plug-in, ενώ το τελευταίο στοιχείο θα είναι πάντα Άλλο. Εάν επιλέξετε Άλλο, πρέπει να καθορίσετε τη διαδρομή προς το JRE ή JDK 1.2.

Το πλαίσιο ελέγχου Ενεργοποίηση μεταγλωττιστή JIT (μόνο σε πλατφόρμες Win32) επιτρέπει τον μεταγλωττιστή just-in-time (JIT). Εάν ενεργοποιήσετε τον μεταγλωττιστή, πρέπει επίσης να καθορίσετε τη διαδρομή προς τον μεταγλωττιστή JIT. Ο μεταγλωττιστής JIT πρέπει να βρίσκεται στο αποθήκη κατάλογο για το JRE ή JDK που έχει επιλεγεί για το περιβάλλον χρόνου εκτέλεσης.