poniedziałek, lutego 11, 2008

Szewski poniedziałek (nie dla wszystkich)

  1. Is Tomcat an application Server? - bardzo ciekawe porównanie implementacji Java EE w Apache Tomcat. Każdy serwer zgodny z Java EE musi wspierać:
    1. Enterprise JavaBeans (EJB) server and container;
    2. JNDI capabilities;
    3. Java Message Service (JMS) framework;
    4. Java Transaction API (JTA) framework;
    5. J2EE Connector Architecture.
    6. uwaga: każdy komponent opisany jest przez swój - deployment descriptor
  2. Dodatkowo musi wspierać hierarchiczny loader klas (hierarchical classloader) - architekturę wspierającą następującą funkcjonalność:
    1. EJB loading/reloading,
    2. WAR loading/reloading,
    3. manifest-specified utilities (JAR itd)
  3. Zawierać musi także pojemniki (containers - these containers provide structure and functionality that facilitate the deployment, persistence, and execution of supported components) dla:
    1. client applications,
    2. servlets, oraz
    3. EJB components
  4. Obrazuje to następująct schemat:

Architektura Java EE jest pełna i wspiera wszystkie możliwe interakcje z aplikacjami (nawet tymi zewnętrznymi poprzez JCA - Java Connector Architecture). Jednak ta rozległość funkcjonalna powoduje duży narzut na zasoby w przypadku (najczęstszym) gdy potrzebne są tylko niektóre serwisy np. Web server/container, potrzebne są tylko servlets, JSPs i JDBC. Wygląda to tak. Tradycyjnie aplikacje w Java EE type Enterprise zawierają kombinację następujacych komponentów/technologii:

EAR files Java Servlets JavaServer Pages or JavaServer Faces Enterprise JavaBeans (EJB) Java Authentication and Authorization Service (JAAS) J2EE Connector Architecture JavaBeans Activation Framework (JAF) JavaMail Java Message Service (JMS) Java Persistence API (JPA) Java Transaction API (JTA) The Java Management Extensions (JMX) API Java API for XML Processing (JAXP) The Java API for XML-based RPC (JAX-RPC) The Java Architecture for XML Binding (JAXB) The SOAP with Attachments API for Java (SAAJ) Java Database Connectivity (JDBC) framework

Java Web Application zawierają zazwyczaj:

  • WAR files
  • Java Servlets
  • JavaServer Faces or JavaServer Pages
  • Java Database Connectivity (JDBC) framework

Bardziej skomplikowana architektura aplikacji typu enterprise wygląda tak:

Brak komentarzy: