570 likes | 1.45k Views
Introduction to the JBoss . Presented by: Hao Shi. Agenda. Application Servers What is JBoss JBoss features Architecture of JBoss Installation and running the server Testing the installation. Application Servers. Provide a runtime for mission-critical applications;
E N D
Introduction to the JBoss Presented by: Hao Shi
Agenda • Application Servers • What is JBoss • JBoss features • Architecture of JBoss • Installation and running the server • Testing the installation
Application Servers • Provide a runtime for mission-critical applications; • Solve the many (client) to Few (resources) problem; • User code does not have to deal with: • - security • - Transactions • -Threading • - Pooling • - Clustering • - Caching • - Connectors • - Messaging • - ……
What is JBoss • An open source J2EE server; • Founded by Marc Fleury in 1999; • Backed by a community of developers; • Yet another Java AppServer .
What made JBoss Special • Free, open-source product; professional supporting, consulting, and training - Commercial Servers at $10k - $100k • LGPL licensed - Free use/Distribute/Embed • Developer friendly - No pre – compilation steps, etc • Innovative design - Lightweight, modular, dynamic
Architectural Innovations • The JBoss Microkernel - A light weight component framework that wires together a set of services; - Services are de-coupled, innovations are routed through an internal bus;
Architectural Innovations • Aspect Oriented Design - Interceptors applied using Dynamic Proxies and traditional OOD techniques; • Instant Clustering;
JBoss Microcontainer • The JBoss Microcontainer is a refactoring of JBoss's JMX Microkernel to support direct POJO deployment and standalone use outside the JBoss application server. - All the features of the JMX Microkernel - Direct POJO deployment (no need for Standard/XMBean or MBeanProxy) - Direct IOC style dependency injection - Improved lifecycle management - Additional control over dependencies - Transparent AOP integration - Virtual File System - Virtual Deployment Framework - OSGi classloading
Jboss Today • Most used application server in Development; • 20 million downloads; • Large jboss.org community; - 250,000+ users; - 500+ contributors, over time, ~30 at any time; - 300,000 forum posts; - x10 bigger community than any open source server;
JBoss AS 5 • JEE 5 certified application server; • Based on POJO Microcontainer; - Aspectized light weight IoC container; - JMX stays, become an aspect of POJO services; • New implementations of core services; - JBoss messaging; - JBoss transactions; • JBoss SEAM; • JBoss webserver (Tomcat on steroids);
Installing JBoss AS • Prerequisites: - JDK 1.5 or above - JAVA_HOME environment variable pointing to JDK • Download the JBoss AS you want to install: • http://www.jboss.org/jbossas/download • Platform Independent Zip Archive • Extract the archive in the directory you choose • Run ( For Windows, run.bat, for Linux, run.sh);
Alternative Installation: JEMS • GUI Installer utility • Run through Java Wed Start or download and run locally: - http://www.jboss.org/jemsinstaller/downloads - ‘java -jar jems-installer-1.2.1.CR4.jar’ • Choose between different profiles; - All, Default, Minimal - EJB3, EJB3 clustered • Customize services installed; • Secure admin consoles;
Start the server • To launch an instance of JBoss run [–c <configuration>] if –c parameter is not specified, default configuration is used
Microkernel benefits for SOA architecture • Microkernel approach ideal for ISV and OEM • Easily remove the services you don’t need • Tight footprint and modular codebase and hot deploy/remove/redeploy • JBoss is a TRUE Service Oriented Architecture (SOA)
Tomcat standalone or Tomcat inside JBoss ? • Better JBoss deployer • Hot deployment • Deployment of nested archives (EARs, SARs) • Redeployment • Automatic undeployment • Advanced clustering • Integrated J2EE stack within one VM • Deployment descriptor • Optimized local calls • Integrated security • AOP in JBoss 4.0 available in Tomcat components and webapps • Easy to use class loader • Nukes
JBoss IDE • JBoss IDE is based on Eclipse. • Series of plugins for Eclipse • The debugging and monitoring of JBoss servers and the control of their life cycle (start/stop). • A very comfortable and sophisticated support for XDoclet • Support completion and generation • Support for AOP (completion and generation). • An easy way to configure and deploy the packaging layout of archives (packed or exploded)