Der IBM Websphere Portalserver - virtual-horst.de · 2 Übersicht Zeitplan Was sind Portale? Der...

Preview:

Citation preview

1

Der IBM Websphere Portalserver

Ergebnisse aus demUniversitäts-Praxis-Projekt 2001/2002

Vortrag von Il-Hyun Kim und Horst Rechneram 19. Juli 2002Weiterer Teilnehmer am UPP: Clemens Oertel

Betreuer: Dipl.-Phys. Markus Leypold

Lehrstuhl Prof. Dr. H. Klaeren (Programmiersprachen und Übersetzer)Wilhelm-Schickard-Institut für Informatik - Universität Tübingen

2

Übersicht

ZeitplanWas sind Portale?Der IBM Websphere Portal ServerPortletsUnterschied zwischen WPS 2.1 und 4.1Fazit

3

Zeitplan von W&W10.'01

11.'01

12.'01

01.'02

02'02

03'02

04'02

05'02

Erstes Treffen: Themenvorstellung und Auswahl

Einweisung ins WIS

Treffen der Studenten mit dem Außendienst

Erster Prototyp

Benutzerfeedback

Bericht über Pilotbetrieb / Einführungskonzept

Auswertung des Pilotbetriebs / Erstellen eines Regelwerks für Betrieb

Abschlußpräsentation

4

Zeitplan 10.'01

11.'01

12.'01

01.'02

02'02

03'02

04'02

05'02

Erstes Treffen: Vorstellung der Themen

Neues Thema

Erhalt der Software / Erste Lauffähige Installation von Websphere (NT)

Genaue Festlegung des Themas

Erste Portlets implementiert

Erster Prototyp

Präsentation des Prototypen

Abschlußpräsentation

5

Was sind Portale?

6

Was sind Portale?

Allgemeiner Einstiegspunkt um Informationen und Applikationen zu verteilenTypische Funktionen

Authentifizierung und Authorisierung (single sign-on login)Personalisierung basierend auf Profile / VerhaltenNavigation / Layout der Seiten durch BenutzerSuche

Aufsteckbare Portalkomponenten: Portlets

7

Portal: my.Yahoo.com

8

Portal: myW&W.de

9

WAS LDAP

DB2 Server

WPS

Voraussetzungen & Portal Architektur

WebServer

HTML

Benutzer

usw.

WML

LDAPServer

WAS

WPS

Portlet

Portlet

Internet

10

Zuständigkeiten

PortalserverAuthentifizierungCorporate IdentityPositionierung von Portlets, Tabs, Anzahl SpaltePortlet Managment

PortletsDaten

11

Portalserver

12

Portlet

13

Portlets

Komponenten eines Portalsein Portlet - eine FunktionSpezialisierte Servlets

Information von BenutzerprofileVerschiedene AnsichtenAusgabe geht über Portal

14

APIs

Portal Servlet

PortletContainer

PortletPo

rtle

t API

Ser

vlet

API

J2EE A

PIs connectors

Web Services

EJBs

15

Lebenszyklus (API Aufrufe)

Hochfahren:init();

Benutzerlogin:login();

Aufruf:service();

Benutzerlogout:logout();

Runterfahren:destroy();

Entsprechend Servlets

16

Portlet Archiv Datei

XML

Descriptor & Andere Dateien

Controller

Model

Views

17

Portlet deployment descriptor

XML DokumentEinstiegspunkt in PortletTitel, Kurzbeschreibungunterstützte Sprachen & Views

LandesspracheMarkupsprache

XML

XML

PortalServer

18

/PORTLET-INF/portlet.xml<?xml version="1.0"?><!DOCTYPE portlet-app PUBLIC "-//IBM//DTD Portlet Application 1.0//EN"

"portlet.dtd"><portlet-app>

<portlet-app-name>myPortlet</portlet-app-name>...<portlet>

...<allows>

<maximized /></allows><language locale="en"><title>myPortlet</title>...

</language><supports>

<markup name="html"><view /><edit /><help />

</markup></supports>

</portlet></portlet-app>

XML

XML

PortalServer

19

Controller

Java KlasseDatenverarbeitungBackendverbindungenInitialisierung der BeansSteuerung der Ansichten

NormalMaximizedEditHelp XML

Backend

20

/PORTLET-INF/classes/myPortlet/myPortlet.java

package myPortlet;

public class myPortlet extends AbstractPortlet {public void service(PortletRequest request, PortletResponse response)throws PortletException, IOException {

myPortletBean mPB = new myPortletBean();result = select.executeQuery("...");custno = new Integer(result.getInt(1));

mPB.setUserid(user.getUserID());mPB.setCustno(custno);

if( (request.getWindow()).isMaximized() == true ) { jsp = jspMaxView;

}...

XML

Backend

21

Model

Java Beans (keine Enterprise Beans!)Intelligente selektive DatenspeicherungSession beans und Request Beans

XML

22

/PORTLET-INF/classes/myPortlet/myPortletBean.java

package myPortlet;

...

public class myPortletBean{

private String userid;private Integer custno;

public void setUserid(String i) {userid = i;

}

public String getUserid() {return (userid);

}

...}

XML

23

Views

Java Server Pages (JSP)Definition der AnsichtenDarstellung der Daten

XML

HTMLSeiten

24

Views<%@ page contentType="text/html" errorPage="" %>

<jsp:useBean id="myPortletBean" class="myPortlet.myPortletBean" scope="request" />

<P>myPortletView.jsp:</P><P>

myPortletBean.getUserid(): <%=myPortletBean.getUserid()%><BR>myPortletBean.getCustno(): <%=myPortletBean.getCustno()%>

</P>

XML

HTMLSeiten

25

Verschiedene Ansichten der Daten

26

Verschiedene Ansichten der Daten

27

Verschiedene Ansichten der Daten

28

Portlet Archiv Datei

29

Einbinden des Portlets

30

To bean or not to bean

einfachste HTML Portlets

komplizierte Portlets mit verschiedenen Ansichten für Handy, PDA, PC mit entsprechenden JAVA, JSP und Bean Codes.

31

Unterschied WPS 2.1 / 4.1

Portlet 1.1 API (erneuert und verbessert)J2EE Spezifikation (Portabel !)

Sun One, BEA WeblogicEngere Integration mit WAS (EJB)

Migration von 2.1 nach 4.1 nötigPAR -> WAR

32

Fazit WPS 2.1

Ressourcenfressernoch kein ausgereiftes ProduktUmständliches Handling für InformatikerGute Dokumentation für AnfängerDann wird die Luft dünn...Schöner MVC-Ansatz (aber nichtzuendegedacht)

33

Fazit UPP

Zusammenarbeit W&W / PsychologenTeamBetreuung (Uni / W&W)

34

Q&A

& schöne Semesterferien.

Recommended