Developing modular Java applications

Size: px
Start display at page:

Download "Developing modular Java applications"

Transcription

1 Developing modular Java applications Julien Dubois France Regional Director SpringSource

2 Julien Dubois France Regional Director, SpringSource Book author :«Spring par la pratique» (Eyrolles, 2006) new edition coming soon! 10 years of experience in Java development Member of OSSGTP

3 Agenda Wrong ideas about modular applications What you wanted to do in the first place What you should want to do : real modularity Modularity in the cloud

4 Agenda Wrong ideas about modular applications What you wanted to do in the first place What you should want to do : real modularity Modularity in the cloud

5 Modularity & layers Typical Java applications are separated in layers Presentation layer Struts, JSF, AJAX Service layer Spring beans, EJBs Repository layer Hibernate, JPA, JDBC

6 Modularity & layers Many architects want those layers to be well-separated They separate those layers physically let s do EJB 1 again! They choose Web Services as a remoting protocol performance is not an issue, we ll just add more servers As seen in the biggest French IT consulting firms, banks, telecom companies, healthcare companies, etc during the last decade. Disclaimer : I also did that kind of errors between 1999 and 2002

7 Can you spot the errors? Remoting is slow and inefficient A remoting call is several orders of magnitude slower than a local one Remoting also affects your GC time : all those remote objects are being garbage collected Adding more servers will just add more network issues Web Services is an integration pattern, not a remoting pattern. Using Web Services for doing RPC inside an application you own is a non-sense DTOs are just a pain to code they reduce developers productivity and motivation

8 So remote layers is always wrong? Remote layers is a good solution when you need it For example in the presentation layer : Swing, Adobe Flex, GWT all use RPC calls to your JEE application It works really well with Spring : making a Spring bean available remotely is just a matter of configuration (no code) Web Services are an excellent solution when you need integration of different systems Spring Web Services, Spring Integration, Mule (built on Spring) can definitely help Use the right tool for the job you want to achieve

9 Modularity is more than layers Modules can be horizontal and vertical Modules per layer : as seen in the previous slides Modules per functionality : admin module, accounting module Modules per layer is the simplest solution Good enough for smaller projects

10 Agenda Wrong ideas about modular applications What you wanted to do in the first place What you should want to do : real modularity Modularity in the cloud

11 Modularity & layers Let s do this architecture with local Java objects Presentation layer Service layer Spring beans Repository layer Hibernate, JPA, JDBC

12 Separating layers with Spring The good news : with Spring, it works out of the box! Spring even has some specific Java annotations for this for a Spring MVC controller (presentation for a Spring business bean (service for a Spring repository bean (repository layer) There are many other ways to do this with Spring Using naming conventions with component scanning Using Spring s XML configuration file

13 A business service coded with Spring package public class AccountServiceImpl implements AccountService { private public void addaccount(string login) { Account account = new Account(login); account.setpassword( changeme ); accountrepo.save(account); } This Spring Bean belongs to the Service layer Injecting a Spring bean from the Repository layer

14 Separating layers with Spring Just add your beans to your classpath (in a JAR file, for example), and you re done! Your layers are well-separated : They are in a specific Java package. Maybe even in a specific JAR file. Spring beans have annotations that tell in which layer they are. If you really need to be sure : AspectJ can check that layers work as expected, and make mistakes appear as compilation errors in Eclipse Many other tools can check that your layers are well-separated

15 Separating layers with Spring The code we have seen is : Easy to code and test Very performant in production Still well-separated in layers You do not need to physically separate your layers to have a layered application This is beyond this presentation s scope, but we can go one step further by looking at Spring s hierarchical application contexts (by default, the presentation layer is a child of the service+repository layers)

16 Agenda Wrong ideas about modular applications What you wanted to do in the first place What you should want to do : real modularity Modularity in the cloud

17 The problem with the previous slides However, what we have just done is a monolithic application Everything is put into a single deployment unit (a WAR file) What you want as a developer is : Updating your application at runtime, and not redeploy your WAR file all the time What your users want is : New functionalities hot deployed at runtime High availability Changing some Java code at runtime is not possible with a traditional Java application server

18 Enter Groovy Solution #1 : Groovy Groovy is a dynamic language, inspired by Python and Ruby But it runs inside the JVM It can access all your Java components Spring beans can be coded in Groovy Spring & Groovy work very well together Groovy development being led by SpringSource employees!

19 Groovy by example class HelloWorld { String name String greet() { Hello $name } } def helloworld = new HelloWorld(name: Groovy ) println helloworld.greet()

20 Using Groovy at runtime A Spring Bean can be coded in Groovy It benefits from all Spring features : AOP, security, transactions It benefits from all JEE features : JPA This Bean is a script, and can be changed at runtime Many organizations use Groovy to write business rules that change during production time Hot deployment on the server, depending on the users needs

21 Groovy summary Groovy is great to dynamically update your application at runtime It s also a very interesting & productive language per se But we have just seen a dynamic language, not dynamic modules

22 Enter SpringSource dm Server Solution #2 : SpringSource dm Server The short version : it s Spring, Tomcat and OSGi working all together Allows powerful and modular applications + +

23 What is OSGi? OSGi is a specification Used since many years in the telecom industry With several implementations in Java : for instance Equinox, which is the basis of the Eclipse IDE

24 It's a module system Partition a system into a number of modules "bundles Strict visibility rules Resolution process satisfies dependencies of a module Understands versioning

25 It's dynamic Modules can be installed started stopped uninstalled updated...at runtime

26 It's even service-oriented Bundles can publish services dynamically Service Registry allows other bundles to find services and to bind to them Services come and go at runtime, all taken care of for you

27 Introducing Spring Dynamic Modules Spring Dynamic Modules is a Spring project, backed by SpringSource Helps using OSGi with Spring Makes it easy to export a Spring Bean to the OSGi registry Makes it easy to inject a Spring Bean from another bundle <beans...> <osgi:service ref="customerdao" interface="dao.icustomerdao" /> <osgi:reference id="datasource" interface="javax.sql.datasource" /> </beans>

28 Doing OSGi bundles Doing a module with Spring Dynamic Modules is easy Put your configuration files in /META-INF/spring They are automatically merged..and a Spring ApplicationContext is created It is extremely easy to achieve our architectural goals with this solution As long as you have an application server that supports OSGi

29 Why another application server? Most application server vendors base their systems on OSGi But none offers OSGi as a programming model for the customer Why shouldn't the customer be as empowered as the application server vendor?

30 So, what does dm Server do? dm Server allows you to use OSGi-based applications, running in an application server :

31 Features for developers For developers : A truly modular architecture : secured modules, with a well-defined lifecycle Hot-deployment of modules during development time : you only work on your module, not on the whole application The complexity of OSGi is hidden by dm Server : doing a modular application is easy, knowledge of the OSGi APIs and specificities is not a requirement

32 Features for production For the production team : Hot deployment of modules of the application at runtime : lower downtime Several versions of the same module can be deployed in parallel Better usage of the server resources : dm Server only loads modules that are actually needed!

33 dm Server summary dm Server is the only application server that gives the power of OSGi to development and production teams dm Server is built on standard, widely used, Open Source components : Spring, Tomcat, Equinox Of course, dm Server is free software (GPL v3), so why don t you start writing applications with it?

34 Agenda Wrong ideas about modular applications What you wanted to do in the first place What you should want to do : real modularity Modularity in the cloud

35 Clustering The idea is to separate the load on several identical nodes Apache Tomcat Apache Tomcat Apache httpd Apache Tomcat Apache Tomcat Apache Tomcat

36 Cloud computing Experience shows that clusters are often widely under-utilized Because you don t need all the nodes all the time. Cloud computing allows renting computing power on demand You can rent servers per hour with : Amazon EC2, Google AppEngine, Gandi Flex (in France) Companies datacenters are moving to VMWare for this reason This can be far less expensive than a traditional cluster as long as : You can monitor your load properly You can estimate your needs in advance (launching a new EC2 instance can take a few minutes)

37 Tomcat & dm Server in the cloud You can already run Tomcat and dm Server on the cloud Amazon EC2 & Gandi Flex just provide the hardware This is called IaaS (Infrastructure As A Service) - you can run any Java program there! SpringSource provides tools to monitor and manage Spring, Tomcat and dm Server at runtime In the future, those tools will evolve to be able to do provisionning : dynamically adjust the number of running nodes depending on the load SpringSource is working with VMWare : virtualized instances of Tomcat and dm Server

38 The big picture Node Node Node Node Node Module

39 Summary Web applications should be split into modules : Vertically : module per layer Horizontally : module per functionality If you want to split your application in modules at build time, Spring provides an excellent solution out of the box there s no need to go for more complex (and inferior) solutions If you want to split your applications in modules that can be updated at runtime, dm Server and Groovy offer two excellent solutions Be ready for the future : cloud computing offers un-beatable scalability and costs.

40 Questions? Julien Dubois

Operations and Monitoring with Spring

Operations and Monitoring with Spring Operations and Monitoring with Spring Eberhard Wolff Regional Director and Principal Consultant SpringSource Copyright 2009 SpringSource. Copying, publishing or distributing without express written permission

More information

Rapid Application Development. and Application Generation Tools. Walter Knesel

Rapid Application Development. and Application Generation Tools. Walter Knesel Rapid Application Development and Application Generation Tools Walter Knesel 5/2014 Java... A place where many, many ideas have been tried and discarded. A current problem is it's success: so many libraries,

More information

FUSE-ESB4 An open-source OSGi based platform for EAI and SOA

FUSE-ESB4 An open-source OSGi based platform for EAI and SOA FUSE-ESB4 An open-source OSGi based platform for EAI and SOA Introduction to FUSE-ESB4 It's a powerful OSGi based multi component container based on ServiceMix4 http://servicemix.apache.org/smx4/index.html

More information

IBM WebSphere Server Administration

IBM WebSphere Server Administration IBM WebSphere Server Administration This course teaches the administration and deployment of web applications in the IBM WebSphere Application Server. Duration 24 hours Course Objectives Upon completion

More information

WebSphere Server Administration Course

WebSphere Server Administration Course WebSphere Server Administration Course Chapter 1. Java EE and WebSphere Overview Goals of Enterprise Applications What is Java? What is Java EE? The Java EE Specifications Role of Application Server What

More information

Framework Adoption for Java Enterprise Application Development

Framework Adoption for Java Enterprise Application Development Framework Adoption for Java Enterprise Application Development Clarence Ho Independent Consultant, Author, Java EE Architect http://www.skywidesoft.com clarence@skywidesoft.com Presentation can be downloaded

More information

CHAPTER 1 - JAVA EE OVERVIEW FOR ADMINISTRATORS

CHAPTER 1 - JAVA EE OVERVIEW FOR ADMINISTRATORS CHAPTER 1 - JAVA EE OVERVIEW FOR ADMINISTRATORS Java EE Components Java EE Vendor Specifications Containers Java EE Blueprint Services JDBC Data Sources Java Naming and Directory Interface Java Message

More information

White Paper: 1) Architecture Objectives: The primary objective of this architecture is to meet the. 2) Architecture Explanation

White Paper: 1) Architecture Objectives: The primary objective of this architecture is to meet the. 2) Architecture Explanation White Paper: 1) Architecture Objectives: The primary objective of this architecture is to meet the following requirements (SLAs). Scalability and High Availability Modularity and Maintainability Extensibility

More information

Converting Java EE Applications into OSGi Applications

Converting Java EE Applications into OSGi Applications Converting Java EE Applications into OSGi Applications Author: Nichole Stewart Date: Jan 27, 2011 2010 IBM Corporation THE INFORMATION CONTAINED IN THIS REPORT IS PROVIDED FOR INFORMATIONAL PURPOSES ONLY.

More information

Course Description. Course Audience. Course Outline. Course Page - Page 1 of 5

Course Description. Course Audience. Course Outline. Course Page - Page 1 of 5 Course Page - Page 1 of 5 WebSphere Application Server 7.0 Administration on Windows BSP-1700 Length: 5 days Price: $ 2,895.00 Course Description This course teaches the basics of the administration and

More information

Building a Modular Server Platform with OSGi. Dileepa Jayakody Software Engineer SSWSO2 Inc.

Building a Modular Server Platform with OSGi. Dileepa Jayakody Software Engineer SSWSO2 Inc. Building a Modular Server Platform with OSGi Dileepa Jayakody Software Engineer SSWSO2 Inc. Outline Complex Systems OSGi for Modular Systems OSGi in SOA middleware Carbon : A modular server platform for

More information

Learning GlassFish for Tomcat Users

Learning GlassFish for Tomcat Users Learning GlassFish for Tomcat Users White Paper February 2009 Abstract There is a direct connection between the Web container technology used by developers and the performance and agility of applications.

More information

GlassFish v3. Building an ex tensible modular Java EE application server. Jerome Dochez and Ludovic Champenois Sun Microsystems, Inc.

GlassFish v3. Building an ex tensible modular Java EE application server. Jerome Dochez and Ludovic Champenois Sun Microsystems, Inc. GlassFish v3 Building an ex tensible modular Java EE application server Jerome Dochez and Ludovic Champenois Sun Microsystems, Inc. Agenda Java EE 6 and GlassFish V3 Modularity, Runtime Service Based Architecture

More information

Oracle WebLogic Server 11g Administration

Oracle WebLogic Server 11g Administration Oracle WebLogic Server 11g Administration This course is designed to provide instruction and hands-on practice in installing and configuring Oracle WebLogic Server 11g. These tasks include starting and

More information

PHP vs. Java. In this paper, I am not discussing following two issues since each is currently hotly debated in various communities:

PHP vs. Java. In this paper, I am not discussing following two issues since each is currently hotly debated in various communities: PHP vs. Java *This document reflects my opinion about PHP and Java. I have written this without any references. Let me know if there is a technical error. --Hasari Tosun It isn't correct to compare Java

More information

<Insert Picture Here> GlassFish v3 - A Taste of a Next Generation Application Server

<Insert Picture Here> GlassFish v3 - A Taste of a Next Generation Application Server GlassFish v3 - A Taste of a Next Generation Application Server Peter Doschkinow Senior Java Architect Agenda GlassFish overview and positioning GlassFish v3 architecture Features

More information

Client Overview. Engagement Situation. Key Requirements for Platform Development :

Client Overview. Engagement Situation. Key Requirements for Platform Development : Client Overview Our client is the leading provider of software solutions for providing online and easy access to health insurance. Our client offers these services to a range of consumers from employees

More information

OSGi Technology for Developers DECEMBER 2013

OSGi Technology for Developers DECEMBER 2013 OSGi Technology for Developers DECEMBER 2013 Developers What Java Developers Tell Us Java [alone] does not make it easy to do modular development, i.e., classpath JAR hell I need to offer new products

More information

UNIVERSITY OF ILLINOIS AT CHICAGO University of Illinois Ready

UNIVERSITY OF ILLINOIS AT CHICAGO University of Illinois Ready UNIVERSITY OF ILLINOIS AT CHICAGO University of Illinois Ready Kuali Ready & University of Illinois Ready Web-Based System adopted by all three campuses of the University of Illinois system Step by step

More information

EBA Procurement Procedure for the Supply of Website Services 2016: Annex 1 System Architecture Document SYSTEM ARCHITECTURE DOCUMENT

EBA Procurement Procedure for the Supply of Website Services 2016: Annex 1 System Architecture Document SYSTEM ARCHITECTURE DOCUMENT EBA Procurement Procedure for the Supply of Website Services 2016: Annex 1 System Architecture Document SYSTEM ARCHITECTURE DOCUMENT Contents 1. Introduction 1 1.1 Purpose 1 2. Liferay Architecture 2 2.1

More information

Efficient Monitoring of OSGi Applications

Efficient Monitoring of OSGi Applications Degree project Efficient Monitoring of OSGi Applications Author: Portero Aníbal Supervisor: Abbas Nadeem Date: 2013-08-27 Course Code: 2DV00E, 15 credits Level: Bachelor Department of Computer Science

More information

OUR COURSES 19 November 2015. All prices are per person in Swedish Krona. Solid Beans AB Kungsgatan 32 411 19 Göteborg Sweden

OUR COURSES 19 November 2015. All prices are per person in Swedish Krona. Solid Beans AB Kungsgatan 32 411 19 Göteborg Sweden OUR COURSES 19 November 2015 Solid Beans AB Kungsgatan 32 411 19 Göteborg Sweden Java for beginners JavaEE EJB 3.1 JSF (Java Server Faces) PrimeFaces Spring Core Spring Advanced Maven One day intensive

More information

What means extensibility?

What means extensibility? Extendable Web Technologies focused on JAVA Technology Juli 2006 Robert Schmelzer, DI(FH) E-Mail: robert@schmelzer.cc Web: http://www.schmelzer.cc Extendable Web Technologies - 1 What means extensibility?...extensibility

More information

Beyond the SOA/BPM frontiers Towards a complete open cooperative environment

Beyond the SOA/BPM frontiers Towards a complete open cooperative environment Beyond the SOA/BPM frontiers Towards a complete open cooperative environment This presentation has been used during a webinar delivered within SpagoWorld Webinar Center: http://www.spagoworld.org/xwiki/bin/view/spagoworld/webinarcenter

More information

Enterprise Application Development In Java with AJAX and ORM

Enterprise Application Development In Java with AJAX and ORM Enterprise Application Development In Java with AJAX and ORM ACCU London March 2010 ACCU Conference April 2010 Paul Grenyer Head of Software Engineering p.grenyer@validus-ivc.co.uk http://paulgrenyer.blogspot.com

More information

The future of middleware: enterprise application integration and Fuse

The future of middleware: enterprise application integration and Fuse The future of middleware: enterprise application integration and Fuse Giuseppe Brindisi EMEA Solution Architect/Red Hat AGENDA Agenda Build an enterprise application integration platform that is: Resilient

More information

Google Web Toolkit (GWT) Architectural Impact on Enterprise Web Application

Google Web Toolkit (GWT) Architectural Impact on Enterprise Web Application Google Web Toolkit (GWT) Architectural Impact on Enterprise Web Application First Generation HTTP request (URL or Form posting) W HTTP response (HTML Document) W Client Tier Server Tier Data Tier Web CGI-Scripts

More information

WebSphere Training Outline

WebSphere Training Outline WEBSPHERE TRAINING WebSphere Training Outline WebSphere Platform Overview o WebSphere Product Categories o WebSphere Development, Presentation, Integration and Deployment Tools o WebSphere Application

More information

Open Source SOA with Service Component Architecture and Apache Tuscany. Jean-Sebastien Delfino Mario Antollini Raymond Feng

Open Source SOA with Service Component Architecture and Apache Tuscany. Jean-Sebastien Delfino Mario Antollini Raymond Feng Open Source SOA with Service Component Architecture and Apache Tuscany Jean-Sebastien Delfino Mario Antollini Raymond Feng Learn how to build and deploy Composite Service Applications using Service Component

More information

OSGi Technology for System and Network Architects DECEMBER 2013

OSGi Technology for System and Network Architects DECEMBER 2013 OSGi Technology for System and Network Architects DECEMBER 2013 System and Network Architects Quick introduction to OSGi technology It s a module system for Java Includes visibility rules, dependency management

More information

Migrating Applications From IBM WebSphere to Apache Tomcat

Migrating Applications From IBM WebSphere to Apache Tomcat Migrating Applications From IBM WebSphere to Apache Tomcat MuleSource and the MuleSource logo are trademarks of MuleSource Inc. in the United States and/or other countries. All other product and company

More information

Introducing Apache Pivot. Greg Brown, Todd Volkert 6/10/2010

Introducing Apache Pivot. Greg Brown, Todd Volkert 6/10/2010 Introducing Apache Pivot Greg Brown, Todd Volkert 6/10/2010 Speaker Bios Greg Brown Senior Software Architect 15 years experience developing client and server applications in both services and R&D Apache

More information

Running and Testing Java EE Applications in Embedded Mode with JupEEter Framework

Running and Testing Java EE Applications in Embedded Mode with JupEEter Framework JOURNAL OF APPLIED COMPUTER SCIENCE Vol. 21 No. 1 (2013), pp. 53-69 Running and Testing Java EE Applications in Embedded Mode with JupEEter Framework Marcin Kwapisz 1 1 Technical University of Lodz Faculty

More information

Customer Bank Account Management System Technical Specification Document

Customer Bank Account Management System Technical Specification Document Customer Bank Account Management System Technical Specification Document Technical Specification Document Page 1 of 15 Table of Contents Contents 1 Introduction 3 2 Design Overview 4 3 Topology Diagram.6

More information

Java/J2EE or Web Developer. Formal Education. Technical knowledge. Spoken Languages

Java/J2EE or Web Developer. Formal Education. Technical knowledge. Spoken Languages Jonathan ROUSSEAU 27 years old (3 rd of February 1983) Bruyères, 15/A 4950 Waimes +32 (473) 69 82 42 Jrousseau.webco@gmail.com http://www.jrousseau.be Java/J2EE or Web Developer Formal Education 2000:

More information

Server-side OSGi with Apache Sling. Felix Meschberger Day Management AG 124

Server-side OSGi with Apache Sling. Felix Meschberger Day Management AG 124 Server-side OSGi with Apache Sling Felix Meschberger Day Management AG 124 About Felix Meschberger > Senior Developer, Day Management AG > fmeschbe@day.com > http://blog.meschberger.ch > VP Apache Sling

More information

Building Web Services with Apache Axis2

Building Web Services with Apache Axis2 2009 Marty Hall Building Web Services with Apache Axis2 Part I: Java-First (Bottom-Up) Services Customized Java EE Training: http://courses.coreservlets.com/ Servlets, JSP, Struts, JSF/MyFaces/Facelets,

More information

Aspect Weaving for OSGi. Martin Lippert (akquinet it-agile GmbH)

Aspect Weaving for OSGi. Martin Lippert (akquinet it-agile GmbH) Aspect Weaving for OSGi Martin Lippert (akquinet it-agile GmbH) 2008 by Martin Lippert; made available under Creative Commons Att. Nc Nd 2.5 license October 21 st + 23 rd, 2008 Aspect-oriented programming

More information

Creating an application with the Virgo Web Server

Creating an application with the Virgo Web Server Creating an application with the Virgo Web Server GreenPages: a demonstration Christopher Frost Ben Hale Rob Harrop Glyn Normington Steve Powell Andy Wilkinson 2.1.0.M02-incubation Abstract Spring application

More information

ITG Software Engineering

ITG Software Engineering IBM WebSphere Administration 8.5 Course ID: Page 1 Last Updated 12/15/2014 WebSphere Administration 8.5 Course Overview: This 5 Day course will cover the administration and configuration of WebSphere 8.5.

More information

What s new in Spring 3.1?

What s new in Spring 3.1? What s new in Spring 3.1? Arjen Poutsma @poutsma SpringSource - a division of VMware 1 Overview Spring 3.0 Spring 3.1 Release Schedule 2 Spring 3.0 3 Spring 3.0 Themes Java 5+ Spring Expression Language

More information

SCA & SDO Implementations Open Source and Vendor Products

SCA & SDO Implementations Open Source and Vendor Products SCA & SDO Implementations Open Source and Vendor Products Mike Edwards IBM Hursley Park 29/05/2007 Implementations of SCA and SDO Open Source Runtime Implementations Vendor Runtime Implementations Open

More information

DESIGN OF A PLATFORM OF VIRTUAL SERVICE CONTAINERS FOR SERVICE ORIENTED CLOUD COMPUTING. Carlos de Alfonso Andrés García Vicente Hernández

DESIGN OF A PLATFORM OF VIRTUAL SERVICE CONTAINERS FOR SERVICE ORIENTED CLOUD COMPUTING. Carlos de Alfonso Andrés García Vicente Hernández DESIGN OF A PLATFORM OF VIRTUAL SERVICE CONTAINERS FOR SERVICE ORIENTED CLOUD COMPUTING Carlos de Alfonso Andrés García Vicente Hernández 2 INDEX Introduction Our approach Platform design Storage Security

More information

JBS-102: Jboss Application Server Administration. Course Length: 4 days

JBS-102: Jboss Application Server Administration. Course Length: 4 days JBS-102: Jboss Application Server Administration Course Length: 4 days Course Description: Course Description: JBoss Application Server Administration focuses on installing, configuring, and tuning the

More information

Kohsuke Kawaguchi Sun Microsystems, Inc. hk2.dev.java.net, glassfish.dev.java.net. Session ID

Kohsuke Kawaguchi Sun Microsystems, Inc. hk2.dev.java.net, glassfish.dev.java.net. Session ID 1 Kohsuke Kawaguchi Sun Microsystems, Inc. hk2.dev.java.net, glassfish.dev.java.net Session ID 2 What s GlassFish v3? JavaEE 6 API for REST (JAX-RS) Better web framework support (Servlet 3.0) WebBeans,

More information

Jenkins User Conference Herzelia, July 5 2012 #jenkinsconf. Testing a Large Support Matrix Using Jenkins. Amir Kibbar HP http://hp.

Jenkins User Conference Herzelia, July 5 2012 #jenkinsconf. Testing a Large Support Matrix Using Jenkins. Amir Kibbar HP http://hp. Testing a Large Support Matrix Using Jenkins Amir Kibbar HP http://hp.com/go/oo About Me! 4.5 years with HP! Almost 3 years System Architect! Out of which 1.5 HP OO s SA! Before that a Java consultant

More information

Drive new Revenue With PaaS/IaaS. Ruslan Synytsky CTO, Jelastic

Drive new Revenue With PaaS/IaaS. Ruslan Synytsky CTO, Jelastic Drive new Revenue With PaaS/IaaS Ruslan Synytsky CTO, Jelastic 2 MISSING OUT ON CLOUD OPPORTUNITY? Many hosters today are missing out on a massive opportunity to provide an Amazon-beating public cloud

More information

Java EE 6 development with Eclipse, Netbeans, IntelliJ and GlassFish. Ludovic Champenois Oracle Corporation

Java EE 6 development with Eclipse, Netbeans, IntelliJ and GlassFish. Ludovic Champenois Oracle Corporation Java EE 6 development with Eclipse, Netbeans, IntelliJ and GlassFish Ludovic Champenois Oracle Corporation The following is intended to outline our general product direction. It is intended for information

More information

Client Overview. Engagement Situation. Key Requirements for Platform Development :

Client Overview. Engagement Situation. Key Requirements for Platform Development : Client Overview Our client provides leading video platform for enterprise HD video conferencing and has product suite focused on product-based visual communication solutions. Our client leverages its solutions

More information

Bringing Open Choice & Application

Bringing Open Choice & Application Red Hat PaaS: Bringing Open Choice & Application Portability to the Cloud Take full advantage of clouds with JBoss Enterprise Middleware. Reduce costs and cycle times, ease development, and increase flexibility

More information

Java in Web 2.0. Alexis Roos Principal Field Technologist, CTO Office OEM SW Sales Sun Microsystems, Inc.

Java in Web 2.0. Alexis Roos Principal Field Technologist, CTO Office OEM SW Sales Sun Microsystems, Inc. Java in Web 2.0 Alexis Roos Principal Field Technologist, CTO Office OEM SW Sales Sun Microsystems, Inc. 1 Agenda Java overview Technologies supported by Java Platform to create Web 2.0 services Future

More information

OSGi Remote Management

OSGi Remote Management OSGi Remote Management INCREASE OUR Date 20-11-2006 Miguel García Longarón - mgl@tid.es Present situation OSGi is being applied in several domains Each domain has own solution for remote management Home

More information

Glassfish Architecture.

Glassfish Architecture. Glassfish Architecture. First part Introduction. Over time, GlassFish has evolved into a server platform that is much more than the reference implementation of the Java EE specifcations. It is now a highly

More information

ARM-BASED PERFORMANCE MONITORING FOR THE ECLIPSE PLATFORM

ARM-BASED PERFORMANCE MONITORING FOR THE ECLIPSE PLATFORM ARM-BASED PERFORMANCE MONITORING FOR THE ECLIPSE PLATFORM Ashish Patel, Lead Eclipse Committer for ARM, IBM Corporation Oliver E. Cole, President, OC Systems, Inc. The Eclipse Test and Performance Tools

More information

Eclipse Summit Europe 2008

Eclipse Summit Europe 2008 RT Symposium at Eclipse Summit Europe 2008 organized by Jeff McAffer (Code9) Heiko Seeberger (WeigleWilczek) Martin Lippert (it-agile) 2008 by Jeff McAffer, Heiko Seeberger, Martin Lippert; made available

More information

Case Studies of Running the Platform. NetBeans UML Servlet JSP GlassFish EJB

Case Studies of Running the Platform. NetBeans UML Servlet JSP GlassFish EJB September Case Studies of Running the Platform NetBeans UML Servlet JSP GlassFish EJB In this project we display in the browser the Hello World, Everyone! message created in the session bean with servlets

More information

Portals, Portlets & Liferay Platform

Portals, Portlets & Liferay Platform Portals, Portlets & Liferay Platform Repetition: Web Applications and Model View Controller (MVC) Design Pattern Web Applications Frameworks in J2EE world Struts Spring Hibernate Data Service Java Server

More information

White Paper. Cloud Native Advantage: Multi-Tenant, Shared Container PaaS. http://wso2.com Version 1.1 (June 19, 2012)

White Paper. Cloud Native Advantage: Multi-Tenant, Shared Container PaaS. http://wso2.com Version 1.1 (June 19, 2012) Cloud Native Advantage: Multi-Tenant, Shared Container PaaS Version 1.1 (June 19, 2012) Table of Contents PaaS Container Partitioning Strategies... 03 Container Tenancy... 04 Multi-tenant Shared Container...

More information

Nuxeo, an open source platform for content-centric business applications. Stéfane Fermigier, Nuxeo Laurent Doguin, Nuxeo

Nuxeo, an open source platform for content-centric business applications. Stéfane Fermigier, Nuxeo Laurent Doguin, Nuxeo Nuxeo, an open source platform for content-centric business applications Stéfane Fermigier, Nuxeo Laurent Doguin, Nuxeo Nuxeo, the Company Providing an Open Source Content Management Platform for Business

More information

OXAGILE RESUMES SUMMARY OF QUALIFICATIONS TECHNICAL SKILLS SENIOR JAVA SOFTWARE ENGINEER

OXAGILE RESUMES SUMMARY OF QUALIFICATIONS TECHNICAL SKILLS SENIOR JAVA SOFTWARE ENGINEER OXAGILE RESUMES SENIOR JAVA SOFTWARE ENGINEER SUMMARY OF QUALIFICATIONS Over 4 years of solid experience in software development, application programming and engineering Strong expertise in J2EE architectures,

More information

NetBeans IDE Field Guide

NetBeans IDE Field Guide NetBeans IDE Field Guide Copyright 2005 Sun Microsystems, Inc. All rights reserved. Table of Contents Introduction to J2EE Development in NetBeans IDE...1 Configuring the IDE for J2EE Development...2 Getting

More information

Outline SOA. Properties of SOA. Service 2/19/2016. Definitions. Comparison of component technologies. Definitions Component technologies

Outline SOA. Properties of SOA. Service 2/19/2016. Definitions. Comparison of component technologies. Definitions Component technologies Szolgáltatásorientált rendszerintegráció Comparison of component technologies Simon Balázs, BME IIT Outline Definitions Component technologies RPC, RMI, CORBA, COM+,.NET, Java, OSGi, EJB, SOAP web services,

More information

Service Component Architecture, Apache Tuscany & WebSphere SOA Feature Pack Beta

Service Component Architecture, Apache Tuscany & WebSphere SOA Feature Pack Beta Service Component Architecture, Apache Tuscany & WebSphere SOA Feature Pack Beta Simon Laws Open Source SOA WebSphere UK User Group 3/11/2008 2008 IBM Corporation IBM Corporation 2008. All Rights Reserved.

More information

How to Build an E-Commerce Application using J2EE. Carol McDonald Code Camp Engineer

How to Build an E-Commerce Application using J2EE. Carol McDonald Code Camp Engineer How to Build an E-Commerce Application using J2EE Carol McDonald Code Camp Engineer Code Camp Agenda J2EE & Blueprints Application Architecture and J2EE Blueprints E-Commerce Application Design Enterprise

More information

OpenShift is FanPaaStic For Java EE. By Shekhar Gulati Promo Code JUDCON.IN

OpenShift is FanPaaStic For Java EE. By Shekhar Gulati Promo Code JUDCON.IN OpenShift is FanPaaStic For Java EE By Shekhar Gulati Promo Code JUDCON.IN About Me ~ Shekhar Gulati OpenShift Evangelist at Red Hat Hands on developer Speaker Writer and Blogger Twitter @ shekhargulati

More information

3 Techniques for Database Scalability with Hibernate. Geert Bevin - @gbevin - SpringOne 2009

3 Techniques for Database Scalability with Hibernate. Geert Bevin - @gbevin - SpringOne 2009 3 Techniques for Database Scalability with Hibernate Geert Bevin - @gbevin - SpringOne 2009 Goals Learn when to use second level cache Learn when to detach your conversations Learn about alternatives to

More information

Deploying to WebSphere Process Server and WebSphere Enterprise Service Bus

Deploying to WebSphere Process Server and WebSphere Enterprise Service Bus Deploying to WebSphere Process Server and WebSphere Enterprise Service Bus Course materials may not be reproduced in whole or in part without the prior written permission of IBM. 4.0.3 Unit objectives

More information

This training is targeted at System Administrators and developers wanting to understand more about administering a WebLogic instance.

This training is targeted at System Administrators and developers wanting to understand more about administering a WebLogic instance. This course teaches system/application administrators to setup, configure and manage an Oracle WebLogic Application Server, its resources and environment and the Java EE Applications running on it. This

More information

Introduction to Sun ONE Application Server 7

Introduction to Sun ONE Application Server 7 Introduction to Sun ONE Application Server 7 The Sun ONE Application Server 7 provides a high-performance J2EE platform suitable for broad deployment of application services and web services. It offers

More information

DTWMS Required Software Engineers. 1. Senior Java Programmer (3 Positions) Responsibilities:

DTWMS Required Software Engineers. 1. Senior Java Programmer (3 Positions) Responsibilities: DTWMS Required Software Engineers 1. Senior Java Programmer (3 Positions) Responsibilities: Responsible to deliver quality software solutions using standard end to end software development cycle Collaborate

More information

White Paper: Why Upgrade from WebSphere Application Server (WAS) v7 to v8.x?

White Paper: Why Upgrade from WebSphere Application Server (WAS) v7 to v8.x? White Paper: Why Upgrade from WebSphere Application Server (WAS) v7 to v8.x? By TxMQ Publishing Services. 1430B Millersport Highway Williamsville, NY 14221 +1 (716) 636-0070 TxMQ.com consulting@txmq.com

More information

WEBSPHERE APPLICATION SERVER ADMIN V8.5 (on Linux and Windows) WITH REAL-TIME CONCEPTS & REAL-TIME PROJECT

WEBSPHERE APPLICATION SERVER ADMIN V8.5 (on Linux and Windows) WITH REAL-TIME CONCEPTS & REAL-TIME PROJECT WEBSPHERE APPLICATION SERVER ADMIN V8.5 (on Linux and Windows) WITH REAL-TIME CONCEPTS & REAL-TIME PROJECT Faculty Name Experience Course Duration Madhav (Certified Middleware Professional) Certified on

More information

IBM Proof of Technology Discovering business application services, featuring IBM WebSphere Application Server Network Deployment V8

IBM Proof of Technology Discovering business application services, featuring IBM WebSphere Application Server Network Deployment V8 IBM Proof of Technology Discovering business application services, featuring IBM WebSphere Application Server Network Deployment V8 Proof of Technology Introduction Welcome and Introductions Agenda Service

More information

WebSphere v5 Administration, Network Deployment Edition

WebSphere v5 Administration, Network Deployment Edition WebSphere v5 Administration, Network Deployment Edition Loading Java Classes Web Age Solutions, Inc. 2003 6-32 Class Loader A class loader is a Java class that loads compiled Java byte code of other classes.

More information

Lessons learned from a large scale OSGi web app. Jago de Vreede Paul Bakker

Lessons learned from a large scale OSGi web app. Jago de Vreede Paul Bakker Lessons learned from a large scale OSGi web app Jago de Vreede Paul Bakker Paul Bakker @pbakker Jago de Vreede Agenda! High level architecture Modular architecture Modularity with OSGi Cloud deployments

More information

Oracle WebLogic Foundation of Oracle Fusion Middleware. Lawrence Manickam Toyork Systems Inc www.toyork.com http://ca.linkedin.

Oracle WebLogic Foundation of Oracle Fusion Middleware. Lawrence Manickam Toyork Systems Inc www.toyork.com http://ca.linkedin. Oracle WebLogic Foundation of Oracle Fusion Middleware Lawrence Manickam Toyork Systems Inc www.toyork.com http://ca.linkedin.com/in/lawrence143 History of WebLogic WebLogic Inc started in 1995 was a company

More information

The Java EE 6 Platform. Alexis Moussine-Pouchkine GlassFish Team

The Java EE 6 Platform. Alexis Moussine-Pouchkine GlassFish Team The Java EE 6 Platform Alexis Moussine-Pouchkine GlassFish Team This is no science fiction Java EE 6 and GlassFish v3 shipped final releases on December 10 th 2009 A brief History Project JPE Enterprise

More information

Consuming and Producing Web Services with WST and JST. Christopher M. Judd. President/Consultant Judd Solutions, LLC

Consuming and Producing Web Services with WST and JST. Christopher M. Judd. President/Consultant Judd Solutions, LLC Consuming and Producing Web Services with WST and JST Christopher M. Judd President/Consultant Judd Solutions, LLC Christopher M. Judd President/Consultant of Judd Solutions Central Ohio Java User Group

More information

Understanding class paths in Java EE projects with Rational Application Developer Version 8.0

Understanding class paths in Java EE projects with Rational Application Developer Version 8.0 Understanding class paths in Java EE projects with Rational Application Developer Version 8.0 by Neeraj Agrawal, IBM This article describes a variety of class path scenarios for Java EE 1.4 projects and

More information

Put a Firewall in Your JVM Securing Java Applications!

Put a Firewall in Your JVM Securing Java Applications! Put a Firewall in Your JVM Securing Java Applications! Prateep Bandharangshi" Waratek Director of Client Security Solutions" @prateep" Hussein Badakhchani" Deutsche Bank Ag London Vice President" @husseinb"

More information

WELCOME TO Open Source Enterprise Architecture

WELCOME TO Open Source Enterprise Architecture WELCOME TO Open Source Enterprise Architecture WELCOME TO An overview of Open Source Enterprise Architecture In the integration domain Who we are Fredrik Hilmersson Petter Nordlander Why Open Source Integration

More information

Apache Jakarta Tomcat

Apache Jakarta Tomcat Apache Jakarta Tomcat 20041058 Suh, Junho Road Map 1 Tomcat Overview What we need to make more dynamic web documents? Server that supports JSP, ASP, database etc We concentrates on Something that support

More information

The Virtualization Practice

The Virtualization Practice The Virtualization Practice White Paper: Managing Applications in Docker Containers Bernd Harzog Analyst Virtualization and Cloud Performance Management October 2014 Abstract Docker has captured the attention

More information

The Virtualization Practice

The Virtualization Practice The Virtualization Practice White Paper: Application Performance Management for the modern Agile and Cloud worlds Bernd Harzog Analyst Performance and Capacity Management The Virtualization Practice July

More information

Glassfish, JAVA EE, Servlets, JSP, EJB

Glassfish, JAVA EE, Servlets, JSP, EJB Glassfish, JAVA EE, Servlets, JSP, EJB Java platform A Java platform comprises the JVM together with supporting class libraries. Java 2 Standard Edition (J2SE) (1999) provides core libraries for data structures,

More information

Architecture Rules Enforcement and Governance Using Aspects

Architecture Rules Enforcement and Governance Using Aspects Architecture Rules Enforcement and Governance Using Aspects Srini Penchikala SATURN 2009 About the Speaker Enterprise Architect Writer, Speaker, Editor (InfoQ) Detroit Java User Group Leader Working with

More information

enterprise^ IBM WebSphere Application Server v7.0 Security "publishing Secure your WebSphere applications with Java EE and JAAS security standards

enterprise^ IBM WebSphere Application Server v7.0 Security publishing Secure your WebSphere applications with Java EE and JAAS security standards IBM WebSphere Application Server v7.0 Security Secure your WebSphere applications with Java EE and JAAS security standards Omar Siliceo "publishing enterprise^ birmingham - mumbai Preface 1 Chapter 1:

More information

SAP NetWeaver Opens SAP ERP world. Amedeo Prodi SAP Italia

SAP NetWeaver Opens SAP ERP world. Amedeo Prodi SAP Italia SAP NetWeaver Opens SAP ERP world Amedeo Prodi SAP Italia SAP NetWeaver is an Evolutionary Platform: From Infrastructure to Applistructure SAP NetWeaver becomes the business process platform Productivity

More information

PLATFORM-AS-A-SERVICE: ADOPTION, STRATEGY, PLANNING AND IMPLEMENTATION

PLATFORM-AS-A-SERVICE: ADOPTION, STRATEGY, PLANNING AND IMPLEMENTATION PLATFORM-AS-A-SERVICE: ADOPTION, STRATEGY, PLANNING AND IMPLEMENTATION White Paper May 2012 Abstract Whether enterprises choose to use private, public or hybrid clouds, the availability of a broad range

More information

APACHE SLING & FRIENDS TECH MEETUP BERLIN, 26-28 SEPTEMBER 2012. APACHE SLING & SCALA Jochen Fliedner

APACHE SLING & FRIENDS TECH MEETUP BERLIN, 26-28 SEPTEMBER 2012. APACHE SLING & SCALA Jochen Fliedner APACHE SLING & FRIENDS TECH MEETUP BERLIN, 26-28 SEPTEMBER 2012 APACHE SLING & SCALA Jochen Fliedner About the speaker Jochen Fliedner Senior Developer pro!vision GmbH Wilmersdorfer Str. 50-51 10627 Berlin

More information

WEB APPLICATION DEVELOPMENT. UNIT I J2EE Platform 9

WEB APPLICATION DEVELOPMENT. UNIT I J2EE Platform 9 UNIT I J2EE Platform 9 Introduction - Enterprise Architecture Styles - J2EE Architecture - Containers - J2EE Technologies - Developing J2EE Applications - Naming and directory services - Using JNDI - JNDI

More information

Apache Sling A REST-based Web Application Framework Carsten Ziegeler cziegeler@apache.org ApacheCon NA 2014

Apache Sling A REST-based Web Application Framework Carsten Ziegeler cziegeler@apache.org ApacheCon NA 2014 Apache Sling A REST-based Web Application Framework Carsten Ziegeler cziegeler@apache.org ApacheCon NA 2014 About cziegeler@apache.org @cziegeler RnD Team at Adobe Research Switzerland Member of the Apache

More information

NetBeans: Universal Tool for Java Development and More. Roman Štrobl Technology Evangelist roman.strobl@sun.com http://blogs.sun.

NetBeans: Universal Tool for Java Development and More. Roman Štrobl Technology Evangelist roman.strobl@sun.com http://blogs.sun. NetBeans: Universal Tool for Java Development and More Roman Štrobl Technology Evangelist roman.strobl@sun.com http://blogs.sun.com/roumen Agenda What is NetBeans? New features in NetBeans 5.5 Developer

More information

Performance Optimization For Operational Risk Management Application On Azure Platform

Performance Optimization For Operational Risk Management Application On Azure Platform Performance Optimization For Operational Risk Management Application On Azure Platform Ashutosh Sabde, TCS www.cmgindia.org 1 Contents Introduction Functional Requirements Non Functional Requirements Business

More information

Sample copy. Introduction To WebLogic Server Property of Web 10.3 Age Solutions Inc.

Sample copy. Introduction To WebLogic Server Property of Web 10.3 Age Solutions Inc. Introduction To WebLogic Server Property of Web 10.3 Age Solutions Inc. Objectives At the end of this chapter, participants should be able to: Understand basic WebLogic Server architecture Understand the

More information

Enterprise Java Hosting in a Cloud Environment. Web Infrastructure Union Pacific Railroad 24 June 2010

Enterprise Java Hosting in a Cloud Environment. Web Infrastructure Union Pacific Railroad 24 June 2010 Enterprise Java Hosting in a Cloud Environment David A. Webster Chief Architect dawebster@up.com Sweta Vajjhala Associate Project Engineer svajjhal@up.com Web Infrastructure Union Pacific Railroad 24 June

More information

IBM WebSphere Application Server Family

IBM WebSphere Application Server Family IBM IBM Family Providing the right application foundation to meet your business needs Highlights Build a strong foundation and reduce costs with the right application server for your business needs Increase

More information

Web Applications. Originals of Slides and Source Code for Examples: http://courses.coreservlets.com/course-materials/msajsp.html

Web Applications. Originals of Slides and Source Code for Examples: http://courses.coreservlets.com/course-materials/msajsp.html 2009 Marty Hall Using and Deploying Web Applications Originals of Slides and Source Code for Examples: http://courses.coreservlets.com/course-materials/msajsp.html Customized Java EE Training: http://courses.coreservlets.com/

More information

Creating new university management software by methodologies of Service Oriented Architecture (SOA)

Creating new university management software by methodologies of Service Oriented Architecture (SOA) Creating new university management software by methodologies of Service Oriented Architecture (SOA) Tuomas Orama, Jaakko Rannila Helsinki Metropolia University of Applied Sciences, Development manager,

More information

Chapter 1 - Web Server Management and Cluster Topology

Chapter 1 - Web Server Management and Cluster Topology Objectives At the end of this chapter, participants will be able to understand: Web server management options provided by Network Deployment Clustered Application Servers Cluster creation and management

More information