Przewodnik po języku JavaScript 1.5:Podgląd klas LiveConnect:Komunikacja między Java a JavaScript
z Mozilla Developer Center, polskiego centrum programistów Mozilli.
Jeśli chcesz użyć obiektów JavaScript w Javie, musisz zaimportować pakiet netscape.javascript do Twojego pliku Javy. Pakiet ten definiuje następujące klasy:
-
netscape.javascript.JSObjectpozwala kodowi Javy na dostęp do metod i własności JavaScript. -
netscape.javascript.JSExceptionpozwala kodowi Javy obsługiwać błędy JavaScript.
Zobacz dokumentację języka JavaScript, aby dowiedzieć się więcej o tych klasach.
[edytuj] Odnajdywanie klas LiveConnect
W starszych wersjach Netscapa klasy te były rozpowszechniane razem z przeglądarką. Począwszy od JavaScript 1.2 powyższe klasy są dostarczane w pliku .jar file; w poprzednich wersjach JavaScriptu był one dostarczane w pliku .zip. Przykładowo, wraz z Netscape Navigator 4 dla Windows NT, klasy były dystrybuowane w pliku java40.jar w katalogu Program\Java\Classes wewnątrz katalogu przeglądarki.
Nieco później klasy zaczęto rozpowszechniać ze środowiskiem Sun Java Runtime; początkowo w pliku "jaws.jar" w katalogu "jre/lib" dystrybucji (dla JRE 1.3), a następnie w "plugin.jar" w tym samym katalogu (JRE 1.4 i kolejne).
[edytuj] Używanie klas LiveConnect z JDK
Aby uzyskać dostęp do klas LiveConnect, umieść plik .jar lub .zip w CLASSPATH kompilatora JDK w jeden z następujących sposobów:
- Utwórz zmienną środowiskową
CLASSPATH, aby określić ścieżkę i nazwę pliku .jar lub .zip. - Określ lokalizację pliku .jar lub .zip, gdy kompilujesz używając parametru
-classpathlinii poleceń.
Możesz określić zmienną środowiskową w systemie Windows NT poprzez dwukrotne kliknięcie ikony System w Panelu Sterowania i utworzenie zmiennej środowiskowej o nazwie CLASSPATH z wartością podobną do poniższej:
C:\Program Files\Java\jre1.4.1\lib\plugin.jar
Zobacz dokumentację JDK documentation, aby uzyskać więcej informacji o CLASSPATH.
Uwaga: Ponieważ Java jest językiem o silnej typizacji, zaś JavaScript językiem o typizacji słabej, gdy używasz LiveConnecta silnik JavaScriptu konwertuje wartości argumentu do odpowiednich typów danych drugiego języka. Zobacz artykuł o konwersji typu danych, aby uzyskać pełne informacje.