JBoss Enterprise Application Platform
Encyclopedia
The JBoss Enterprise Application Platform (or JBoss EAP) is a subscription-based/open-source
Open-source software
Open-source software is computer software that is available in source code form: the source code and certain other rights normally reserved for copyright holders are provided under a software license that permits users to study, change, improve and at times also to distribute the software.Open...

 Java EE-based application server
Application server
An application server is a software framework that provides an environment in which applications can run, no matter what the applications are or what they do...

 runtime platform used for building, deploying, and hosting highly-transactional Java applications and services. The JBoss Enterprise Application Platform is part of the JBoss Enterprise Middleware portfolio of software. Because it is Java
Java (programming language)
Java is a programming language originally developed by James Gosling at Sun Microsystems and released in 1995 as a core component of Sun Microsystems' Java platform. The language derives much of its syntax from C and C++ but has a simpler object model and fewer low-level facilities...

-based, the JBoss application server operates cross-platform: usable on any operating system that supports Java
Java (programming language)
Java is a programming language originally developed by James Gosling at Sun Microsystems and released in 1995 as a core component of Sun Microsystems' Java platform. The language derives much of its syntax from C and C++ but has a simpler object model and fewer low-level facilities...

. The JBoss Enterprise Application Platform was developed by JBoss
JBoss (company)
JBoss is a division of Red Hat, Inc.. It specializes in open-source middleware software.The company profits from a service-based business model. JBoss employ a Professional Open Source business model where the core developers of projects make a living and offer their services...

, now a division of Red Hat
Red Hat
Red Hat, Inc. is an S&P 500 company in the free and open source software sector, and a major Linux distribution vendor. Founded in 1993, Red Hat has its corporate headquarters in Raleigh, North Carolina with satellite offices worldwide....

.

Product components and features

Key features:
  • Eclipse
    Eclipse (software)
    Eclipse is a multi-language software development environment comprising an integrated development environment and an extensible plug-in system...

    -based Integrated Development Environment
    Integrated development environment
    An integrated development environment is a software application that provides comprehensive facilities to computer programmers for software development...

     (IDE) is available using JBoss Developer Studio
  • Supports Java EE and Web Services standards
  • Enterprise Java Beans (EJB)
  • Java persistence
    Java Persistence API
    The Java Persistence API, sometimes referred to as JPA, is a Java programming language framework managing relational data in applications using Java Platform, Standard Edition and Java Platform, Enterprise Edition....

     using Hibernate
    Hibernate (Java)
    Hibernate is an object-relational mapping library for the Java language, providing a framework for mapping an object-oriented domain model to a traditional relational database...

  • Object request broker
    Object request broker
    In distributed computing, an object request broker is a piece of middleware software that allows programmers to make program calls from one computer to another via a network...

     (ORB) using JacORB
    JacOrb
    JacORB is an open-source Java implementation of the Object Management Group's CORBA standard. The name JacORB is a contraction of the words Java and CORBA....

     for interoperability with CORBA
    Çorba
    Chorba , ciorbă , shurpa , shorpo , or sorpa is one of various kinds of soup or stew found in national cuisines across Middle East...

     objects
  • JBoss Seam
    JBoss Seam
    Seam is a web application framework developed by JBoss, a division of Red Hat.- Seam 3 :Seam 3 is very active project consisting of over 50 developers and engineers, which provides a modular set of extensions to the CDI programming model...

     framework, including Java annotation
    Java annotation
    An annotation, in the Java computer programming language, is a special form of syntactic metadata that can be added to Java source code. Classes, methods, variables, parameters and packages may be annotated...

    s to enhance POJO
    Pojo
    Pojo may refer to:* Pohja, the Swedish name for the Finnish municipality* POJO, abbreviation of Plain Old Java Object in computer programming...

    s, and including JBoss jBPM
    JBPM
    jBPM is an open-source workflow engine written in Java that can execute business processes described in BPMN 2.0 . It is released under the ASL by the JBoss community.In essence jBPM takes graphical process descriptions as input...

  • JavaServer Faces
    JavaServer Faces
    JavaServer Faces is a Java-based Web application framework intended to simplify development integration of web-based user interfaces....

     (JSF), including RichFaces
    Richfaces
    RichFaces is an open source Ajax-enabled component library for JavaServer Faces, hosted by JBoss. It allows easy integration of Ajax capabilities into enterprise application development.RichFaces is more than just a component library for JavaServer Faces...

  • Web application services, including Apache Tomcat
    Apache Tomcat
    Apache Tomcat is an open source web server and servlet container developed by the Apache Software Foundation...

     for JavaServer Pages
    JavaServer Pages
    JavaServer Pages is a Java technology that helps software developers serve dynamically generated web pages based on HTML, XML, or other document types...

     (JSP) and Java Servlet
    Java Servlet
    A servlet is a Java programming language class used to extend the capabilities of servers that host applications accessed via a request-response programming model. Although servlets can respond to any type of request, they are commonly used to extend the applications hosted by Web servers...

    s
  • Caching
    Cache
    In computer engineering, a cache is a component that transparently stores data so that future requests for that data can be served faster. The data that is stored within a cache might be values that have been computed earlier or duplicates of original values that are stored elsewhere...

    , clustering, and high availability
    High availability
    High availability is a system design approach and associated service implementation that ensures a prearranged level of operational performance will be met during a contractual measurement period....

    , including JBoss Cache, and including JNDI, RMI, and EJB types
  • Security services, including Java Authentication and Authorization Service
    Java Authentication and Authorization Service
    Java Authentication and Authorization Service, or JAAS, pronounced "Jazz", is a Java security framework for user-centric security to augment the Java code-based security...

     (JAAS) and pluggable authentication modules (PAM)
  • Web Services and interoperability, including JAX-RPC
    JAX-RPC
    Java API for XML-based RPC allows a Java application to invoke a Java-based Web Service with a known description while still being consistent with its WSDL description. It can be seen as Java RMIs over Web services. JAX-RPC 2.0 was renamed JAX-WS 2.0 . JAX-RPC 1 is deprecated with Java EE 6...

    , JAX-WS
    JAX-WS
    The Java API for XML Web Services is a Java programming language API for creating web services. It is part of the Java EE platform from Sun Microsystems. Like the other Java EE APIs, JAX-WS uses annotations, introduced in Java SE 5, to simplify the development and deployment of web service clients...

    , many WS-* standards, and MTOM/XOP
  • Integration and messaging services, including J2EE Connector Architecture (JCA), Java Database Connectivity
    Java Database Connectivity
    Java DataBase Connectivity, commonly referred to as JDBC, is an API for the Java programming language that defines how a client may access a database. It provides methods for querying and updating data in a database. JDBC is oriented towards relational databases...

     (JDBC), and Java Message Service
    Java Message Service
    The Java Message Service API is a Java Message Oriented Middleware API for sending messages between two or more clients. JMS is a part of the Java Platform, Enterprise Edition, and is defined by a specification developed under the Java Community Process as JSR 914...

     (JMS)
  • Management and Service-Oriented Architecture
    Service-oriented architecture
    In software engineering, a Service-Oriented Architecture is a set of principles and methodologies for designing and developing software in the form of interoperable services. These services are well-defined business functionalities that are built as software components that can be reused for...

     (SOA) using Java Management Extensions
    Java Management Extensions
    Java Management Extensions is a Java technology that supplies tools for managing and monitoring applications, system objects, devices and service oriented networks. Those resources are represented by objects called MBeans...

     (JMX)
  • Additional administration and monitoring features are available using JBoss Operations Network
    JBoss operations network
    JBoss Operations Network is free software/open-source Java EE-based network management software. JBoss Operations Network is part of the JBoss Enterprise Middleware portfolio of software. JBoss ON is an administration and management platform for the development, testing, deployment, and monitoring...



Key components:
  • JBoss Application Server, the framework used to support the development and implementation of applications
  • Hibernate
    Hibernate (Java)
    Hibernate is an object-relational mapping library for the Java language, providing a framework for mapping an object-oriented domain model to a traditional relational database...

    , an object/relational mapping and persistence (ORM) framework
  • JBoss Seam
    JBoss Seam
    Seam is a web application framework developed by JBoss, a division of Red Hat.- Seam 3 :Seam 3 is very active project consisting of over 50 developers and engineers, which provides a modular set of extensions to the CDI programming model...

    , a framework for building web applications
  • JBoss Web Framework Kit, for building Java applications


Lists of components, features, and standards supported are available.

Licensing and pricing

JBoss itself is open source, but Red Hat charges to provide a support subscription for JBoss Enterprise Middleware.

Related products

These products are part of the JBoss Enterprise Middleware portfolio of software, or are included with the JBoss Enterprise Application Platform software.
  • JBoss Enterprise Web Platform (or JBoss EWP)
    This software is a lighter weight version of the JBoss Enterprise Application Platform. The key components are essentially the same as the full JBoss Enterprise Application Platform, but uses a slimmed down profile of the JBoss Application Server.
    Lists of components and standards supported are available.
  • JBoss Enterprise Portal Platform (or JBoss EPP)
    This software is an enterprise portal
    Enterprise portal
    An enterprise portal, also known as an enterprise information portal or corporate portal, is a framework for integrating information, people and processes across organizational boundaries. It provides a secure unified access point, often in the form of a web-based user interface, and is designed...

     with the core portal features of presentation, master page objects, containers, and a repository, and also an optional site publisher.
    Key components:
    • JBoss Enterprise Application Platform – the software infrastructure
    • GateIn Portal – both an enterprise web portal
      Web portal
      A web portal or links page is a web site that functions as a point of access to information in the World Wide Web. A portal presents information from diverse sources in a unified way....

       and also a portal framework to build upon. GateIn Portal includes support for Web Services for Remote Portlets
      Web Services for Remote Portlets
      Web Services for Remote Portlets is an OASIS-approved network protocol standard designed for communications with remote portlets.-Overview:...

       (WSRP), Java Content Repository (JCR), Single Sign-On
      Single sign-on
      Single sign-on is a property of access control of multiple related, but independent software systems. With this property a user logs in once and gains access to all systems without being prompted to log in again at each of them...

       (SSO), and OpenSocial
      OpenSocial
      OpenSocial is a set of common application programming interfaces for web-based social network applications, developed by Google along with MySpace and a number of other social networks.It was released November 1, 2007....

       gadgets.
    • JBoss Portlet Bridge – a non-final draft implementation of the JSR-301 and JSR-329 specifications that support JavaServer Faces
      JavaServer Faces
      JavaServer Faces is a Java-based Web application framework intended to simplify development integration of web-based user interfaces....

       (JSF) within a JSR-286 portlet. This software also supports other web frameworks such as JBoss Seam
      JBoss Seam
      Seam is a web application framework developed by JBoss, a division of Red Hat.- Seam 3 :Seam 3 is very active project consisting of over 50 developers and engineers, which provides a modular set of extensions to the CDI programming model...

       and RichFaces
      Richfaces
      RichFaces is an open source Ajax-enabled component library for JavaServer Faces, hosted by JBoss. It allows easy integration of Ajax capabilities into enterprise application development.RichFaces is more than just a component library for JavaServer Faces...

       to run inside a portlet.
    • Site Publisher – web content management (optional) (by eXo
      Exo
      Exo may refer to:*Endo-exo isomerism*The Enriched Xenon Observatory neutrinoless double beta decay experiment*eXo Platform the open source software...

      )
JBoss EPP implements the standards for Portlet 2.0
Java Portlet specification
The Java Portlet Specification defines a contract between the portlet container and portlets and provides a convenient programming model for Java portlet developers.- JSR 168 :...

 (JSR-286), JCR (JSR-170), OASIS WSRP
Web Services for Remote Portlets
Web Services for Remote Portlets is an OASIS-approved network protocol standard designed for communications with remote portlets.-Overview:...

 1.0, and OpenSocial
OpenSocial
OpenSocial is a set of common application programming interfaces for web-based social network applications, developed by Google along with MySpace and a number of other social networks.It was released November 1, 2007....

.
A list of components is available.
The GateIn project is a merge of JBoss Portal 2.7 and eXo Portal
EXo Platform
eXo Platform is an open source, open standard, Enterprise-scale portal, content management system and WebOS for Microsoft Windows and Unix-like operating systems. The eXo Platform project started in 2003 as an implementation of the first portlet API . eXo Platform is developed using Java technology...

 2.5 that produced GateIn Portal 3.0, and also the related projects GateIn Portlet Container, eXo JCR, and JBoss Portlet Bridge.
  • JBoss Enterprise Web Server (or JBoss EWS)
    This software is a platform for lightweight Java applications, but also handles large scale websites. JBoss EWS may be deployed as a standard enterprise web server, a simple Java application server, or an enterprise open source application infrastructure.
    Key components:
    • Apache Tomcat
      Apache Tomcat
      Apache Tomcat is an open source web server and servlet container developed by the Apache Software Foundation...

       – including Java Servlet
      Java Servlet
      A servlet is a Java programming language class used to extend the capabilities of servers that host applications accessed via a request-response programming model. Although servlets can respond to any type of request, they are commonly used to extend the applications hosted by Web servers...

       and JavaServer Pages
      JavaServer Pages
      JavaServer Pages is a Java technology that helps software developers serve dynamically generated web pages based on HTML, XML, or other document types...

    • Apache Web Server – including common modules and connectors for authentication, caching
      Cache
      In computer engineering, a cache is a component that transparently stores data so that future requests for that data can be served faster. The data that is stored within a cache might be values that have been computed earlier or duplicates of original values that are stored elsewhere...

      , proxying
      Proxy server
      In computer networks, a proxy server is a server that acts as an intermediary for requests from clients seeking resources from other servers. A client connects to the proxy server, requesting some service, such as a file, connection, web page, or other resource available from a different server...

      , filtering, and load balancing
      Load balancing (computing)
      Load balancing is a computer networking methodology to distribute workload across multiple computers or a computer cluster, network links, central processing units, disk drives, or other resources, to achieve optimal resource utilization, maximize throughput, minimize response time, and avoid...

       (mod jk
      Mod jk
      mod_jk is the connector used to connect the Tomcat servlet container with web servers such as Apache, Netscape, iPlanet, SunOne and even IIS using the AJP protocol.In a nutshell, a web server is waiting for client HTTP requests...

      )
Lists of components and standards supported are available.
  • JBoss Web Framework Kit
    This software is a set of web frameworks used for building light and rich Java applications.
    Components:
    • Google Web Toolkit
      Google Web Toolkit
      Google Web Toolkit is an open source set of tools that allows web developers to create and maintain complex JavaScript front-end applications in Java. Other than a few native libraries, everything is Java source that can be built on any supported platform with the included GWT Ant build files...

       – framework for rich Internet applications
    • RichFaces
      Richfaces
      RichFaces is an open source Ajax-enabled component library for JavaServer Faces, hosted by JBoss. It allows easy integration of Ajax capabilities into enterprise application development.RichFaces is more than just a component library for JavaServer Faces...

       – framework for rich Internet applications
    • Spring Framework – Java framework
    • Apache Struts
      Apache Struts
      Apache Struts is an open-source web application framework for developing Java EE web applications. It uses and extends the Java Servlet API to encourage developers to adopt a model-view-controller architecture. It was originally created by Craig McClanahan and donated to the Apache Foundation in...

       – Java framework
  • JBoss Cache (or JBC)
    This software implements a cache
    Cache
    In computer engineering, a cache is a component that transparently stores data so that future requests for that data can be served faster. The data that is stored within a cache might be values that have been computed earlier or duplicates of original values that are stored elsewhere...

     for frequently accessed Java objects to improve application performance. The cache can be replicated and transactional. The cache can be replicated across one or more Java Virtual Machine
    Java Virtual Machine
    A Java virtual machine is a virtual machine capable of executing Java bytecode. It is the code execution component of the Java software platform. Sun Microsystems stated that there are over 4.5 billion JVM-enabled devices.-Overview:...

    s (JVM) across a network. The cache can be transactional because a JTA
    JTA
    JTA can refer to the following:* Jacksonville Transportation Authority* Java Transaction API* Jewish Telegraphic Agency* Japan Transocean Air* Japan Tourism Agency* Johnson Temperament Analysis* Junction tree algorithm* Japan Tennis Association...

     compliant transaction manager can be configured and make any cache interaction transactional. The two types of JBoss Cache are Core and POJO
    Pojo
    Pojo may refer to:* Pohja, the Swedish name for the Finnish municipality* POJO, abbreviation of Plain Old Java Object in computer programming...

    , with the POJO library built on top the Core library.
  • JBoss Netty
    JBoss Netty
    JBoss Netty is a New I/O client-server framework for the development of Java network applications such as protocol servers and clients. The asynchronous event-driven network application framework and tools is used to simplify network programming such as TCP and UDP socket servers. Netty includes...


    This software is a New I/O
    New I/O
    New I/O, usually called NIO, is a collection of Java programming language APIs that offer features for intensive I/O operations. It was introduced with the J2SE 1.4 release of Java by Sun Microsystems to complement an existing standard I/O. NIO was developed under the Java Community Process as JSR...

     (NIO) client-server framework
    Software framework
    In computer programming, a software framework is an abstraction in which software providing generic functionality can be selectively changed by user code, thus providing application specific software...

     for the development of Java network applications such as protocol servers and clients. The asynchronous event-driven
    Event-driven programming
    In computer programming, event-driven programming or event-based programming is a programming paradigm in which the flow of the program is determined by events—i.e., sensor outputs or user actions or messages from other programs or threads.Event-driven programming can also be defined as an...

     network application framework and tools is used to simplify network programming
    Computer network programming
    In computing, network programming, essentially identical to socket programming or client–server programming, involves writing computer programs that communicate with other programs across a computer network. The program or process initiating the communication is called a client process, and the...

     such as TCP
    Transmission Control Protocol
    The Transmission Control Protocol is one of the core protocols of the Internet Protocol Suite. TCP is one of the two original components of the suite, complementing the Internet Protocol , and therefore the entire suite is commonly referred to as TCP/IP...

     and UDP
    User Datagram Protocol
    The User Datagram Protocol is one of the core members of the Internet Protocol Suite, the set of network protocols used for the Internet. With UDP, computer applications can send messages, in this case referred to as datagrams, to other hosts on an Internet Protocol network without requiring...

     socket servers. Netty includes an implementation of the reactor pattern
    Reactor pattern
    The reactor design pattern is an event handling pattern for handling service requests delivered concurrently to a service handler by one or more inputs...

     of programming.

See also

  • List of JBoss software
  • Comparison of business integration software
    Comparison of business integration software
    This article is a comparison of business integration and business process automation software.-Scope:Scope of this comparison:* Service-oriented architecture implementations;* Message-oriented middleware and message brokers;...

  • Comparison of application servers
    Comparison of application servers
    Proprietary application servers provide system services in a well-defined but proprietary manner. The application developers develop programs according to the specification of the application server...


External links

The source of this article is wikipedia, the free encyclopedia.  The text of this article is licensed under the GFDL.
 
x
OK