Cześć,
Na początek witam wszystkich :) Robie sobie projekt działający na zasadzie usługi systemowej, którego zadaniem jest przetwarzanie danych wejściowych, a następnie propagacja komunikatów o nich do zainteresowanych aplikacji-słuchaczy. Coś jak eventy myszki z założeniem, że mój główny program to taki sterownik tejże myszki, który rozsyła po systemie informacje o zmianach jej statusu.
Standardowo w Windzie mogłbym użyć WinAPI i w ten sposób rozsyłać komunikaty, jednakże bardziej interesuje mnie rozwiązanie przenośne (po to w końcu piszę to w Javie, a nie C# :)
Szukając po sieci trafiłem na numer z lokalnym mini-serwerem TCP lub UDP, do którego zainteresowane aplikacje się podłączają po gniazdkach i w ten sposób otrzymują komunikaty. No jest to jakiś sposób, ale raczej mało elegancki, trochę mało wydajny (prędkość liczona w milisekundach ma znaczenie) no i problematyczny z punktu widzenia aplikacji-słuchaczy, które zamiast polegać na systemowej kolejce komunikatów muszą implementować jakieś cuda na kiju związane z obsługą TCP lub UDP. Szukam więc jak najbliższego systemowi rozwiązania, ale niezależnego od platformy (czyli natywnie w Javie, a nie przez WinAPI i analogiczne).
Może ktoś się spotkał z takim problemem i mógł by nakierować na jakieś sprawdzone rozwiązania lub pomysły? Z góry dzięki :)
ps. zastanawiam się nad JMS ale nie bardzo się w tym orientuję - to jest przenośne i działa np. tak, że ja sobie z aplikacji Javy wysyłam komunikat i do tego się może wpiąć jakoś sensownie cokolwiek napisane w czymkolwiek? Czy to tylko komunikacja między programami napisanymi w Javie?