The Cocoon Portal. A portal solution and framework. Carsten Ziegeler Competence Center Open Source S&N AG, Germany

Similar documents
Standards and the Portals Project

BEAWebLogic. Portal. Overview

Lotus Exam IBM Websphere Portal 6.1 Application Development Version: 5.0 [ Total Questions: 150 ]

Portals, uportal and JA-SIG. Jim Farmer China Education and Research Conference 2002 Beijing, China March 28, 2002

Managing Installations and Provisioning of OSGi Applications. Carsten Ziegeler

AD105 Introduction to Application Development for the IBM Workplace Managed Client

The 60-Minute Guide to Development Tools for IBM Lotus Domino, IBM WebSphere Portal, and IBM Workplace Applications

IBM Workplace Web Content Management

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

Portlet Standard JSR 168 / JSR 286

JSR-286: Portlet Specification 2.0

Tools to Develop New Linux Applications

JCR in Action. Content-based Applications with Apache Jackrabbit. Carsten Ziegeler.

Portals, uportal and Web Services

de la session Portal 6.1 Administration

Advanced Software Engineering

Oracle Developer Day

Building JavaServer Faces Applications

Magnolia Community Edition vs. Enterprise Edition. Non-Functional Features. Magnolia EE. Magnolia CE. Topic. Good value for money.

A Closer Look at XPages in IBM Lotus Domino Designer 8.5 Ray Chan Advisory I/T Specialist Lotus, IBM Software Group

Get Started on SOA. People Entry Point Interaction and Collaboration Services. Case for an SOA Portal

Oracle ADF: The technology behind project fusion. Lynn Munsinger Principal Product Manager Application Development Tools Oracle Corporation

Migrating traditional Java EE applications to mobile

SAS Web Infrastructure Kit 1.0. Overview

Portals, uportal, and JA-SIG

Portal Express 6 Overview

Portal solutions May A guide to IBM WebSphere Portal, Version 5.1.

How to Create Collaborative Communities Within Your Portal

Oracle Applications Unlimited and Web 2.0: You Can Have It Now!

JSR-286: Portlet Specification 2.0

Portal Server Technology

UiB 1. april 04. Sun Microsystems

Oracle Fusion Middleware 11g: Build Applications with ADF I

SAS Web Infrastructure Kit 1.0. Overview, Second Edition

The State of Apache Sling

Oracle Fusion Middleware 11g: Build Applications with ADF Accel

WA2089 WebSphere Portal 8.0 Programming EVALUATION ONLY

Exam Name: IBM Websphere Portal 6.1 Application

Oracle Developer Day

Agenda. Summary of Previous Session. XML for Java Developers G Session 6 - Main Theme XML Information Processing (Part II)

IBM Blueprint for Success

EPiServer Portals. Abstract

PASS4TEST. IT Certification Guaranteed, The Easy Way! We offer free update service for one year

JavaServer Faces Technology, AJAX, and Portlets: It s Easy if You Know How!

<Insert Picture Here> Oracle Application Framework (OAF): Architecture, Personalization, and Extensibility in Oracle E-Business Suite Release 12

IT Certification Exams Provider! Weofferfreeupdateserviceforoneyear! h ps://

OpenESB Keh-Yoe Ong FAST (Field Assistance Support Team)

IBM Workplace Web Content Management and Why Every Company Needs It. Sunny Wan Technical Sales Specialist

Rich Web Application Development Solution. Simplifying & Accelerating WebSphere Portal Development & Deployment

Oracle Fusion Middleware 11g: Build Applications with ADF I

Oracle WebCenter Interaction: Roadmap for BEA AquaLogic User Interaction. Ajay Gandhi Sr. Director of Product Management Enterprise 2.

TECHNICAL HELP: PRESS * 0

WSRP Web Services for Remote Portlets

Peter Moskovits Principal Product Manager Oracle Corporation. Sue Vickers Group Manager Oracle Corporation

JOURNAL OF OBJECT TECHNOLOGY

WebSphere Portal Application Development Best Practices using Rational Application Developer IBM Corporation

Contract Information Management System (CIMS) Technical System Architecture

Entando Technology Drill Down

IBM Rational Application Developer for WebSphere Software, Version 7.0

If you wish to make an improved product, you must already be engaged in making an inferior one.

Getting started with WebSphere Portlet Factory V7.0.0

J2EE Application Development : Conversion and Beyond Osmond Ng

BEAWebLogic. Portal. Tutorials Getting Started with WebLogic Portal

What's New in the Servlet and JavaServer Pages Technologies?

WebCenter Interaction 10gR3 Overview

BEAWebLogic. Portal. Customizing the Portal Administration Console

Adobe ColdFusion 11 Enterprise Edition

(a.k.a.uwcalendar) an institute-wide open-source Java events calendar

IBM Workplace Collaboration Services API Toolkit

Oracle WebCenter Suite Provides Web 2.0 Services for Enterprise Developers. An Oracle White Paper October 2006

BEAWebLogic. Platform. Introducing WebLogic Platform. Version 8.1 Document Date: July 2003 Part Number:

Advanced Topics in WebSphere Portal Development Graham Harper Application Architect IBM Software Services for Collaboration

BEAWebLogic. Portal. Tutorials Getting Started with WebLogic Portal

Integrating with EPiServer

Apache Rave Enterprise Social Networking Out Of The Box. Ate Douma, Hippo B.V. Matt Franklin, The MITRE Corporation November 9, 2011

Getting started with WebSphere Portlet Factory V6.1

Developing Applications with Java EE 6 on WebLogic Server 12c

Domino applications and the IBM Workplace technical strategy White paper. IBM Lotus Domino applications and the IBM Workplace technical strategy.

At present we use several collaboration (web) tools, like SuperB website Wiki SVN Document management system etc.

Aggregation of WSRP Channels on Eclipse Rich Client Platform

Oracle Exam 1z0-478 Oracle SOA Suite 11g Certified Implementation Specialist Version: 7.4 [ Total Questions: 75 ]

Sun Spells Integration in all CAPS

Portal Technology. State University of New York Albany, New York 26 October Jim Farmer. i n s t r u c t i o n a l m e d i a + m a g i c, i n c.

Application Integration with WebSphere Portal V7

The Roadmap for Installing, Configuring and Migrating to SAS 9

SOFTWARE DEVELOPMENT SERVICES WEB APPLICATION PORTAL (WAP) TRAINING. Intuit 2007

IBM Workplace Software Development Kit

CORPORATE PRESENTATION

Bayer. Bayer Business Services Pascal Hollenbrock Bayer Page 1

J2EE Interview Questions

Gary Schwartz, director

Rich, personalized portals for the enterprise. IBM WebSphere Portal Version 6.1 reviewer s guide

WSIA and WSRP are new Web

Oracle Developer Day

Oracle Application Development Framework Overview

This presentation is for informational purposes only and may not be incorporated into a contract or agreement.

International Journal of Advance Research in Engineering, Science & Technology. Study & Analysis of SOA based E-Learning Academic System

IBM Workplace Client Technology API Toolkit

Rensselaer and UWCalendar2 an institute-wide open-source Java events calendar. Communication & Collaboration Technologies

Bring the Java World and Web Services into Your Portal. An Oracle White Paper September 2005

Transcription:

The Cocoon Portal A portal solution and framework Carsten Ziegeler cziegeler@apache.org Competence Center Open Source S&N AG, Germany

About Member of the Apache Software Foundation Committer in some Apache Projects Cocoon, Excalibur, Pluto, WSRP4J, Incubator PMC: Cocoon, Incubator, Portals Chief Architect of the Competence Center Open Source, S&N AG, Germany Article/Book Author, Technical Reviewer Member of the JSR 286 spec group (Portlet API 2.0) 2

Agenda Requirements Viewpoints Real Life examples The Cocoon Portal explained Tools Wrapup Demo 3

Portal Requirements Integration of existing heterogenic systems, data and processes Existing (Web) Applications and User repositories must be integrated Flexible and efficient architecture that reduces vendor lock-in and allows DIY 4

Portal Requirements Create a unified look-and-feel over all applications Manage user sessions between EAI platform and back-ends Build unified navigation Create pass-through links Create a single sign on solution 5

Portal Requirements 6 Which applications and systems do you have to integrate into a portal? Lotus Notes / Domino Microsoft Exchange 70,00% 60,00% 50,00% 40,00% 30,00% 20,00% 10,00% 0,00% Microsoft Office SAP Existing User repository (z.b. LDAP) Existing Intranet Legacy-Applications Other n.a. Source: S&N poll 2005 6

Portal Requirements 11 Which technical standards should the portal support 60,00% 50,00% 40,00% 30,00% 20,00% 10,00% 0,00% Not important / don't know of any standards JSR168 WSRP BPEL Other n.a. Source: S&N poll 2005 7

Viewpoints: One size? 8

Viewpoints: Open Source portals Meta Group Portals are also settling into place as infrastructure frameworks rather than standalone applications. AMR Research "Standardisation will hasten the commoditisation of portal servers, like the application server and database markets before them," The increasing proliferation of portals and standardisation of the technology should also drive the take-up of open source infrastructure. Gartner One doesn't buy an uberportal, one builds it. The best portal products for the uberportal are open architected, serviceoriented and standards-based. 9

Viewpoints: Building on Pareto 80% of an Enterprise Portal will become standardized Data integration: JSR168, JSR170, WSRP, XML/HTTP Process integration: BPEL, JBI User integration: LDAP User viewing: HTML, XHTML, PDF, Office formats, SVG You should be worrying about (and paying for) the 20% that matter Individual: your legacy system Individual: your specific processes Differentiation to your competitor 10

Real Life Examples 11

Deutsche Börse 12

Insurance Companies 13

Why did they choose Cocoon? Cocoon often already used as an XML application platform Different heterogenic systems needed integrating E.g. Existing databases or Web applications Multi-Channel Publishing Data inside the portal and as PDF or Excel Efficient time to market for required functionality Java programming skills not a necessity Community Support Commercial support available Cocoon provides a portal framework 14

History Started in September 2000 Commercial product based on Cocoon developed by S&N Additional components and project specific additions CMS, Tools, documentation, trainings Completed in mid 2001 sunrise and sunspot (used in various projects) Donated to the Cocoon project in February 2002 Used around the world Started new Portal Engine in the end of 2002 Together with other interested parties The usual advantages New portal engine in Cocoon since early 2004 New Major Version as part of Cocoon 2.2 15

Cocoon in a picture 16

..Ok, make that 2 17

Portal as an integrated solution Adopt given strategies Multi-Channel Separation of Concerns Use available components Pipelines Data integration Use available sub-frameworks Forms Flow 18

And add User-Authentication Integrate LDAP, Database, through components and pipelines Add your own via custom components or tweaks Flexible profile management Flexible layout concept Coplet concept Support for portal standards 19

Overview Definition and configuration in XML Layout (ordering) separated from content Using existing types Requires no Java coding Predefined coplet types More than a portlet Simple usage of Cocoon for delivering content Requires no Java coding 20

It s a pipeline, Jim Portal Generator Get user profile Add content of each coplet XML XSLT Transformer Layout portal (HTML) HTML Serializer 21

Generating the Portal View Getting the Profile Layout User preferences Rendering the View Drawing the layout Aggregating Content Include content of selected coplets 22

Profile Management Hierarchical Portal profiles possible for Anonymous Roles/Groups Users Profiles stored (via a pipeline) in File Database 23

Defining The Portal Layout Hierarchical Tree of Composite Layout Objects Row, Column Tab Single Layout Objects Coplet Window Frame, Link Deep nesting possible! 24

Layout Management 25

Layout Management Row Coplet Window Column Coplet Window Coplet Window Coplet Window 26

Layout Management <composite-layout <composite-layout name="row"> name="row"> <item> <item> <coplet-layout <coplet-layout name="coplet"> name="coplet"> <coplet-instance>first</coplet-instance> <coplet-instance>first</coplet-instance> </coplet-layout> </coplet-layout> </item> </item> <item> <item> <composite-layout name="column"> <composite-layout name="column"> <item> <item> <coplet-layout name="coplet"> <coplet-layout name="coplet"> <coplet-instance>left</coplet-instance> <coplet-instance>left</coplet-instance> </coplet-layout> </coplet-layout> </item> </item> <item> <item> <coplet-layout <coplet-layout name="coplet"> name="coplet"> <coplet-instance>right</coplet-instance> <coplet-instance>right</coplet-instance> </coplet-layout> </coplet-layout> </item> </item> </composite-layout> </composite-layout> </item> </item> <item> <item> <coplet-layout <coplet-layout name="coplet"> name="coplet"> <coplet-instance>bottom</coplet-instance> <coplet-instance>bottom</coplet-instance> </coplet-layout> </coplet-layout> </item> </item> </composite-layout> </composite-layout> 27

Rendering The Portal Layout Configured renderer for each layout component Individual XSLT stylesheets Or plug in a Java class Generate: XML, HTML, WML, Renderers traverse the tree Placeholder for each coplet Filled with content in a separate step 28

Integrating content

JSR 168 Java API (based on J2EE 1.3) Portlet Development User Preferences Localization Similar to Servlet API Request-Response Cycle Own Deployment Descriptor Portlet Container extends Servlet Container Servlet Specification 2.3 Not covered in the JSR Reference Implementation: Apache Pluto 30

WSRP Web Services for Remote Portlets A standard for interactive, presentation-oriented web services not tied to a programming language publishing and consuming of content Sharing of portlets (markup fragments) over the internet with a common interface JSR 168 portlets run in the Portal Server WSRP portlets run on a different server 31

What s this coplet thing? A coplet is so much more than a portlet A URI A Pipeline A JSR-168 portlet Including support for Portals Bridges (Struts, JSF ) WSRP consumer Your own Java Class 32

What s this coplet thing? Definition of coplets ( Unique id Required type Configuration classes) <coplet-definition <coplet-definition id="cz id="cz Weblog"> Weblog"> <title>cz's <title>cz's Weblog</title> Weblog</title> <coplet-type>uricoplet</coplet-type> <coplet-type>uricoplet</coplet-type> <uri>cocoon:/pipelines/portal/weblog</uri> <uri>cocoon:/pipelines/portal/weblog</uri> </coplet-definition> </coplet-definition> ID Type Optional Configuration 33

A Pipeline is a pipeline is a Reads news from RSS feed Example: http://radio.weblogs.com/0107211/rss.xml Transforms news to HTML Uses a simple Cocoon pipeline Generator Transformer Serializer News (XML) Layout (XSLT) Document (HTML) 34

It s all the same to the user Static Coplet XML File Role Dependent Coplet Pipeline: XML + XSLT Dynamic RSS Coplet Pipeline: Remote XML XSLT Dynamic Portlet using JSR 168 Static Coplet Own Java Class 35

Coplet communication Very powerful Publish/Subscribe mechanism Action in one portlet affects other parts Display content in another area of the portal Dynamically add portlets Programmatically switch status/view e.g. Workplace 36

More Portal goodies Profile can be changed at runtime Using events Example: "Important" coplet changes position Layout engine can be used without additional Portal functionality Existing Cocoon applications can be integrated with no change Portals Bridges (JSF/Struts portlets) 37

Technology Roundup Portal Generator Transformer Serializer Portal Manager Profile Manager - Portal Profile - Layout Renderer Coplet Container URI Coplet Adapter JSR 168 Custom Event Manager Publish and Subscribe 38

Real Life II

Portal Example at RZB/RIZ Raiffeisen Zentralbank Österreich (RZB) Raiffeisen Informatik Zentrum (RIZ) Worked jointly with S&N AG, BASF-IT Services to design and build the new Cocoon Portal version Cocoon Portal is the core of a new concept for employee workspace 40

Portal Example at RZB/RIZ Employee Workspace Single view on existing Web applications with unified look and feel Integration of additional utility applications (e.g. Google) Integration of application navigation into portal No changes to the underlying applications Allow access to the same application in parallel while maintaining state (e.g. Customer care application) 41

Distant Application directly Integration Applications 42

Distant Application in the Portal Integrating Applications 43

Integrating Applications integrated applications aggregated menu 44

Let s get portalized with Cocoon

Let s get Portalized Get Cocoon 2.2 with the portal block cocoon.apache.org Complete portal solution demo contained in the blocks 46

Let s get Portalized - files Skins Coplets Portal Profiles Portalblock 47

The Future The Cocoon Portal is still growing (in 2.2) WSRP consumer support has been added Portals Bridges support has been added New additional components Hot (un)deployment of portlets has been added AJAX support has started Offline-mode support has started Simplified Configuration Spring Integration Better exchange with other Apache portals project There will be even more with Cocoon 2.2 48

Thanks for your attention!