web 2.0, using web 2.0 in websphere portal - ibm · -2- very pleased to welcome [john boezeman] who...

21
-1- Web 2.0, Using Web 2.0 in WebSphere Portal Series: Web 2.0 for Lotus, WebSphere Portal and You Listen to Pete Janzen from IBM Lotus interview various experts from the Lotus and WebSphere Portal development teams on Web 2.0 technologies. Hear how IBM has utilized these technologies in the various products and how you, the developer, can leverage them in your custom applications. Abstract: John Boezeman discloses how WebSphere Portal embraces Web 2.0 technologies like Ajax and REST. Hear how composite applications, aka enterprise mashups, have evolved in WebSphere Portal and where they are going in the future. You'll also get information on how WebSphere Portal 6.0.1 introduced the ability to leverage Google Gadgets within your portal applications. John Boezeman is an architect for WebSphere Portal. Discussion: JANSEN: Welcome to our developerWorks podcast series on Web 2.0 as it applies to various Lotus and WebSphere Portal offerings. My name is Pete Jansen and I am the Product Manager for Lotus Component Designer and Enterprise Integration for the Notes and Domino platform. I am your host for this podcast series where I will interview a number of our technical thought leaders on topics related to Web 2.0. Our objective is to enlighten you on the various concepts and technologies that comprise Web 2.0 and how they apply to the products we develop. In this podcast we will explore the topic of using Web 2.0 and WebSphere Portal. I am

Upload: nguyenngoc

Post on 04-Jun-2018

212 views

Category:

Documents


0 download

TRANSCRIPT

-1-

Web 2.0, Using Web 2.0 in WebSphere Portal

Series: Web 2.0 for Lotus, WebSphere Portal and You

Listen to Pete Janzen from IBM Lotus interview various experts from the Lotus and

WebSphere Portal development teams on Web 2.0 technologies. Hear how IBM has

utilized these technologies in the various products and how you, the developer, can

leverage them in your custom applications.

Abstract: John Boezeman discloses how WebSphere Portal embraces Web 2.0

technologies like Ajax and REST. Hear how composite applications, aka enterprise

mashups, have evolved in WebSphere Portal and where they are going in the future.

You'll also get information on how WebSphere Portal 6.0.1 introduced the ability to

leverage Google Gadgets within your portal applications. John Boezeman is an

architect for WebSphere Portal.

Discussion:

JANSEN: Welcome to our developerWorks podcast series on Web 2.0 as it applies

to various Lotus and WebSphere Portal offerings. My name is Pete Jansen and I am the

Product Manager for Lotus Component Designer and Enterprise Integration for the

Notes and Domino platform.

I am your host for this podcast series where I will interview a number of our technical

thought leaders on topics related to Web 2.0. Our objective is to enlighten you on the

various concepts and technologies that comprise Web 2.0 and how they apply to the

products we develop.

In this podcast we will explore the topic of using Web 2.0 and WebSphere Portal. I am

-2-

very pleased to welcome [John Boezeman] who is an architect for WebSphere Portal

and IBM Senior Technical Staff Member.

John has been instrumental in leading the adoption of Web 2.0 technologies and

WebSphere Portal. Welcome to our podcast series, John.

BOEZEMAN: Thank you.

JANSEN: Okay, so I thought we'd start off with just kind of getting some a little

bit of historical information. And if, you know, since WebSphere Portal has been around

for a number of years as a premiere portal platform, I was just wondering if you could

please outline how WebSphere Portal has evolved its support for building Web 2.0 style

applications?

BOEZEMAN: Yes, so in the past especially back when Portal started it was back

even in the Netscape 4.7 timeframe. There's not, there's things called [I layers] before

even [div tag] supported in the common browsers and IE, just at that point in time IE

[forward] just added it.

So Portal at that time was doing mostly server side rendering and didn't take advantage

of some of the new features that were starting to come out in the technology.

Since that time, we've added full support for all the new Web 2 type of aspects from the

client side rendering to partial page rendering to doing social interactions in the browser

to take advantage of some of the new browser features and functions.

Virtually anything that is supported by the different browsers that you want to do in your

applications can be done in WebSphere Portal.

-3-

And this was all done to add additional innovation and productivity to your applications:

things like being able to allow users to contribute, being able to do collaboration, things

like the situational app support and some of the mashups. Ajax is used, and previous

discussions about and some take advantage of some of the other new things that are

coming in the Web 2 space.

JANSEN: Oh, great. Yes, as you just mentioned in one of our other podcasts in

this series a colleague of yours, [Stefan Hessner], provided some information on really

how Ajax has been utilized in WebSphere Portal.

But I was just wondering if you could kind of provide some of the highlights for using

Ajax in WebSphere Portal so that we have this in the context of this podcast.

I know that we touted a bunch of Ajax related capabilities in WebSphere Portal 6.0 and

maybe you could just kind of refresh us on those and give us an update to where we are

today.

BOEZEMAN: Sure. Portal provides several different ways of doing different Web 2

aspects. There's many different areas in Web 2 both from rendering to also some of the

collaboration aspects that we really care about.

For example, one of the key features that portal provides is a way to provide [govern]

mashups -- be able to combine public data, enterprise data and protect that data. So

secure, rich applications which we call composite applications allow you to assemble

and deliver those services to a business user and allow you to do some self service.

That's one aspect of contribution of Web 2.

-4-

Additionally, we allow you to do things like user contribution through the new document

support and in line editing kind of features. So for example, as I'm editing Web content,

you can in place directly edit the content, just like you were doing the wiki today with

common applications.

We allow the users to control and customize the different aspects to their needs. We've

done things like Ajax portlets. We use Ajax in many different places. Just like you

probably listened to [Stefan Hessmer's] presentation, we use it around navigation, we do

it with parts of portlets that are rendering, we have Ajax enabled themes, skins and so

forth, to really make it look like a desktop application.

We've also done and some of the new things coming out in the future are things like

assembly that you, if you...and then portal [INAUDIBLE] conferences down in Orlando,

or in Munich. You'll see some of the new things that we're doing like even moving our

rendering and assembly from the server's IP and even being able to be done in a

browser. So you can pick if you want the server to render or if you want the client side in

the browser to render to get different throughput, different performance and

characteristics.

Additionally, things, we had a big announcement earlier this year with Google Gadgets.

With Google Gadgets ports [over] virtually any or most of the Google Gadgets work

inside Portal Server. Both the I frame mode and so forth. They'll allow you to have more

additional external content and apps.

And additionally, we are doing things like you can go download one of the highly

downloaded portlets is the feed reader in Ajax support that we put on the catalogue. So

you can also do feed support and also additionally, we're doing things like proxying and

secure processing, protect the data that you're going against.

-5-

JANSEN: Okay. So you touched on a bunch of things there. First off, the

Google Gadget capability that we announced earlier this year, this allows you to bring in

a Google Gadget into a portlet, I believe, in WebSphere Portal and then go ahead and

have that Google Gadget interact with other portlets on your page. Does that kind of

summarize it?

BOEZEMAN: Yes, yes. So you have, we have a generic Google Gadget portlet that

allows you to browse the different catalogue of Google that thousands and thousands of

gadgets that are available. And you can pick any one of those and then to be used

inside the Portal Server.

Additionally, all the properties and the property sheets that are associated with that

gadget is available under the edit mode. So you can actually personalize that Google

Gadget for your end users or have an admin define the default properties for that widget.

So, for example, I could take a date time picker and change its color to blue for when I

see the date time.

JANSEN: I see. So explore, excuse me, expose its properties and then we also

provide you the ability to do inter portlet communication or wire them together to pass

data from other parts into the Google Gadget, correct?

BOEZEMAN: Yes. Some of that features you have to be careful on the data and

the back end data, the gadget. What properties that it exposes to surface that capability.

But since it's wrappered in a portlet you can take advantage of the existing wiring

features and property broker features that we have in Portal Server.

JANSEN: I see. And so customers who are interested in exploring this further

-6-

can go out to the WebSphere Portal Zone and download that portlet and then start to be

able to leverage this capability for Google Gadgets.

BOEZEMAN: Exactly.

JANSEN: Excellent, excellent.

Let's see. So, oh, the other thing you were kind of talking about was how we've

leveraged Ajax. And so from an application development perspective, we have

capabilities that are built into the core WebSphere Portal platform that provide Ajax

functionality and that's what you were alluding to there.

And then above and beyond that, we have various tools be it portlet factory, a Rational

Application Developer that have built in capabilities that allow you to take advantage or

implement Ajax functionality within the portlets and portlet applications you're building.

BOEZEMAN: Yes, yes. So there's many features from that both from the tooling

side, for example, in portlet factory you can, they have builders for all different kinds of

Ajax enabled portlets so you can have, they have builders for a lot of the different

column renderings, table renderings and so forth so you can have those go out be it the

next page through an Ajax called alt.

Then with just a few clicks through GUI of portlet factory, you can generate portlets and

have that preembedded widgets. Additionally, we have wizards in Rational Application

Developer to allow you to generate Ajax based portlets.

We also, IBM's contributing heavily to the dojo environment and the dojo works just fine

inside portlet so you can have dojo in different environments.

Also there's, we've worked with other third party vendors like Adobe with Flex. We even

-7-

have Flex in portlets and so forth. So we've done a lot to open it up to allow any

different widget vendor and so forth or virtually any that work inside of portlets because

we don't restrict that.

But we've also done things like augmenting the dojo to allow it to be accessible, to allow

it to be fully supportive of the different location support based on IBM's contribution back

to dojo.

We use dojo, for example, inside some of the out of box themes and skins for rendering

and assembly. In the new, if you play around with the current open beta of Portal 6.1

you an see that a lot of new Web 2 features enabled like we talked about the client side

assembly of the page so assembling the whole page in the browser.

And this allows you to get partial page updates so you can as I interact with one portlet it

doesn't affect the other portlets. We do a lot of things in there also. We have a proxy

that allow you to proxy your data.

So say your data comes from a different domain, your browsers will restrict that. We

have a proxy so you can go through a proxy to get to that back end third party domain.

We do things like, we have active content filtering going on to allow some of the content

you're doing to save on all active content if that's what you want or filter it.

We've surfaced things like the feed reader portlet that we talked about. And the feeds

capability inside. We also heavily use Atom and ReST style type services inside of

Portal Server not only for this new assembling aspect, but also making those services

available so you can consume in your own portlets.

-8-

So for example, if I want to go get the navigation I can access the feed version of that.

Or I can go through a JavaScript interface to go retrieve that and it'll retrieve it via an

Atom request. Or an Atom will come back over and retrieve the data and you can do

whatever you want with that data like generate your navigation widget or something of

that nature.

So we've tried to take advantage of a lot of the new Web 2 features that fully enable

them in all the different browsers nowadays to surface those capabilities.

You can still do it in the existing product. So Portal 6.0 and 5.1 you can take advantage

of Ajax calls as Stefan probably explained in his podcast. Ajax [INAUDIBLE] back in 4.1

you can have Portal Server. So you can do that inside your portlet.

What we're now doing is opening up our different models and our services to also be

enabled as a Web 2 service via ReST style and Atom to be able to recombine to

whatever fashion you want as a consumer.

JANSEN: Excellent. Okay. That was kind of where I was going to go a little bit

next on some of the, you know, making sure that we did touch on the other technologies

that we typically associate with Web 2.0.

We've had in this series some podcasts on RSS and Atom and ReST and I think what

you were just saying basically gives us the, how we've gone ahead and utilized or

exposed these technologies to be used within WebSphere Portal.

I think that the feed reader portlet you were referring to is something that probably gets

used a lot for integration with other systems. And maybe when we get to the next

section where I kind of want to ask you about where we're going with composite

-9-

applications we can get more into maybe a little bit more discussion on ReST. But I

think that was a lot of great information, thanks, John.

So, you now, once your portal typically is a platform that allows you to aggregate dispirit

applications and so, you know, we have been a platform for delivering these composite

applications which are also referred to these days as mashups.

This type of application is typically associated with the technical side of Web 2.0. So,

you know, I recall back in WebSphere Portal 6.0 we introduced the capability of

composite application templates. So kind of giving you a little bit, a way to go ahead and

templateize your composite application definitions.

I was just wondering if you could provide some insight as to how composite applications

in WebSphere Portal have evolved to where they are today.

BOEZEMAN: Yes, sure. One of the things we saw after talking with a lot of

customers and feedback we've got and Portal back in Portal 5.1 was a lot of customers

wanted to take advantage of one aspect of Web 2.0 is user contribution and also some

of the self discovery aspects.

And one of the things that, and so we saw that missing or not necessarily exposed as

nicely as we wanted it to. So that's one of the reasons where composite applications

came from.

Composite applications from a high-level perspective is the ability to assemble different

disjoint content, maybe portlets, maybe some business logic and some set of pages or

portlets or some other type of components together into a template that's reusable,

recombinable, you can create multiple instances of that application, you can specify

-10-

points of variability.

By that I mean you can, so if I hear I need the following three types of parameters filled

out when I create an instance of this whole application. So there's these initialization

parameters that you can specify and surface as part of the template.

So you want to define this application, this nice mashup of these different business

logics, portlets and so forth. And assemble them together and be able to define them as

a reasonable recombinable template and then I can create instances of this application

by specifying some creation criteria. And then reuse them.

A good example of this in previous products is a [team space]. If anybody's looked at

Lotus Quickr, for example, they surface this capabilities similar to creating multiple team

spaces.

The idea I have three or four pages, a set of five portlets, I might have some back end

business logic like a wiki or a blog or some other back end service that needs to go

create a database table for example, composite apps allows you to define that set up of

pages and those portlets and even relate the business applications and components that

are not necessarily portlets that are also related to that composite application.

Additionally, then Portal now provides several life cycle management operations to those

portlets and those registered business components. Those business components are

registered using Eclipse extension framework. So there's a plug in XML that you define

for your business components.

And then inside there, we, Portal will even instantiate an instance of this application we

will notify the business components and the portlets that, hey, you're being instantiated.

-11-

And that business component might need to go create a database table, it might need to

go retrieve something out of the database, it might need to go call an EJB to do

something as part of this initialization.

And then there's several other life cycle notifications going on. Things like, I need to

serialize you and achieve your component, your whole application. And I need to

restore your application to a particular version. Or I need to delete that application

because I no longer need this application and go clean yourself up.

And there's a whole other session that we've had in the past on composite applications.

So I don't want to take up the whole time for this discussion, right.

But the idea is, is it's got a self management aspect so your business users can manage

the roles as a way to expose our fine-grained permissions into a higher-level role of

mappings.

So a business user can manage his, for example, team space or his workspace that he's

created. And allows us the user contribution and allow users to take back control of their

application so that you don't have to bring in an IT shop for each of these type of

operations.

JANSEN: Excellent. So that kind of almost speaks to some of the social

aspects of Web 2.0 when here we are providing the technical underpinnings that allow

that to be realized.

BOEZEMAN: Exactly, exactly.

JANSEN: So I was going to ask you, how, you know, what we're doing for

-12-

composite applications, a.k.a. mashups and WebSphere Portal differs from some of the

more consumer oriented mashup technologies we hear about these days.

It sounds to me like you just kind of gave us a bunch of those differentiators there and

how we've implemented this infrastructure. Would you, is that pretty much what you just

alluded to there?

BOEZEMAN: Just to be clear on that. A couple of key things I think that

differentiate us. One is the life cycle management aspect. I think that's a key one that's

often overlooked in a lot of the very light mashups that you see in today's technologies.

Where they just say I have some data and I want to go augment, go map with some

data. That's a very light mashup where you're not really controlling the data, you're not

controlling how it's really assembled.

Versus something in Portal where I'm saying that here's a managed component, I have

access control, very fine-grained access control around each element in the component.

I can control where that data came from, who it came from, I can pass in credentials on

getting that data and I can really take that data and manipulate it.

Along with that the composite applications gives you that lifecycle operations that you

virtually never see in any of the other lightweight kind of mashup tools that you see out

there.

For example, if I'm getting that data, maybe I need to, you know, because of compliance

and government regulations, I need to know what's on my site on January 1st, 2005. If

you're doing one of those light type of assemblies, you don't have that ability to go back

and look at the archive or restore back to that restore point.

-13-

Or say someone went and modified that mashup and it doesn't work and I need to get

back to the previous working version immediately I can't restore back.

So I think those life cycle operations are some really key aspect when you start dealing

in the business world with real business cases along with the enterprise ready access

control support. Those are some of the key, I would say, differentiators between us and

that.

But this also doesn't stop just to be clear, it doesn't stop you from doing lightweight

assemblies also. Inside your composite applications, you can take full advantage of

every Web 2.0 feature. You can take a Google Gadget for example, or a map or

something of that nature and mash up it with some data that came from the business

unit by calling Ajax calls back to the business component or to the portlets.

So you can do those client, those lightweight client side kind of mashups inside of

composite application or in just in Portal in general if you want to.

The thing that composite app really gives you is for the really enterprise kind of

applications where I need to track my data, I need to have the persistence and restoring

life cycle operations, really brings it up to the forefront.

But there's no reason you couldn't take those life cycle component models, take your

favorite client side widget and framework and assemble them together, mash them

together from that perspective. And when you try to do even surface some of that with

some of the new things we're doing in 6.1 about the proxy for example.

JANSEN: Excellent. So that's where I wanted to go next. I was just wondering

-14-

if you could kind of share some thoughts on where we are going with Web 2.0 as it

applies to WebSphere Portal and our future releases.

So I think you can talk about certainly, you know, WebSphere Portal 6.1 which is out in

beta now and just some ideas that you have about where we're going in general.

BOEZEMAN: Yes. I probably already stole your thunder a little bit by talking about

a few of the things earlier. But just kind of summarize those and also talk where we're

going from a long-term perspective to even maybe post 6.1.

From a high-level perspective, we're...portals been embracing the Web 2 and Ajax for a

while. 5.1 we had some Ajax, we had Ajax based kind of a themes and scan support.

6.0 we have, we are actually using it in all of our, in several out of box themes and

scans. Also in several portlets some of the composite app portlets that do Ajax calls that

go retrieve partial next set of tables and so forth.

And since that's become some, is now more common throughout the industry in the

different browser platforms, we can really start taking advantage of it internally. So that's

one big use case that we see and that's where we're going further.

As you see when in some of the new features in 6.1 if you play around with the current

open beta, you'll see that we've really embraced it for the capability.

But we also just to be clear, we also don't stop the...if you really want the fine-grained

server control that's fully supported so there's no, it's...and inside of an application,

inside of a page, set of hierarchy pages you say this page should be rendered on a

server or this page could be rendered on the client.

-15-

And so we in embracing the Web 2 technology, but not stopping the traditional type of

rendering mechanism if that's what your IT organization or as a customer you would like

to have.

But we, in 6.1, and you can play around with this in the 6.1 beta, we've completely made

it so that the Web 2 client side library is going to be a whole set of public APIs, allow you

to talk back to Portal Server.

We're exposing a lot of our data models available as ReST style services and the

protocol we picked was Atom as a way that we're exposing it.

And then we've provided a JavaScript infrastructure around that Atom to allow you to, so

you don't have to talk and decode Atom, you can just talk to JavaScript.

So, for example, you can go get the navigation model in Portal just via JavaScript. It'll

under the covers talk, open up an Ajax call to the Portal Server and retrieve the

navigation model as Atom and render it back as a JavaScript object.

This allows you to just write the nice Web 2 kind of fabby code in the client and now you

have access to the entire navigation. You have that access to that for the portlet

preferences, for some of the user groups features, to the page layout. So you can even

do your own client side rendering how you want to assemble the page in 6.1.

Additional service we allow you to do, we have a federation services that allow you to

make federated at the navigation level, multiple portal navigations together. And so just

ReST style services that we can access.

It also now assemble multiple portal navigations together, it's something we call

-16-

federated portal or [rubler] portal as some people like to call it.

We allow you to do how it retrieves the data, we can go through proxies to go retrieve it.

So we provide a very, a nice proxy that's being used across multiple products for

proxying the data to get outside the [tobain].

We are doing things like the whole, a new one is called, what we call semantec

frameworks or semantec tags. We allow you to find tags in your mark up to mean

different things.

For example, I might have a span tag that say class equal V card. And now anything in

that span is considered a V card. So you might only have to put an e-mail address

there. Now we can look in your current LDAP that you associated that portal with and go

retrieve the entire LDAP record for that user.

So when you hover over [John Boezeman] when it appears on a page, when I hover

over it, I can click there's a set of actions that expose up. Like, for example, you might

see my picture, my e-mail address, phone number, be able to go chat to me, send me

an e-mail and it will augment with other actions.

In your markup as the end user, also you had to specify was a span tag and class

equals, you know, WPS V card and give us an e-mail address, a wraparound whatever

text you wanted.

And so this makes it a lot easier for an author, content creator to augment their pages

with all kinds of additional semantic frameworks and semantec tags.

You can imagine you could do this for something like an address, a city, state kind of

-17-

aspect. You can do it with phone numbers, you can do it with...even we do several

demos that you'll see in the 6.1 with you are old click to action demo where we have

order IDs and order entries.

I can hover over an order ID and then click on it and submit it to different widgets all in

the browser. So it sends it over to the, which event to that widget in a browser. Then

from there, you can call back to the server to go retrieve that individual portlet markup.

So we've really made almost most of those services that people use and take advantage

of on the server side, exposing all those features and functions in the browser. So from

the rendering to the eventing to client side eventing to the ability to do partial portlet

updates.

Another thing we've done in 6.1 is allow you to take an existing application and we'll

automatically replace all the different form submits and anchor links that point to, back to

the portlet. We replace those with JavaScript calls that call a local code and that will do

an Ajax call underneath call back to that portlet.

So we can take an existing portlet and basically Web 2 Ajax-ify that portlet and make

that portlet work on a partial page update. So, I mean, it works for...you know, there are

some caveats, I don't want to say that works for every portlet that anybody's ever written

because if you do JavaScript kind of assembly where you're assembling the URL we

can't easily detect that in a browser.

But if it's a nice, well-structured portlet, we can basically turn it into an Ajax enabled

portlet without a customer ever having to write a single line of code or even know how to

spell what an XML HP request is or the return codes and so forth. So you can take your

existing portlets and basically allow them to play ball in the Web 2 space.

-18-

Additionally, you know, we've turned in, made several [thinks] and feeds. We've also

have, are doing things with calendar and documents. A document supports being able

to feed and we're embracing it across the product stack.

I'm assuming that in one of these other podcasts, they've also talked about that to you all

and how we're embracing the connections products and the quicker products, making

the data be available in the ReST style feeds so they can recombined and assembled

together.

So those are kind of the things in the immediate 6.1 timeframe. There's a lot more detail

that we can go into whole session on just some of those finer grain things.

But additionally, I'd like to just talk beyond 6.1 and maybe it might make 6.1 but beyond

6.1 some of the things that we're also looking at is allowing you to do some additional

client side kind of mashups from the component model.

So no only can today, like I said, you can do the rich composite application mashups and

assemblies and managed real enterprise assemblies. And you can also do client side.

We don't provide some built in mechanisms for doing some of that client side other than

through some other JavaScript frameworks and so forth.

And we're looking at maybe in the long term providing some UI frameworks around

allowing you to do those client side mash ups very easily and targeted towards the

business user kind of set of widgets and so forth.

So you can do those client side assemblies very easily and set up the eventing between

them all from a client side. So we're, so that's kind of a future direction, you know, watch

-19-

this space kind of aspect.

But those are kind of the...so we're really just to kind of summarize. You know, you can

see throughout almost everything that we've done we're really trying to surface these as

ReST style feeds and services, a lot of features and functions.

And we're using it but at the same time we want to protect in the investment in today's

existing environments and apps. So all the existing old ways work. You don't have to

use the Web 2 theme if you don't want to.

If you don't have to take advantage of Ajax if you don't want to or take advantage of the

proxy if you don't want to. All these features we try to make them as just ways to

augment you as a consumer even beside which and where it makes in your

infrastructure, where you would like to take advantage of and where you would not.

As a platform we try to make, surface all these things multiple way. There's three or four

ways to do an almost everything from a Web 2 to a service side to a mixed model. And

to make it so you can combine it whichever way makes sense for you as a consumer.

JANSEN: I think you summarized it very well. One thing that caught my

ear...well, there's many things, but one thing in particular was the fact that a developer

can go ahead and Ajax-ize, I think was the term you used, to an existing portlet and

without having to do any additional work.

So I think that's something that people will definitely like to explore and will be very

interested in, as well as the numerous other features that we're implementing here in

WebSphere Portal 6.1, as well as where we're going in the future around some of the

client side aggregation things.

-20-

BOEZEMAN: And related to that, I just when you said that it made me remember

one other new thing that we're having in 6.1. Not in the current 6.1 beta but it will be

when we update the next refresh probably of the beta.

And that's the ability to define your pages and normal your favorite HTML editing tool

along with CSSs and so forth. And then upload those into portal. And so you can

basically use your favorite tools, upload those pages and create portal pages that base

off those templates.

And we created a new tag just like we have the span class equals, you know, V card.

There's a span and a class equal, you know, WPS portlet. This will allow your Web

content creators, they can create and use your, their favorite HTML editing tool the

define the whole page layout.

And then wherever they want the portlet to go, they just put this span with portlet, you

know, it's like a portlet goes here tag but you span class equals WPS portlet. And then

you, we require one parameter that tells us the concrete portlet name.

With that, we allow you to, you know, create whole portal pages and portlet instances

without having to use RUI for example. Now you can create those in your favorite tool

and upload them into portal and portal when the [VAS] surrender that page will use that

HTML to render the page.

So you no longer constrain to our layout mechanism that we do in Portal. You can use,

you know, CSS positional layout, you can take advantage of all the layer features from

that perspective and [div] based layout. You can define your...you don't even have to

use themes in that example. I could define a whole page as an HTML file and take over

-21-

the whole page. And bypass the themes if I want to.

Or I can include if you have, if you don't include the H, the body tag and the HTML tag,

then we'll render the themes. But in the content area of the page, we'll render that

HTML as a fragment.

So this allows you to take advantage of any of the latest technologies and rendering

mechanisms but now insert portlets wherever you want to just like you would an image

tag.

JANSEN: That's great. Thanks for that additional bit of information. So I think

what we want to do is strongly encourage our listeners to go out to the WebSphere

Portal Zone and that's where you can go ahead and get the download for WebSphere

Portal 6.1 beta.

As part of that there's also a WebSphere Portal Factory 6.1 beta. So we would love for

our audience to go out and download it, use it and especially provide us with feedback

on it so that we can go ahead and improve the product before we go ahead and GA it.

So, John, thanks a lot for taking the time to talk to us today and provide some great

information. I just like to remind our listeners that this is one in a series of podcasts that

we've done here on the use of Web 2.0 within Lotus and WebSphere Portal products

and I'd like to thank you all very much for listening today.

[END OF SEGMENT]