EuroAP jest platformą middleware opartą o otwarte standardy. W naszej ofercie posiadamy dwie wiodące wersje rozwiązania – EuroAP 6.x zgodna ze specyfikacją Java™ EE 6 oraz EuroAP 7.x zgodna ze specyfikacją Java™ EE 7 oraz Java™ EE 8.

EuroAP ma budowę modułową, dzięki czemu jest niezwykle elastyczne. Użytkownik może wybrać predefiniowane zestawy komponentów (profile) lub stworzyć swój własny – wyjątkowy, uszyty na miarę swoich aplikacji. Poniżej znajduje się lista komponentów dostępnych w EuroAP. Użytkownik nie musi się ograniczać jedynie do nich, może swobodnie dodawać swoje własne moduły.

Przykładowe komponenty obecne w EuroAP i ich zastosowanie:

  • rdzeń EuroAP, któremu zawdzięczamy CLI (Command Line Interface pozwalający np. na automatyzację współpracy z EuroAP), modułowe ładowanie klas, a także zunifikowane zarządzanie EuroAP nawet w trybie domain;
  • graficzna konsola do zarządzania EuroAP (Management Console) zarówno w trybie standalone, jak i domain. Z jej poziomu możemy intuicyjnie i wygodnie zaaplikować łatkę na serwer, zarządzać wdrożeniami czy kontrolą dostępu, a także podejrzeć, w jakiej kondycji jest serwer, gdy jest już uruchomiony (w „runtime”);
  • moduł implementujący standard Java™ Message Service 2.0, odznaczający się doskonałą wydajnością. W EuroAP, podobnie jak w JBoss® EAP, obecny jest od wersji 7;
  • moduł implementujący CDI (Context and Dependency Injection) dla Java™ EE, który zapewnia wstrzykiwanie zależności;
  • serwer webowy wspierający wymagania Java™ EE 7, takie jak: gniazda sieciowe (web sockets), HTTP/2 czy json-p. Ponadto zawiera wiele ulepszeń m.in.: kontener sieciowy NIO, balansowanie obciążenia, zarządzanie sesją, redukcja portów HTTP (EuroAP 7 używa dwóch – 9990 i 8080);
  • jednolity framework zapewniający bezpieczeństwo zarówno dla samego serwera aplikacji, jak i aplikacji na nim zainstalowanych, co jest jego główną zaletą. Dzięki swej architekturze – składa się z wielu małych komponentów – można go łatwo dostosować do swoich potrzeb. Umożliwia wymianę domyślnych komponentów na inne implementacje, także własne. Dodatkowo wewnątrz serwera różne komponenty są traktowane jako zdolności (capabilities), dzięki czemu można je między sobą mieszać i łączyć. W EuroAP obecny od wersji 7.1;
  • zestaw komponentów zapewniający bezpieczeństwo w EuroAP 6x. W wersji 7 jest obecny dla podtrzymania kompatybilności;
  • moduł rozkładania ruchu (load-balancer) bazujący na httpd. Potrafi zmieniać swoją konfigurację dynamicznie. Obok standardowych kanałów komunikacyjnych używanych do przekazywania żądania od httpd do odpowiednich węzłów serwera aplikacji, używa dodatkowego kanału dla informacji zwrotnych, dzięki którym potrafi z pewną inteligencją równoważyć obciążenie i reagować na zmiany w trakcie życia aplikacji;
  • komponent alternatywny dla NIO, zapewniający m.in. API umożliwiające łączenie blokujących i nieblokujących operacji, nawet wewnątrz jednego kanału;
  • framework dla środowiska Java™ służący do mapowania obiektów Java™ na relacyjną bazę danych i odwrotnie (ORM – Object-relational mapping);
  • rozproszony magazyn przechowujący w pamięci operacyjnej dane w postaci pary klucz-wartość. Najczęściej, tak jak w EuroAP, jest używany jako cache;
  • moduł implementujący Java™ EE Connector Architecture 1.7, który definiuje, jak System Informacji Przedsiębiorstwa (Enterprise Information System) ma się integrować z Java™ EE. Innymi słowy, jak np. bazy danych lub systemy przesyłania komunikatów (messaging systems) mają się komunikować z serwerem aplikacji;
  • komplet narzędzi umożliwiający niezawodne przesyłanie komunikatów (messaging). Przede wszystkim umożliwia zarządzanie klastrem (tworzenie, niszczenie, łączenie i opuszczanie klastrów, wykrywanie i informowanie o tym, że węzeł zepsuł się/dołączył/opuścił klaster). Pozwala także na wysyłanie i odbieranie komunikatów punkt-do-punktu oraz punkt-do-wielu-punktów, czyli umożliwia wysyłanie komunikatu między węzłami, a także pomiędzy węzłem a klastrem;
  • manager transakcji zapewniający wsparcie dla aplikacji używających protokołów transakcyjnych np.: JTA, JTS, Web-Service Transations czy Rest Transations;
  • komponent wpierający Enterprise Java™ Beans (EJB) 3.0;
  • framework serwisów webowych, który dostarcza wszelkich serwisów koniecznych do zapewnienia zgodności z Java™ EE 7. Komponenty obecne w EuroAP od razu po wyjęciu z pudełka to: EuroWS API, EuroWS SPI, EuroWS Common, EuroWS Common Tools, EuroWS-CXF. Ostatni z wymienionych komponentów zapewnia doskonałą integrację z Apache® CXF;
  • komponent odpowiedzialny za Wirtualny System Plików (Virtual File System) używany przez framework do wdrożeń. Dzięki niemu każda wdrożona aplikacja jest widoczna jako hierarchiczny system pliku, który można tylko odczytać (read-only), niezależnie od tego, czy w rzeczywistości aplikacja jest spakowana, czy nie;
  • komponent dostarczający API do serializowania. Zawiera udoskonalenia względem standardowego API, jednocześnie pozostając w pełni kompatybilny z java.io;
  • komponent odpowiadający za logowanie w EuroAP;
  • framework wspierający programistów w budowaniu serwisów sieciowych. Zapewnia m.in. jasną separację frontendowej części kodu np. JAX-RS lub JAX-WS od logiki biznesowej, czy też łatwość i prostotę tworzenia nowych klientów i punktów końcowych (endpoints);
  • moduł dostarczający wsparcie dla przetwarzania wsadowego w środowisku Java™ EE.

EuroAP zawiera też wiele bibliotek bezpośrednio wspierających budowanie WebSerwisów.