Flexible EAI-Lösungen mit Glassfish

Size: px
Start display at page:

Download "Flexible EAI-Lösungen mit Glassfish"

Transcription

1 Flexible EAI-Lösungen mit Glassfish Praxisbeispiele und War Stories zu EAI-Pattern Alexander Martin We take care of it - personally!

2

3 EAI Pattern in 2013?

4 EAI Pattern in 2013? Nobody does that anymore!

5 That s THE problem!

6 Integration is ubiquitous Multitude of potential service consumers CRM Application

7 Integration is ubiquitous Multitude of potential service consumers ERP Application CRM Application

8 Integration is ubiquitous Multitude of potential service consumers? CRM Application

9 Integration is ubiquitous Multitude of potential service consumers CRM Application

10 Patterns? Wasn t there a book?

11 Patterns? Wasn t there a book? Design Patterns (Gamma et al), 1994

12 Patterns? Wasn t there a book? Design Patterns (Gamma et al), 1994 Proven solutions for common problems

13 Patterns? Wasn t there a book? Design Patterns (Gamma et al), 1994 Proven solutions for common problems Enterprise Integration Patterns (Hohpe & Woolf), 2003

14 Patterns? Wasn t there a book? Design Patterns (Gamma et al), 1994 Proven solutions for common problems Enterprise Integration Patterns (Hohpe & Woolf), 2003 Swiss-army knife for asynchronous messaging

15 Patterns? Wasn t there a book? Design Patterns (Gamma et al), 1994 Proven solutions for common problems Enterprise Integration Patterns (Hohpe & Woolf), 2003 Swiss-army knife for asynchronous messaging

16 We all believe that asynchronous messaging carries the greatest promise. - Martin Fowler (Foreword of Enterprise Integration Patterns, 2003)

17 MESSAGING?

18 Benefits of async. Messaging

19 Benefits of async. Messaging decoupled

20 Benefits of async. Messaging decoupled integrated platforms/ languages

21 Benefits of async. Messaging decoupled integrated platforms/ languages reliable communication

22 Benefits of async. Messaging decoupled integrated platforms/ languages reliable communication disconnected

23 Benefits of async. Messaging decoupled integrated platforms/ languages reliable communication disconnected throttled

24 But why those Patterns? We take care of it - personally!

25 Thoughts on EAI patterns

26 Thoughts on EAI patterns not invented, but observed

27 Thoughts on EAI patterns not invented, but observed don t solve everything

28 Thoughts on EAI patterns not invented, but observed don t solve everything provide ideas

29 Thoughts on EAI patterns not invented, but observed don t solve everything provide ideas good ones evolve

30 Thoughts on EAI patterns not invented, but observed don t solve everything provide ideas good ones evolve changes are incorporated at eaipatterns.com

31 Real Life Scenario Simple order management system (CRUD) order management system

32 Real Life Scenario Simple order management system (CRUD) basic Java EE order management system

33 Real Life Scenario Simple order management system (CRUD) basic Java EE Just CRUD operations order management system

34 Real Life Scenario Simple order management system (CRUD) basic Java EE Just CRUD operations information silo order management system

35 Real Life Scenario Simple order management system (CRUD) basic Java EE Just CRUD operations information silo order management system

36 Simple Change order management system

37 Simple Change Enhance the system with an importer! order management system

38 Simple Change Enhance the system with an importer! Receive CSV-data via HTTP POST order management system

39 Simple Change Enhance the system with an importer! Receive CSV-data via HTTP POST CSV contains header and detail records order management system

40 Simple Change Enhance the system with an importer! Receive CSV-data via HTTP POST CSV contains header and detail records Import data into database order management system

41 A Simple Java EE = {"/order/import"}) public class ImporterServlet extends HttpServlet OrderBean CsvDataParser parser; protected void dopost(httpservletrequest request, HttpServletResponse response) throws ServletException, IOException { String data = request.getparameter("csvdata"); List<Order> orders = parser.transform(data); for (Order order : orders) { bean.persist(order); } }

42 Simple Change done Enhanced the system with an importer! System Business Partner csv HTTP Transform order management system

43 Change happens Integrate the system of a forwarder System Business Partner csv REST HTTP Transform order management system FTP SMTP SOAP WSSE forwarder system

44 Recognize an integration task when it s staring in your face?

45 EASY!

46 Build an easy and maintainable solution for multiple integration challenges?

47 NO PROBLEM!

48 Something wrong = {"/order/import"}) public class ImporterServlet extends HttpServlet OrderBean CsvDataParser parser; protected void dopost(httpservletrequest request, HttpServletResponse response) throws ServletException, IOException { String data = request.getparameter("csvdata"); List<Order> orders = parser.transform(data); for (Order order : orders) { bean.persist(order); } }

49 Something wrong = {"/order/import"}) public class ImporterServlet extends HttpServlet OrderBean CsvDataParser parser; testable? protected void dopost(httpservletrequest request, HttpServletResponse response) throws ServletException, IOException { String data = request.getparameter("csvdata"); List<Order> orders = parser.transform(data); for (Order order : orders) { bean.persist(order); } }

50 Something wrong = {"/order/import"}) public class ImporterServlet extends HttpServlet { OrderBean CsvDataParser parser; testable? protected void dopost(httpservletrequest request, HttpServletResponse response) throws ServletException, IOException { String data = request.getparameter("csvdata"); List<Order> orders = parser.transform(data); for (Order order : orders) { bean.persist(order); } }

51 Something wrong = {"/order/import"}) public class ImporterServlet extends HttpServlet { OrderBean CsvDataParser parser; testable? protected void dopost(httpservletrequest request, HttpServletResponse response) throws ServletException, IOException { String data = request.getparameter("csvdata"); List<Order> orders = parser.transform(data); for (Order order : orders) { bean.persist(order); } } extensible?

52 How could we do better?

53 Pipes and Filters

54 Pipes and Filters divide your task into small steps

55 Apply pipes & filters pattern inbound Pipe Route transform Pipe outbound

56 Apply pipes & filters pattern inbound Pipe Route transform Pipe outbound Servlet

57 Apply pipes & filters pattern inbound Pipe Route transform Pipe outbound Servlet Custom

58 Apply pipes & filters pattern inbound Pipe Route transform Pipe outbound Servlet Custom JPA

59 When you got the right tools to do the job?

60 INFALLIBLE!

61 Is there something simpler?

62 Property of ChinBuye Limited. ADAPTERS?

63 EAI Frameworks Apache Camel Spring Integration

64 A simple camel route from("jetty: orderimport ).process(new PostParameterProcessor( csvdata )).process(new StringRemover(new String[]{"\""})).unmarshal().csv().split(body(List.class)).aggregate(header("orderId"), new MySpecialAggregationStrategy()).completionTimeout(3000).to("seda:singlepartsroute");

65 Spring Integration sample <int- id="orderimporthttpadapter"! path="/order/import supported-methods="post"! channel="ordersin"/> <int:channel="ordersin"/> <int:splitter input-channel="ordersin" ref="ordersplitter" method="split" output-channel="orderstodb" /> <bean id="ordersplitter" class="com.innoq.samples.eai.ordersplitter"/> <int:channel="orderstodb"/> <int-jpa:updating-outbound-gateway request-channel="orderstodb" entity-class="com.innoq.samples.eai.domain.order" entity-manager="em"/>

66 Configuration in XML?

67 Configuration in XML?

68 Real-life scenario: Control Bus Embedded Jetty Tomcat EAI-Node EAI-Node EAI-Node ctrl-queue OracleDB + AQ xml-route-config Admin UI

69 Real-life scenario: Control Bus Initial Node configuration database connection node type (command line arg) EAI-Node EAI-Node EAI-Node ctrl-queue OracleDB + AQ xml-route-config Admin UI

70 Real-life scenario: Control Bus 1. Server startup subscribe to control queue EAI-Node EAI-Node EAI-Node ctrl-queue OracleDB + AQ xml-route-config Admin UI

71 Real-life scenario: Control Bus 1. Server startup subscribe to control queue load node-type specific config EAI-Node EAI-Node EAI-Node ctrl-queue OracleDB + AQ xml-route-config Admin UI

72 Config 2. during runtime route config is changed EAI-Node EAI-Node EAI-Node ctrl-queue OracleDB + AQ xml-route-config Admin UI

73 Config 2. during runtime route config is changed publish config update message EAI-Node EAI-Node EAI-Node ctrl-queue OracleDB + AQ xml-route-config Admin UI

74 Config 3. upon control message arrival interpret relevance of control message EAI-Node EAI-Node EAI-Node ctrl-queue OracleDB + AQ xml-route-config Admin UI

75 Config 3. upon control message arrival interpret relevance of control message affected nodes reload configuration EAI-Node EAI-Node EAI-Node ctrl-queue OracleDB + AQ xml-route-config Admin UI

76 What would we change today? GlassFish 4.0 EAI-Node EAI-Node EAI-Node ctrl-queue OracleDB + AQ xml-route-config Admin UI

77 More EAI-Patterns in the wild

78 Message Router

79 Message Router forward by condition

80 Message Router

81 Message Router from( ibmmq:queue.in ).noautostartup().transacted().policy(required).routeid(basicroutebuilder.stdfromrouteid(this.componentbasename)).process(vslheadersprocessor).setheader(hdr_dummycomplchk_ibr, constant(passedmsg)).bean(inboundtargetdispatcherbean).wiretap("seda:inboundrouter.log"); Apache Camel running in WAS6.1

82 Message Router from( ibmmq:queue.in ).noautostartup().transacted().policy(required).routeid(basicroutebuilder.stdfromrouteid(this.componentbasename)).process(vslheadersprocessor).setheader(hdr_dummycomplchk_ibr, constant(passedmsg)).bean(inboundtargetdispatcherbean).wiretap("seda:inboundrouter.log"); Apache Camel running in WAS6.1

83 Message Router public class InboundTargetMsgDispatcherBean implements Constants { /** * Map for all eligible Target Endpoints of the InboundRouter. */ private final Map<String, String[]> alltargets = new HashMap<String, public String[] route(@header(hdr_jmsx_groupid) String group) { String[] t = alltargets.get(group); return t; } /** * creates valid endpoint-uris from targetjmsuri and numbering. */ private void createalltargets() { if (alltargets.keyset().size() == 0) { for (int i = 0; i < NROFROUTES; i++) { String target = createtargetjmsuri(i); alltargets.put(string.valueof(i), new String[] { target }); } } }

84 Transformer

85 Transformation mit BPMN-System (1)

86 Transformation für BPMN-System (2) from( ).routeid("bankapp.transformation.dispatch." + identification).choice().when().xpath("//v10:*[1]", inputns).to("direct:transform_v10_v11 ).otherwise().to(outputendpoint).endchoice();

87 Transformation für BPMN-System (2) from( ).routeid("bankapp.transformation.dispatch." + identification).choice().when().xpath("//v10:*[1]", inputns).to("direct:transform_v10_v11 ).otherwise().to( + BPMNSystemSpecEP?bridgeEndpoint=true ).endchoice();

88 Transformation für BPMN-System (2) from( ).routeid("bankapp.transformation.dispatch." + identification).choice().when().xpath("//v10:*[1]", inputns).to("direct:transform_v10_v11 ).otherwise().to( + BPMNSystemSpecEP?bridgeEndpoint=true ).endchoice();

89 Transformation für BPMN-System (2) from( ).routeid("bankapp.transformation.dispatch." + identification).choice().when().xpath("//v10:*[1]", inputns).to("direct:transform_v10_v11 ).otherwise().to( + BPMNSystemSpecEP?bridgeEndpoint=true ).endchoice();

90 Transformation für BPMN-System (3) from( direct:transform_v10_v11 ).routeid("projectx.route.transformation.transform.v10_v11 ).setbody().xpath("/s:envelope/s:body/*[1]", soapns).to("xslt:xsl/bankx/bank_v10_v11.xsl").bean(xbanktransformerbean, "transform_v10_v11").setbody().simple(transformationconstants.soapstart +"$ {in.body}"+transformationconstants.soapend).process(new ContentPrinter("v10-v11 )).inout( + bridgeendpoint=true ).to("direct:response" + reverseidentification);

91 Transformation für BPMN-System (3) from( direct:transform_v10_v11 ).routeid("projectx.route.transformation.transform.v10_v11 ).setbody().xpath("/s:envelope/s:body/*[1]", soapns).to("xslt:xsl/bankx/bank_v10_v11.xsl").bean(xbanktransformerbean, "transform_v10_v11").setbody().simple(transformationconstants.soapstart +"$ {in.body}"+transformationconstants.soapend).process(new ContentPrinter("v10-v11 )).inout(outputendpoint).to("direct:response" + reverseidentification);

92 Transformation für BPMN-System (3) from( direct:transform_v10_v11 ).routeid("projectx.route.transformation.transform.v10_v11 ).setbody().xpath("/s:envelope/s:body/*[1]", soapns).to("xslt:xsl/bankx/bank_v10_v11.xsl").bean(xbanktransformerbean, "transform_v10_v11").setbody().simple(transformationconstants.soapstart +"$ {in.body}"+transformationconstants.soapend).process(new ContentPrinter("v10-v11 )).inout(outputendpoint).to("direct:response" + reverseidentification);

93 Transformation für BPMN-System (3) from( direct:transform_v10_v11 ).routeid("projectx.route.transformation.transform.v10_v11 ).setbody().xpath("/s:envelope/s:body/*[1]", soapns).to("xslt:xsl/bankx/bank_v10_v11.xsl").bean(xbanktransformerbean, "transform_v10_v11").setbody().simple(transformationconstants.soapstart +"$ {in.body}"+transformationconstants.soapend).process(new ContentPrinter("v10-v11 )).inout(outputendpoint).to("direct:response" + reverseidentification);

94 Transformation für BPMN-System (3) from("direct:transform_v10_v11").routeid("projectx.route.transformation.transform." + identification).setbody().xpath("/s:envelope/s:body/*[1]", soapns).to("xslt:xsl/bankx/bank_" + identification + ".xsl").bean(transformerbean, "transform_v10_v11")... public class BankTransformerBean extends AbstractTransformerBean "rawtypes" }) public String transform_v10_v11(@body String body) throws JDOMException, IOException { Element message = parse(body); message.removenamespacedeclaration(nsxbank_v1_0); message.removenamespacedeclaration(nsybank_v1_0); message.addnamespacedeclaration(nsxbankv1_1);... return tostring(message); "rawtypes" }) public String transform_v11_v10(@body String body) throws JDOMException, IOException {

95 Transformation für BPMN-System (3) from( direct:transform_v10_v11 ).routeid("projectx.route.transformation.transform.v10_v11 ).setbody().xpath("/s:envelope/s:body/*[1]", soapns).to("xslt:xsl/bankx/bank_v10_v11.xsl").bean(xbanktransformerbean, "transform_v10_v11").setbody().simple(transformationconstants.soapstart +"$ {in.body}"+transformationconstants.soapend).process(new ContentPrinter("v10-v11 )).inout( + bridgeendpoint=true ).to("direct:response_v11_v10 );

96 Transformation für BPMN-System (3) from( direct:transform_v10_v11 ).routeid("projectx.route.transformation.transform.v10_v11 ).setbody().xpath("/s:envelope/s:body/*[1]", soapns).to("xslt:xsl/bankx/bank_v10_v11.xsl").bean(xbanktransformerbean, "transform_v10_v11").setbody().simple(transformationconstants.soapstart +"$ {in.body}"+transformationconstants.soapend).process(new ContentPrinter("v10-v11 )).inout( + bridgeendpoint=true ).to("direct:response_v11_v10 );

97 Transformation für BPMN-System (4) from("direct:response_v11_v10 ).setbody().xpath("/s:envelope/s:body/*[1]", soapns).to("xslt:xsl/bankx/bank_v11_v10.xsl").bean(transformerbean, "transform_v11_v10").setbody().simple(transformationconstants.soapstarttixbank +"${in.body}" +TransformationConstants.soapEnd);

98 Flexibility through Filters inbound Pipe Route filter Pipe outbound Filters are exchangeable, reusable and easily testable

99

100 Should I always use an EAI-Framework?

101 Should I always use an EAI-Framework? It depends!

102 Further tips considering EAI

103 Further tips considering EAI small building blocks

104 Further tips considering EAI small building blocks no shared mutable state

105 Further tips considering EAI small building blocks no shared mutable state use immutable DTOs

106 Further tips considering EAI small building blocks no shared mutable state use immutable DTOs => increased scalability

107 Further tips considering EAI small building blocks no shared mutable state use immutable DTOs => increased scalability advanced: see SEDA & actor model

108 Vielen Dank! Alexander Martin We take care of it - personally!

EAI War Stories. ! Alexander Martin Praxisbeispiele zu EAI-Pattern und Lessons Learned

EAI War Stories. ! Alexander Martin Praxisbeispiele zu EAI-Pattern und Lessons Learned EAI War Stories Praxisbeispiele zu EAI-Pattern und Lessons Learned! Alexander Heusingfeld, @goldstift Martin Huber, @waterback We take care of it - personally! EAI Pattern in 2013? Nobody uses them anymore!

More information

INTRODUCTION TO SERVLETS AND WEB CONTAINERS. Actions in Accord with All the Laws of Nature

INTRODUCTION TO SERVLETS AND WEB CONTAINERS. Actions in Accord with All the Laws of Nature INTRODUCTION TO SERVLETS AND WEB CONTAINERS Actions in Accord with All the Laws of Nature Web server vs web container Most commercial web applications use Apache proven architecture and free license. Tomcat

More information

JBI based ESB as backbone for SOI applications. Michael Wisler Zühlke Engineering AG Submission ID: 687

JBI based ESB as backbone for SOI applications. Michael Wisler Zühlke Engineering AG Submission ID: 687 JBI based ESB as backbone for SOI applications Michael Wisler Zühlke Engineering AG Submission ID: 687 Goal of this talk 2 This session brings the JBI (Java Business Integration) standard in contex t to

More information

Application Architectures, Design Patterns

Application Architectures, Design Patterns Application Architectures, Design Patterns Martin Ledvinka martin.ledvinka@fel.cvut.cz Winter Term 2017 Martin Ledvinka (martin.ledvinka@fel.cvut.cz) Application Architectures, Design Patterns Winter Term

More information

1 Software Architecture

1 Software Architecture Some buzzwords and acronyms for today Software architecture Design pattern Separation of concerns Single responsibility principle Keep it simple, stupid (KISS) Don t repeat yourself (DRY) Don t talk to

More information

Java EE Architecture, Part Two. Java EE architecture, part two 1

Java EE Architecture, Part Two. Java EE architecture, part two 1 Java EE Architecture, Part Two Java EE architecture, part two 1 Content Requirements on the Business layer Framework Independent Patterns Transactions Frameworks for the Business layer Java EE architecture,

More information

Implementation Architecture

Implementation Architecture Implementation Architecture Software Architecture VO/KU (707023/707024) Roman Kern ISDS, TU Graz 2017-11-15 Roman Kern (ISDS, TU Graz) Implementation Architecture 2017-11-15 1 / 54 Outline 1 Definition

More information

JVA-563. Developing RESTful Services in Java

JVA-563. Developing RESTful Services in Java JVA-563. Developing RESTful Services in Java Version 2.0.1 This course shows experienced Java programmers how to build RESTful web services using the Java API for RESTful Web Services, or JAX-RS. We develop

More information

Connecting the RISC Client to non-javascriptinterfaces

Connecting the RISC Client to non-javascriptinterfaces Connecting the RISC Client to non-javascriptinterfaces Motivation In industry scenarios there is the necessity to connect the RISC client to client side subdevices or interfaces. Examples: serial / USB

More information

Stateless -Session Bean

Stateless -Session Bean Stateless -Session Bean Prepared by: A.Saleem Raja MCA.,M.Phil.,(M.Tech) Lecturer/MCA Chettinad College of Engineering and Technology-Karur E-Mail: asaleemrajasec@gmail.com Creating an Enterprise Application

More information

Enterprise Integration Patterns Exemplified in Java Business Integration

Enterprise Integration Patterns Exemplified in Java Business Integration Enterprise Integration Patterns Exemplified in Java Business Integration Part I - Introduction Christoph Hartmann 2 There is no simple answer for enterprise integration. Hohpe et al. Enterprise Integration

More information

Service Oriented Integration With Apache ServiceMix

Service Oriented Integration With Apache ServiceMix Service Oriented Integration With Apache ServiceMix Bruce Snyder bsnyder@apache.org October 2008 Keystone, Colorado Bruce Snyder Service Oriented Integration With Apache ServiceMix Slide 1 Agenda Enterprise

More information

Integration Patterns for Mission Critical System of. Systems. OpenSplice DDS. Julien ENOCH Engineering Team Lead PrismTech.

Integration Patterns for Mission Critical System of. Systems. OpenSplice DDS. Julien ENOCH Engineering Team Lead PrismTech. Integration Patterns for Mission Critical System of OpenSplice Systems Julien ENOCH Engineering Team Lead PrismTech julien.enoch@prismtech.com System Integration Challenges OpenSplice Subsystems integration

More information

Advanced Topics in Operating Systems. Manual for Lab Practices. Enterprise JavaBeans

Advanced Topics in Operating Systems. Manual for Lab Practices. Enterprise JavaBeans University of New York, Tirana M.Sc. Computer Science Advanced Topics in Operating Systems Manual for Lab Practices Enterprise JavaBeans PART III A Web Banking Application with EJB and MySQL Development

More information

Enterprise Java in 2012 and Beyond From Java EE 6 To Cloud Computing

Enterprise Java in 2012 and Beyond From Java EE 6 To Cloud Computing Enterprise Java in 2012 and Beyond From Java EE 6 To Cloud Computing Jürgen Höller, Principal Engineer, SpringSource 2012 SpringSource, A division of VMware. All rights reserved Deployment Platforms: Becoming

More information

Wednesday, May 22, 13. Java Business Integration

Wednesday, May 22, 13. Java Business Integration Java Business Integration Java Business Integration Enterprise Application Integration and B2B often require non-standard technology this causes lock-in! no single provider can give us all we need. JBI

More information

AMon A Monitoring System for ActiveMQ

AMon A Monitoring System for ActiveMQ A Monitoring System for ActiveMQ Joe Fernandez joe.fernandez@ttmsolutions.com Total Transaction Management, LLC 570 Rancheros Drive, Suite 140 San Marcos, CA 92069 760-591-0273 www.ttmsolutions.com 1 Designed

More information

Java Enterprise Edition. Java EE Oct Dec 2016 EFREI/M1 Jacques André Augustin Page 1

Java Enterprise Edition. Java EE Oct Dec 2016 EFREI/M1 Jacques André Augustin Page 1 Java Enterprise Edition Java EE Oct Dec 2016 EFREI/M1 Jacques André Augustin Page 1 Java Beans Java EE Oct Dec 2016 EFREI/M1 Jacques André Augustin Page 2 Java Bean POJO class : private Attributes public

More information

Servlets by Example. Joe Howse 7 June 2011

Servlets by Example. Joe Howse 7 June 2011 Servlets by Example Joe Howse 7 June 2011 What is a servlet? A servlet is a Java application that receives HTTP requests as input and generates HTTP responses as output. As the name implies, it runs on

More information

Contents at a Glance

Contents at a Glance Contents at a Glance 1 Java EE and Cloud Computing... 1 2 The Oracle Java Cloud.... 25 3 Build and Deploy with NetBeans.... 49 4 Servlets, Filters, and Listeners... 65 5 JavaServer Pages, JSTL, and Expression

More information

Implementation Architecture

Implementation Architecture Implementation Architecture Software Architecture VO/KU (707023/707024) Roman Kern KTI, TU Graz 2014-11-19 Roman Kern (KTI, TU Graz) Implementation Architecture 2014-11-19 1 / 53 Outline 1 Definition 2

More information

The Basic Web Server CGI. CGI: Illustration. Web based Applications, Tomcat and Servlets - Lab 3 - CMPUT 391 Database Management Systems 4

The Basic Web Server CGI. CGI: Illustration. Web based Applications, Tomcat and Servlets - Lab 3 - CMPUT 391 Database Management Systems 4 CMPUT 391 Database Management Systems The Basic Web based Applications, - - CMPUT 391 Database Management Systems Department of Computing Science University of Alberta CMPUT 391 Database Management Systems

More information

OSGi on the Server. Martin Lippert (it-agile GmbH)

OSGi on the Server. Martin Lippert (it-agile GmbH) OSGi on the Server Martin Lippert (it-agile GmbH) lippert@acm.org 2009 by Martin Lippert; made available under the EPL v1.0 October 6 th, 2009 Overview OSGi in 5 minutes Apps on the server (today and tomorrow)

More information

Enterprise Java Technologies (Part 1 of 3) Component Architecture. Overview of Java EE. Java Servlets

Enterprise Java Technologies (Part 1 of 3) Component Architecture. Overview of Java EE. Java Servlets ID2212 Network Programming with Java Lecture 10 Enterprise Java Technologies (Part 1 of 3) Component Architecture. Overview of Java EE. Java Servlets Leif Lindbäck, Vladimir Vlassov KTH/ICT/SCS HT 2015

More information

Exercise SBPM Session-4 : Web Services

Exercise SBPM Session-4 : Web Services Arbeitsgruppe Exercise SBPM Session-4 : Web Services Kia Teymourian Corporate Semantic Web (AG-CSW) Institute for Computer Science, Freie Universität Berlin kia@inf.fu-berlin.de Agenda Presentation of

More information

1Z Java EE 6 Web Component Developer Certified Expert Exam Summary Syllabus Questions

1Z Java EE 6 Web Component Developer Certified Expert Exam Summary Syllabus Questions 1Z0-899 Java EE 6 Web Component Developer Certified Expert Exam Summary Syllabus Questions Table of Contents Introduction to 1Z0-899 Exam on Java EE 6 Web Component Developer Certified Expert... 2 Oracle

More information

Web based Applications, Tomcat and Servlets - Lab 3 -

Web based Applications, Tomcat and Servlets - Lab 3 - CMPUT 391 Database Management Systems Web based Applications, - - CMPUT 391 Database Management Systems Department of Computing Science University of Alberta The Basic Web Server CMPUT 391 Database Management

More information

Copyright 2014 Blue Net Corporation. All rights reserved

Copyright 2014 Blue Net Corporation. All rights reserved a) Abstract: REST is a framework built on the principle of today's World Wide Web. Yes it uses the principles of WWW in way it is a challenge to lay down a new architecture that is already widely deployed

More information

JSR 311: JAX-RS: The Java API for RESTful Web Services

JSR 311: JAX-RS: The Java API for RESTful Web Services JSR 311: JAX-RS: The Java API for RESTful Web Services Marc Hadley, Paul Sandoz, Roderico Cruz Sun Microsystems, Inc. http://jsr311.dev.java.net/ TS-6411 2007 JavaOne SM Conference Session TS-6411 Agenda

More information

Enterprise Architectures

Enterprise Architectures Enterprise Architectures Petr Křemen petr.kremen@fel.cvut.cz Winter Term 2017 Petr Křemen (petr.kremen@fel.cvut.cz) Enterprise Architectures Winter Term 2017 1 / 29 Contents 1 Information about the course

More information

Cloud Computing Platform as a Service

Cloud Computing Platform as a Service HES-SO Master of Science in Engineering Cloud Computing Platform as a Service Academic year 2015/16 Platform as a Service Professional operation of an IT infrastructure Traditional deployment Server Storage

More information

8-24 minute delay ± 30 min. round trip Web DNS Redirect Download HTML Download CSS + JS + Images Download more CSS + JS + Images. Ordering a pizza Several hours per page About 8 pages per order Thread.setName(

More information

Spring and OSGi. Martin Lippert akquinet agile GmbH Bernd Kolb Gerd Wütherich

Spring and OSGi. Martin Lippert akquinet agile GmbH Bernd Kolb Gerd Wütherich Spring and OSGi Martin Lippert akquinet agile GmbH lippert@acm.org Bernd Kolb b.kolb@kolbware.de Gerd Wütherich gerd@gerd-wuetherich.de 2006 by Martin Lippert, Bernd Kolb & Gerd Wütherich, made available

More information

CMP 436/774. Introduction to Java Enterprise Edition. Java Enterprise Edition

CMP 436/774. Introduction to Java Enterprise Edition. Java Enterprise Edition CMP 436/774 Introduction to Java Enterprise Edition Fall 2013 Department of Mathematics and Computer Science Lehman College, CUNY 1 Java Enterprise Edition Developers today increasingly recognize the need

More information

Developing a Mobile Web-based Application with Oracle9i Lite Web-to-Go

Developing a Mobile Web-based Application with Oracle9i Lite Web-to-Go Developing a Mobile Web-based Application with Oracle9i Lite Web-to-Go Christian Antognini Trivadis AG Zürich, Switzerland Introduction More and more companies need to provide their employees with full

More information

Enterprise Development

Enterprise Development Enterprise Development with What needs to be done to run JEE like applications inside Karaf? @anierbeck - Karaf PMC, Apache Member - OPS4j Pax Web Project Lead - Senior IT Consultant @codecentric - co-author

More information

Web Presentation Patterns (controller) SWEN-343 From Fowler, Patterns of Enterprise Application Architecture

Web Presentation Patterns (controller) SWEN-343 From Fowler, Patterns of Enterprise Application Architecture Web Presentation Patterns (controller) SWEN-343 From Fowler, Patterns of Enterprise Application Architecture Objectives Look at common patterns for designing Web-based presentation layer behavior Model-View-Control

More information

Red Hat JBoss Fuse Service Works Integration Recipes, Best Practices & Cheat Codes

Red Hat JBoss Fuse Service Works Integration Recipes, Best Practices & Cheat Codes Red Hat JBoss Fuse Service Works Integration Recipes, Best Practices & Cheat Codes Keith Babo SwitchYard Project Lead, Red Hat There is Still Time To Leave We will be talking integration and SOA If your

More information

Distributed Systems. Messaging and JMS Distributed Systems 1. Master of Information System Management

Distributed Systems. Messaging and JMS Distributed Systems 1. Master of Information System Management Distributed Systems Messaging and JMS 1 Example scenario Scenario: Store inventory is low This impacts multiple departments Inventory Sends a message to the factory when the inventory level for a product

More information

OCP JavaEE 6 EJB Developer Study Notes

OCP JavaEE 6 EJB Developer Study Notes OCP JavaEE 6 EJB Developer Study Notes by Ivan A Krizsan Version: April 8, 2012 Copyright 2010-2012 Ivan A Krizsan. All Rights Reserved. 1 Table of Contents Table of Contents... 2 Purpose... 9 Structure...

More information

JAVA SERVLET. Server-side Programming INTRODUCTION

JAVA SERVLET. Server-side Programming INTRODUCTION JAVA SERVLET Server-side Programming INTRODUCTION 1 AGENDA Introduction Java Servlet Web/Application Server Servlet Life Cycle Web Application Life Cycle Servlet API Writing Servlet Program Summary 2 INTRODUCTION

More information

Apache Camel: Integration Nirvana

Apache Camel: Integration Nirvana Apache Camel: Integration Nirvana Jonathan Anstey, Senior Engineer, Progress Software Corporation 3/20/2009 Most up to date version available at DZone http://architects.dzone.com/articles/apache-camel-integration

More information

The Road to Reactive with RxJava. Or: How to use non blocking I/O without wanting to kill yourself

The Road to Reactive with RxJava. Or: How to use non blocking I/O without wanting to kill yourself The Road to Reactive with RxJava Or: How to use non blocking I/O without wanting to kill yourself Legacy An accomplishment that remains relevant long after a person has died Software is not so lucky

More information

Apache Multipurpose Infrastructure for Network Applications Building Scalable Network Applications

Apache Multipurpose Infrastructure for Network Applications Building Scalable Network Applications Apache Multipurpose Infrastructure for Network Applications Building Scalable Network Applications Dan Pritchett Rearden Commerce Dan Pritchett Apache Multipurpose Infrastructure for Network Applications

More information

Sun Java TM Composite Applications Platform Suite Implementing Selected EAI Patterns

Sun Java TM Composite Applications Platform Suite Implementing Selected EAI Patterns Sun Java TM Composite Applications Platform Suite Implementing Selected EAI Patterns Michael Czapski, Enterprise Architect, Sun Microsystems Frank Kieviet, Senior Staff Engineer, Sun Microsystems TS-5301

More information

Java Lounge. Integration Solutions madeeasy ComparisonofJava Integration Frameworks. Mario Goller

Java Lounge. Integration Solutions madeeasy ComparisonofJava Integration Frameworks. Mario Goller Java Lounge Integration Solutions madeeasy ComparisonofJava Integration Frameworks Mario Goller 28.05.2013 BASEL BERN LAUSANNE ZÜRICH DÜSSELDORF FRANKFURT A.M. FREIBURG I.BR. HAMBURG MÜNCHEN STUTTGART

More information

ESB, OSGi, and the Cloud

ESB, OSGi, and the Cloud ESB, OSGi, and the Cloud Making it Rain with ServiceMix 4 Jeff Genender CTO Savoir Technologies Jeff Genender - Who is this Shmoe? Apache CXF JSR 316 - Java EE 6 Rules of Engagement Engage yourself! Agenda

More information

This tutorial will teach you how to use Java Servlets to develop your web based applications in simple and easy steps.

This tutorial will teach you how to use Java Servlets to develop your web based applications in simple and easy steps. About the Tutorial Servlets provide a component-based, platform-independent method for building Webbased applications, without the performance limitations of CGI programs. Servlets have access to the entire

More information

LAB 1 PREPARED BY : DR. AJUNE WANIS ISMAIL FACULTY OF COMPUTING UNIVERSITI TEKNOLOGI MALAYSIA

LAB 1 PREPARED BY : DR. AJUNE WANIS ISMAIL FACULTY OF COMPUTING UNIVERSITI TEKNOLOGI MALAYSIA LAB 1 PREPARED BY : DR. AJUNE WANIS ISMAIL FACULTY OF COMPUTING UNIVERSITI TEKNOLOGI MALAYSIA Setting up Java Development Kit This step involves downloading an implementation of the Java Software Development

More information

WWW Architecture I. Software Architecture VO/KU ( / ) Roman Kern. KTI, TU Graz

WWW Architecture I. Software Architecture VO/KU ( / ) Roman Kern. KTI, TU Graz WWW Architecture I Software Architecture VO/KU (707.023/707.024) Roman Kern KTI, TU Graz 2013-12-04 Roman Kern (KTI, TU Graz) WWW Architecture I 2013-12-04 1 / 81 Web Development Tutorial Java Web Development

More information

The Servlet Life Cycle

The Servlet Life Cycle The Servlet Life Cycle What is a servlet? Servlet is a server side component which receives a request from a client, processes the request and sends a content based response back to the client. The Servlet

More information

Service Oriented Integration With Apache ServiceMix. Bruce Snyder 21 Nov 2008 Malmo, Sweden

Service Oriented Integration With Apache ServiceMix. Bruce Snyder 21 Nov 2008 Malmo, Sweden Service Oriented Integration With Apache ServiceMix Bruce Snyder bsnyder@apache.org 21 Nov 2008 Malmo, Sweden Agenda Enterprise Service Bus Java Business Integration Apache ServiceMix ESB 2 What is an

More information

Oracle FLEXCUBE Universal Banking 12.0 Interface Getting started. Release 1.0

Oracle FLEXCUBE Universal Banking 12.0 Interface Getting started. Release 1.0 Universal Banking 12.0 Interface Getting started Release 1.0 May 2012 Contents 1 Preface... 3 1.1 Audience... 3 1.2 Related documents... 3 1.3 Conventions... 3 2 Introduction... 4 2.1 How to use this Guide...

More information

The artist formerly known as JBoss AS. Harald ~

The artist formerly known as JBoss AS. Harald ~ The artist formerly known as JBoss AS Harald Pehl @haraldpehl ~ http://hpehl.info WildFly? JBoss AS JBoss Community ~ 100 Projekte JBoss Enterprise Application Platform Name overloaded WildFly! Folgeversion

More information

Session 9. Introduction to Servlets. Lecture Objectives

Session 9. Introduction to Servlets. Lecture Objectives Session 9 Introduction to Servlets Lecture Objectives Understand the foundations for client/server Web interactions Understand the servlet life cycle 2 10/11/2018 1 Reading & Reference Reading Use the

More information

Contents. 1. JSF overview. 2. JSF example

Contents. 1. JSF overview. 2. JSF example Introduction to JSF Contents 1. JSF overview 2. JSF example 2 1. JSF Overview What is JavaServer Faces technology? Architecture of a JSF application Benefits of JSF technology JSF versions and tools Additional

More information

Architectural patterns and models for implementing CSPA

Architectural patterns and models for implementing CSPA Architectural patterns and models for implementing CSPA Marco Silipo THE CONTRACTOR IS ACTING UNDER A FRAMEWORK CONTRACT CONCLUDED WITH THE COMMISSION Application architecture Outline SOA concepts and

More information

Microservices. Are your Frameworks ready? Martin Eigenbrodt Alexander Heusingfeld

Microservices. Are your Frameworks ready? Martin Eigenbrodt Alexander Heusingfeld Microservices Are your Frameworks ready? Martin Eigenbrodt martin.eigenbrodt@innoq.com Alexander Heusingfeld alexander.heusingfeld@innoq.com Microservices? Levels of Architecture Domain architecture Macro

More information

Database Applications Recitation 6. Project 3: CMUQFlix CMUQ s Movies Recommendation System

Database Applications Recitation 6. Project 3: CMUQFlix CMUQ s Movies Recommendation System 15-415 Database Applications Recitation 6 Project 3: CMUQFlix CMUQ s Movies Recommendation System 1 Project Objective 1. Set up a front-end website with PostgreSQL as the back-end 2. Allow users to login,

More information

Java servlets CSCI 470: Web Science Keith Vertanen Copyright 2013

Java servlets CSCI 470: Web Science Keith Vertanen Copyright 2013 Java servlets CSCI 470: Web Science Keith Vertanen Copyright 2013 Overview Dynamic web content genera2on (thus far) CGI Web server modules Server- side scrip2ng e.g. PHP, ASP, JSP Custom web server Java

More information

J2EE Development with Apache Geronimo. Aaron Mulder Chariot Solutions

J2EE Development with Apache Geronimo. Aaron Mulder Chariot Solutions J2EE Development with Apache Geronimo Aaron Mulder Chariot Solutions Speaker Aaron Mulder Geronimo Developer Works on deployment, management, console, kernel,... Online Geronimo book at http:// chariotsolutions.com/geronimo/

More information

Complex event flows in distributed systems

Complex event flows in distributed systems Complex event flows in distributed systems @berndruecker With thoughts from http://flowing.io @berndruecker @martinschimak 3 common hypotheses I check today: # Events decrease coupling # Orchestration

More information

Aim behind client server architecture Characteristics of client and server Types of architectures

Aim behind client server architecture Characteristics of client and server Types of architectures QA Automation - API Automation - All in one course Course Summary: In detailed, easy, step by step, real time, practical and well organized Course Not required to have any prior programming knowledge,

More information

Service-Oriented Architecture

Service-Oriented Architecture Service-Oriented Architecture The Service Oriented Society Imagine if we had to do everything we need to get done by ourselves? From Craftsmen to Service Providers Our society has become what it is today

More information

Realization of EAI Patterns with Apache Camel

Realization of EAI Patterns with Apache Camel Institut für Architektur von Anwendungssystemen Universität Stuttgart Universitätsstraße 38 70569 Stuttgart Studienarbeit Nr. 2127 Realization of EAI Patterns with Apache Camel Pascal Kolb Studiengang:

More information

Keep Learning with Oracle University

Keep Learning with Oracle University Keep Learning with Oracle University Classroom Training Learning Subscription Live Virtual Class Training On Demand Cloud Technology Applications Industries education.oracle.com 3 Session Surveys Help

More information

Java TM. JavaServer Faces. Jaroslav Porubän 2008

Java TM. JavaServer Faces. Jaroslav Porubän 2008 JavaServer Faces Jaroslav Porubän 2008 Web Applications Presentation-oriented Generates interactive web pages containing various types of markup language (HTML, XML, and so on) and dynamic content in response

More information

Oracle - Developing Applications for the Java EE 7 Platform Ed 1 (Training On Demand)

Oracle - Developing Applications for the Java EE 7 Platform Ed 1 (Training On Demand) Oracle - Developing Applications for the Java EE 7 Platform Ed 1 (Training On Demand) Code: URL: D101074GC10 View Online The Developing Applications for the Java EE 7 Platform training teaches you how

More information

Lab session Google Application Engine - GAE. Navid Nikaein

Lab session Google Application Engine - GAE. Navid Nikaein Lab session Google Application Engine - GAE Navid Nikaein Available projects Project Company contact Mobile Financial Services Innovation TIC Vasco Mendès Bluetooth low energy Application on Smart Phone

More information

Mobile Computing. Logic and data sharing. REST style for web services. Operation verbs. RESTful Services

Mobile Computing. Logic and data sharing. REST style for web services. Operation verbs. RESTful Services Logic and data sharing Mobile Computing Interface Logic Services Logic Data Sync, Caches, Queues Data Mobile Client Server RESTful Services RESTful Services 2 REST style for web services REST Representational

More information

Sog o e g t e i J a J v a a

Sog o e g t e i J a J v a a Graduation @ Sogeti Java Java EE, REST, AngularJS, Code generation, Websockets, NoSQL Erwin de Gier Sogeti Java CoE Amsterdam, September 2015 WhoAmI Erwin de Gier Software Architect Coach Young Professionals

More information

Mail: Web: juergen-schuster-it.de

Mail: Web: juergen-schuster-it.de Mail: j_schuster@me.com Twitter: @JuergenSchuster Web: juergen-schuster-it.de APEX-Homepage: APEX Podcast: apex.press/talkshow Dynamic Actions Examples: dynamic-actions.com Who am I Oracle (13 Years) Freelancer

More information

CS506 Web Design & Development Final Term Solved MCQs with Reference

CS506 Web Design & Development Final Term Solved MCQs with Reference with Reference I am student in MCS (Virtual University of Pakistan). All the MCQs are solved by me. I followed the Moaaz pattern in Writing and Layout this document. Because many students are familiar

More information

Spring-beans-2.5.xsd' Must Have Even Number Of Uri's

Spring-beans-2.5.xsd' Must Have Even Number Of Uri's Spring-beans-2.5.xsd' Must Have Even Number Of Uri's encoding="utf-8"? beans xmlns="springframework.org/schema/beans" spring. schemalocation must have even number of URI's. How can I validate a form collection

More information

BEAAquaLogic. Service Bus. JPD Transport User Guide

BEAAquaLogic. Service Bus. JPD Transport User Guide BEAAquaLogic Service Bus JPD Transport User Guide Version: 3.0 Revised: March 2008 Contents Using the JPD Transport WLI Business Process......................................................2 Key Features.............................................................2

More information

WHAT IS EJB. Security. life cycle management.

WHAT IS EJB. Security. life cycle management. EJB WHAT IS EJB EJB is an acronym for enterprise java bean. It is a specification provided by Sun Microsystems to develop secured, robust and scalable distributed applications. To run EJB application,

More information

Ellipse Web Services Overview

Ellipse Web Services Overview Ellipse Web Services Overview Ellipse Web Services Overview Contents Ellipse Web Services Overview 2 Commercial In Confidence 3 Introduction 4 Purpose 4 Scope 4 References 4 Definitions 4 Background 5

More information

Session 12. RESTful Services. Lecture Objectives

Session 12. RESTful Services. Lecture Objectives Session 12 RESTful Services 1 Lecture Objectives Understand the fundamental concepts of Web services Become familiar with JAX-RS annotations Be able to build a simple Web service 2 10/21/2018 1 Reading

More information

Developing Applications with Java EE 6 on WebLogic Server 12c

Developing Applications with Java EE 6 on WebLogic Server 12c Developing Applications with Java EE 6 on WebLogic Server 12c Duration: 5 Days What you will learn The Developing Applications with Java EE 6 on WebLogic Server 12c course teaches you the skills you need

More information

Meet. Brian Stansberry Principal Software Engineer, Red Hat, Inc. June 10, Friday, June 14, 13

Meet. Brian Stansberry Principal Software Engineer, Red Hat, Inc. June 10, Friday, June 14, 13 Meet Brian Stansberry Principal Software Engineer, Red Hat, Inc. June 10, 2013 What s WildFly? New name for the JBoss Application Server project Reduce confusion over the name JBoss WildFly won a public

More information

Distributed Multitiered Application

Distributed Multitiered Application Distributed Multitiered Application Java EE platform uses a distributed multitiered application model for enterprise applications. Logic is divided into components https://docs.oracle.com/javaee/7/tutorial/overview004.htm

More information

Spoilt for Choice Which Integration Framework to choose? Mule ESB. Integration. Kai Wähner

Spoilt for Choice Which Integration Framework to choose? Mule ESB. Integration.  Kai Wähner Spoilt for Choice Which Integration Framework to choose? Integration vs. Mule ESB vs. Main Tasks Evaluation of Technologies and Products Requirements Engineering Enterprise Architecture Management Business

More information

Java Enterprise Edition

Java Enterprise Edition Java Enterprise Edition The Big Problem Enterprise Architecture: Critical, large-scale systems Performance Millions of requests per day Concurrency Thousands of users Transactions Large amounts of data

More information

Servlets1. What are Servlets? Where are they? Their job. Servlet container. Only Http?

Servlets1. What are Servlets? Where are they? Their job. Servlet container. Only Http? What are Servlets? Servlets1 Fatemeh Abbasinejad abbasine@cs.ucdavis.edu A program that runs on a web server acting as middle layer between requests coming from a web browser and databases or applications

More information

<Insert Picture Here> Oracle Application Cache Solution: Coherence

<Insert Picture Here> Oracle Application Cache Solution: Coherence Oracle Application Cache Solution: Coherence 黃開印 Kevin Huang Principal Sales Consultant Outline Oracle Data Grid Solution for Application Caching Use Cases Coherence Features Summary

More information

AN ISO 9001:2008 CERTIFIED COMPANY ADVANCED. Java TRAINING.

AN ISO 9001:2008 CERTIFIED COMPANY ADVANCED. Java TRAINING. AN ISO 9001:2008 CERTIFIED COMPANY ADVANCED Java TRAINING www.webliquids.com ABOUT US Who we are: WebLiquids is an ISO (9001:2008), Google, Microsoft Certified Advanced Web Educational Training Organisation.

More information

Java EE 6 & GlassFish v3 Paving the path for future. Arun Gupta Sun Microsystems, Inc.

Java EE 6 & GlassFish v3 Paving the path for future. Arun Gupta Sun Microsystems, Inc. Java EE 6 & GlassFish v3 Paving the path for future Arun Gupta (blogs.sun.com/arungupta, @arungupta) Sun Microsystems, Inc. Java EE: Past & Present Flexible Ease of Development Web Services J2EE 1.4 Enterprise

More information

Distributed Applications

Distributed Applications Distributed Applications Software Engineering 2017 Alessio Gambi - Saarland University Based on the work of Cesare Pautasso, Christoph Dorn, and other sources ReCap Software Architecture A software system

More information

HTTP status codes. Setting status of an HTTPServletResponse

HTTP status codes. Setting status of an HTTPServletResponse HTTP status codes Setting status of an HTTPServletResponse What are HTTP status codes? The HTTP protocol standard includes three digit status codes to be included in the header of an HTTP response. There

More information

Copyright 2014, Oracle and/or its affiliates. All rights reserved.

Copyright 2014, Oracle and/or its affiliates. All rights reserved. 1 Oracle Mobile Suite an Overview Vincent Hu Principal Sales Consultant Oracle Mobile Suite Everything you need to mobile enable enterprise applications in one package One Platform, Any App, Any Data,

More information

Seam 3. Pete Muir JBoss, a Division of Red Hat

Seam 3. Pete Muir JBoss, a Division of Red Hat Seam 3 Pete Muir JBoss, a Division of Red Hat Road Map Introduction Java EE 6 Java Contexts and Dependency Injection Seam 3 Mission Statement To provide a fully integrated development platform for building

More information

Practice 2. SOAP & REST

Practice 2. SOAP & REST Enterprise System Integration Practice 2. SOAP & REST Prerequisites Practice 1. MySQL and JPA Introduction JAX-WS stands for Java API for XML Web Services. JAX-WS is a technology for building web services

More information

Over All Idea about MVC: How to use Model- View-Controller (MVC)

Over All Idea about MVC: How to use Model- View-Controller (MVC) Over All Idea about MVC: How to use Model- View-Controller (MVC) Parth Jivani B. H. Gardividyapith Engg. &Tech. Chhaya Chopara B. H. Gardividyapith Engg. & Tech. Mehta Prashant B. H. Gardividyapith Engg.

More information

JAXRS Testing. JAX-RS Testing. Embedded Jetty

JAXRS Testing. JAX-RS Testing. Embedded Jetty JAXRS Testing JAX-RS Testing Embedded Jetty Local Transport Mocking HTTP contexts JAX-RS endpoints can be easily tested using the embedded Jetty or CXF Local Transport. Embedded Jetty Maven Dependency

More information

Tapestry. Code less, deliver more. Rayland Jeans

Tapestry. Code less, deliver more. Rayland Jeans Tapestry Code less, deliver more. Rayland Jeans What is Apache Tapestry? Apache Tapestry is an open-source framework designed to create scalable web applications in Java. Tapestry allows developers to

More information

Université Antonine - Baabda

Université Antonine - Baabda Université Antonine - Baabda Faculté d ingénieurs en Informatique, Multimédia, Systèmes, Réseaux et Télécommunications Applications mobiles (Pocket PC, etc ) Project: Manipulate School Database Préparé

More information

Improve and Expand JavaServer Faces Technology with JBoss Seam

Improve and Expand JavaServer Faces Technology with JBoss Seam Improve and Expand JavaServer Faces Technology with JBoss Seam Michael Yuan Kito D. Mann Product Manager, Red Hat Author, JSF in Action http://www.michaelyuan.com/seam/ Principal Consultant Virtua, Inc.

More information

OSGi. Tales from the Trenches. OSGitales from the trenches

OSGi. Tales from the Trenches. OSGitales from the trenches OSGi Tales from the Trenches Bertrand Delacretaz Senior R&D Developer, Day Software, www.day.com Apache Software Foundation Member and Director bdelacretaz@apache.org blog: http://grep.codeconsult.ch twitter:

More information

Introduction to Web Application Development Using JEE, Frameworks, Web Services and AJAX

Introduction to Web Application Development Using JEE, Frameworks, Web Services and AJAX Introduction to Web Application Development Using JEE, Frameworks, Web Services and AJAX Duration: 5 Days US Price: $2795 UK Price: 1,995 *Prices are subject to VAT CA Price: CDN$3,275 *Prices are subject

More information

Implementing Asynchronous Web Application using Grizzly's Comet. Jeanfrancois Arcand Staff Engineer Java WebTier

Implementing Asynchronous Web Application using Grizzly's Comet. Jeanfrancois Arcand Staff Engineer Java WebTier Implementing Asynchronous Web Application using Grizzly's Comet. Jeanfrancois Arcand Staff Engineer Java WebTier Agenda Introduction > What is Grizzly > What is Comet Request Processing Comet support in

More information