2008-11-17 12 views
5

Moim celem jest uzyskanie Limewire (JAVA) i Songbird (XULRunner) do wspólnego działania.Osadzanie aplikacji XULRunner na Javie

Myślałem, że najlepszym sposobem jest uruchomienie aplikacji XUL (songbird) wewnątrz panelu swing JAVA. Czy istnieje inny sposób?

Czy byłoby lepiej, czy można mieć GUI całkowicie w XUL, a następnie uzyskać dostęp do moich obiektów JAVA w jakiś sposób?

Jak miałbym to zrobić?

Dzięki

Odpowiedz

2

Spójrz na JRex, ponieważ może to pozwolić ci spojrzeć na kilka pomysłów.

Poza tym, chciałbym również zbadać także o Rhinohide.

0

Jestem obecnie badania XUL dla nowego produktu i natknąłem JavaXPCOM który pozwala kodu Java do interakcji z obiektami XPCOM. Nadal pakuję głowę wokół stosu Mozilli, ale z tego, co rozumiem, wszystkie aplikacje XULRunner korzystają z XPCOM. Dlatego wydaje się, że powinieneś być w stanie osadzić Songbird przy użyciu tego podejścia.

0

Oficjalna implementacja XUL przez Mozillę i jest silnie uzależniona od Gecko. Gecko nie jest napisane w Javie ani osadzone w AWT/Swing/SWT (przynajmniej bez użycia JNI).

Krótka odpowiedź brzmi: nie. Musisz użyć JNI lub użyć ciężkich, złożonych i niekompletnych bibliotek stron trzecich.

Jednak wydaje się, że JavaXPCOM pozwala na osadzanie Gecko: https://developer.mozilla.org/en/JavaXPCOM Ale w takim przypadku będziesz zależał od Gecko ... i nie wiem, czy to wystarczy, aby uruchomić Songbird.

0

Chciałbym zbadać kod źródłowy Limewire. Jeśli istnieje czysta separacja między interfejsem a resztą aplikacji, spróbuję znaleźć rozwiązanie do utworzenia instancji i wywołania kodu Non-UI firmy Limewire z rozszerzenia Songbird.