Включете се в Java с Java Plug-in

С развитието на Java технологията Sun Microsystems (създателят на Java) пуска нови версии на Java чрез Java Development Kit (JDK). Netscape и други доставчици на браузъри поддържат всяка нова версия, като добавят компонента за изпълнение на тази версия - Java Runtime Environment (JRE) - към следващата итерация на своите браузъри. Въпреки това, забавянето между въвеждането на нова версия на Java и пускането на браузъри, които я поддържат, разочарова корпоративните разработчици на интранет, които трябва да се възползват от най-новите функции на JRE (и корекции на грешки). А отказът на Microsoft да подкрепи напълно JRE в Internet Explorer 4.0 и 5.0 направи ситуацията още по-разочароваща за разработчиците.

Sun има решение на тези проблеми. Това решение заобикаля доставчика и разчита на plug-in технология за разпространение на по-нови JRE.

А плъгин архитектура - по същество комбинацията от архитектура и плъгини - е спецификация за и изпълнение на тази част от браузър, който динамично натоварване плъгини, както е необходимо. Както Netscape, така и Microsoft са добавили тази архитектура към своите браузъри. (Реалните изпълнения на архитектурата са доста различни: Netscape използва проста изпълнима версия, докато Microsoft използва своята реализация на ActiveX обектния модел.)

А плъгин е изпълним код, който се съхранява в библиотека файл. Когато се препраща чрез специални HTML тагове, браузърът зарежда тази библиотека чрез нейната архитектура на приставката и започва да изпълнява кода на библиотеката. (Ако някога сте попадали на уеб страница, която се позовава на Shockwave на Macromedia или на уеб театър VXtreme, виждали сте примери за приставки на работа.)

Решението на Sun е създаването на приставка за 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, изтеглете и инсталирайте JRE 1.2 от уебсайта на Sun, който е свързан с него в раздела Ресурси. Или можете да изберете браузърът ви да изтегли Java Plug-in (с минимална намеса от ваша страна, в зависимост от браузъра ви), когато "сърфирате" към уеб страница, която препраща към този 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;version=1.2) и къде да го получи (//java.sun.com/products/plugin/1.2/plugin-install.html).

И така, какво се случва, когато щракнете върху бутона „Вземи приставката“? Браузърът превключва от текущата страница към страницата, посочена от интернет адреса в диалоговия прозорец. От тази страница следвате указанията за изтегляне и инсталиране на JRE 1.2 с приставката Java.

След като бъде инсталиран JRE с приставката Java, при следващата среща на Netscape с уеб страница, която изисква приставката Java, тази приставка ще бъде заредена от твърдия диск на локалната машина и аплетът или компонентът JavaBeans ще стартират, показано на фигура 3.

Internet Explorer 3.02

Ако използвате Internet Explorer, уеб страница, съдържаща маркера, който препраща Java Plug-in, ще активира процеса за изтегляне на този plug-in. (Както при , ще разгледаме маркера по-късно в тази статия). Този маркер съдържа информация, която позволява на браузъра да знае какъв вид приставка е необходима и къде да я получи. Както ще видим, процесът за получаване на Java Plug-in е малко по-автоматизиран под Explorer, отколкото при Communicator. Фигура 4 показва началната страница, показана, когато Explorer срещне уеб страница, която се позовава на неинсталирана приставка.

(Забележка: Цветният диамант в горния ляв ъгъл на пространството на приставката се появява, ако компютърът е свързан с интернет. Ако компютърът не е свързан с интернет, този диамант се заменя с червен знак X и очевидно Explorer няма да направи нищо, за да получи приставката).

Ако приемем, че компютърът е свързан с интернет, Explorer продължава да изтегля малка ActiveX контрола, която е отговорна за изтеглянето на Java Plug-in ActiveX контрола и JRE. Explorer показва сертификата Verisign, свързан с тази първа ActiveX контрола, както е показано на фигура 5.

Ако приемем, че сте избрали да инсталирате и стартирате Java Plug-in, като щракнете върху бутона Да в предишния диалогов прозорец, Explorer ви подканва за информация за локала чрез диалоговия прозорец, показан на фигура 6.

След като се получи информация за локала (и сте щракнали бутона Инсталиране), Explorer показва диалогов прозорец за изтегляне, както е показано на Фигура 7.

След като изтеглянето приключи, Explorer ще се опита да стартира JRE с инсталиращата програма на Java Plug-in. (Първият път, когато изтеглих Java Plug-in чрез Explorer, получих CAB - Windows кабинет - съобщение за повреда на файла, което попречи на програмата за инсталиране да стартира и завърши инсталацията. Инсталационната програма стартира и завърши успешно на втори опит.) Веднага след като инсталационната програма завърши, Explorer зарежда и стартира аплета (или компонента JavaBeans), както е показано на фигура 8.

Настройки на системния регистър на Windows

Инсталационната програма JRE с Java Plug-in записва различни настройки на JRE и Java Plug-in в системния регистър на Windows - централизирана база данни за инсталация и други конфигурационни данни и основна част от различните 32-битови операционни системи Windows. Следващата таблица показва няколко настройки на Java Plug-in, които се съхраняват в тази база данни. Всяка настройка се състои от ключ, който идентифицира настройка, както и стойността на тази настройка.

Ключ Стойност
HKEY_LOCAL_MACHINE/SOFTWARE/JavaSoft/Java Plug-in/1.2/JavaHome c:\Program Files\JavaSoft\JRE\1.2
HKEY_LOCAL_MACHINE/SOFTWARE/JavaSoft/Java Plug-in/1.2/RuntimeLib c:\Program Files\JavaSoft\JRE\1.2\bin\classic\jvm.dll
HKEY_CURRENT_USER/Software/JavaSoft/Java Plug-in/Debug Mode 0
HKEY_CURRENT_USER/Software/JavaSoft/Java Plug-in/Debug Port 2502
HKEY_CURRENT_USER/Software/JavaSoft/Java Plug-in/Java Runtime Default
HKEY_CURRENT_USER/Software/JavaSoft/Java Plug-in/Java Runtime Version 1.2
HKEY_CURRENT_USER/Software/JavaSoft/Java Plug-in/JIT Enabled 1
HKEY_CURRENT_USER/Software/JavaSoft/Java Plug-in/JIT Path symcjit
Таблица 1. Настройки на приставката Java, които се съхраняват в системния регистър на Windows

Първите два Java Plug-в настройките се идентифицират с JavaHomeи RuntimeLibключове. Стойностите, свързани с тези ключове, се използват от Communicator и Explorer, за да намерят съответно домашната директория на JRE и виртуалната машина за изпълнение на JRE. Информацията за директорията, съдържаща се в тези стойности, отразява инсталационната директория по подразбиране, избрана по време на инсталацията. Останалите клавиши се използват от контролния панел на Java Plug-in.

Командване и контрол

Контролният панел на Java Plug-in е 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) и два бутона (Apply и Reset). Разделът Basic контролира основната операция на Java Plug-in. Например можете да изберете дали да се показва собствената Java конзола на Java Plug-in. Разделът Разширени контролира кой JRE ще се използва с приставката Java заедно с отстраняване на грешки. Разделът Proxies контролира адресите и номерата на портовете, които Java Plug-in използва, когато комуникира чрез междинен компютър с друг компютър през Интернет. Бутонът Apply прилага всички промени, направени в контролния панел, докато бутонът Reset възстановява стойностите по подразбиране.

Фигура 9 показва контролния панел с основния раздел като активен раздел.

Поставете отметка в квадратчето Enable Java Plug-in, позволява на Java Plug-in да изпълнява аплети или компоненти JavaBeans. Настройката по подразбиране е активирана (квадратчето е отметнато).

Полето Show Java Console прави възможно показването на новата Java конзола, докато се изпълняват аплети или компоненти JavaBeans. Както ще видим по-късно, конзолата показва съобщения, които са отпечатани от System.outи System.errобекти (полезно за отстраняване на грешки). Настройката по подразбиране се използва за показване на новата Java конзола (квадратчето е отметнато).

Квадратното квадратче JARs в паметта, когато е отметнато, кара кешираните и използвани предварително класове на аплети или компоненти, когато този аплет се презареди, което позволява по-ефективно използване на паметта. Тази опция трябва да бъде оставена без отметка, ако се отстранява грешка на аплет или компонент или ако искате да сте сигурни, че се изтеглят най-новите класове на аплет или компонент. Настройката по подразбиране е да кешира JAR в паметта (квадратчето е отметнато).

Падащото списъчно поле Network Access ви позволява да изберете коя квота за мрежов достъп искате да предоставите на вашите работещи аплети и компоненти. Тази опция е активирана, ако използвате Java Plug-in 1.1.x. За Java Plug-in 1.2 трябва да използвате новата архитектура за защита, за да активирате същото поведение. (За повече информация вижте „Сигурност и подписани аплети / Архитектура на защитата“ в документацията за JDK 1.2.) По подразбиране аплетите и компонентите могат да се свържат обратно само с оригиналния си сървър (мрежов достъп = хост на аплети). Когато мрежовият достъп е активиран, можете да използвате следните квоти, в допълнение към стандартните:

  • Забранете всеки мрежов достъп, така че аплетът или компонентът да не могат да извършват мрежови повиквания

  • Разрешете неограничен достъп до мрежата (което представлява опасност за сигурността и трябва да се използва много внимателно), така че аплет или компонент да може да се свърже с всеки хостов сървър

В Java Run Time Параметри областта текст отменя Java Plug-in подразбиране стартиране параметри, като посочите персонализирани опции. Бихте използвали същия синтаксис за това текстово поле, който използвате при задаване на параметри в инструмента за java.exeкоманден ред.

Фигура 10 показва контролния панел с раздела Разширени като активен раздел.

В Java Run Time Околна среда падащото падащ списък позволява на Java Plug-в, за да работи с JDK 1.2 или някоя JRE, инсталирано на вашата машина. Java Plug-in 1.2 се доставя с JRE по подразбиране (в момента JRE 1.2). Можете обаче да замените този JRE по подразбиране и да използвате по-стара или по-нова версия. Контролният панел автоматично разпознава всички версии на JDK или JRE, които са инсталирани на машината. Той показва тези версии в списъчното поле. Първият елемент в списъка винаги ще бъде Java Plug-in Default, докато последният елемент винаги ще бъде Other. Ако изберете Друго, трябва да посочите пътя към JRE или JDK 1.2.

Полето за активиране на JIT Compiler (само за платформи Win32) позволява компилатора точно навреме (JIT). Ако активирате компилатора, трябва също да посочите пътя към JIT компилатора. JIT компилаторът трябва да се намира в binдиректорията за JRE или JDK, която е избрана за средата на изпълнение.