Hallo alle,
das Bauen von Portlets mit Velocity geht grunds�tlich auf zwei Wegen:
1. Man kann einen Velocity-File direkt als Portlet registrieren, au�erdem
dazu auch eine Action-Klasse angeben. Ich wei� nur in der Theorie, wie das
geht, vielleicht k�nnen die Velocity-Experten das besser beurteilen. So ein
Portlet zu bauen erfordert lediglich einen Eintrag in einem
Konfigurationsfile, wo vor allem das template und die klasse angegeben werden.
Hat man alle Templates und Action-Klassen, sollte man relativ leicht in
Jetspeed eine Applikation daraus herstellen k�nnen.
2. Die M�glichkeit, die ich verwendet habe: Man schreibe eine Klasse nach
folgendem Muster:
package com.bluesunrise.portal.portlets;
import org.apache.jetspeed.portal.portlets.AbstractPortlet;
import org.apache.turbine.util.RunData;
mport org.apache.ecs.ConcreteElement;
import org.apache.ecs.StringElement;
public class HelloWorldPortlet extends AbstractPortlet
{
��� public ConcreteElement getContent (RunData runData)
��� {
������� return (new StringElement ("Hello World!"));
�� }
}
Die R�ckgabe der getConent-Methode wird im Portlet angezeigt. Hier kann man
ein Velocity-Template rendern und vorher die ben�tigten Daten in den Context
schieben. In diesem Java-Code kann man alles machen, was man will. Die Klasse
mu� auch in einem Konfigurationsfile registriert werden.
Die erste Methode ist wahrscheinlich die elegantere und entspricht mehr dem
turbine-m��igen vorgehen, das zweite ist mehr die quick-and-dirty Variante.
Ob man Flux in Jetspeed verwenden kann, wei� ich nicht. Wir haben per Torque
direkt auf die Turbine-Datenbank zugegriffen. Jetspeed enth�lt Seiten f�r
Dinge wie Benutzerregistrierung, die einem das meiste abnehmen.
Hoffe, das hilft weiter
Stefan
Am Donnerstag, 27. Juni 2002 14:21 schrieben Sie:
> Hallo alle miteinander,
>
> Herr Kuhn ist ja schon sehr weit; ich noch nicht so sehr :), deshalbt
> m�ssen wir jetzt mal mit der Beispielapplikation beginnen. Ich denke,
> ein guter Konsens w�re es, das Auktionshaus zu machen. Hierbei k�nnen
> wir uns ja auf den javashop, wie von Herrn Kuhn vorgeschlagen, st�tzen -
> eine Bestellung ist jetzt eben eine Auktion, Produkt und User bleiben.
>
> Hier die Einzelanforderungen (bitte bei weiteren Ideen erg�nzen):
>
> - Portlet mit Kategorien�bersicht, Unterkategorien, und Produkt mit
> Ablaufdatum usw.
> - Entweder in diesem Portlet, oder als Extraportlet die
> Ersteigerungsmaske
> - Ein Portlet mit eigenen bereits ersteigerten Produkten
> - Ein Bewertungsportlet
> - Ein Cron, der alle paar Minuten nach beendeten Auktionen sucht, und
> eine Email an Bieter und Verk�ufer sendet (einfach mit Turbine zu
> machen).
>
> Die Funktionen k�nnen ruhig rudiment�r sein (ist dann denke ich auch
> nicht zu viel Arbeit).
> Zur Aufteilung, mein Vorschlag:
> Dapeng und ich k�nnten die Gesch�ftslogik machen, J�rgen macht die
> Velocity Templates f�r die Einzelportlets, und Herr Kuhn setzt das alles
> mit Jetspeed zusammen (m�sste dann auch Actions und Screens machen;
> k�nnen wir uns auch aufteilen).
>
> Ein paar Detailfragen noch:
> Ich w�rde sagen, dass wir zur Userverwaltung das Turbine-eigene Flux
> benutzen - geht das unter Jetspeed ohne Probleme? Beim User speichern
> wir ja noch mehr, in einer Extratabelle, oder? Wollen wir Permissions
> und Groups einbinden und benutzen, oder uns einfach auf Roles (K�ufer,
> Verk�ufer, Admin) beschr�nken?
>
> Zum weiteren Vorgehen:
> Soll ich bei Sourceforge ein Projekt f�r uns anlegen, oder �bermitteln
> wir �nderungen ganz rudiment�r per Email an diese Adresse? Und k�nnen
> Sie, Herr Kuhn, uns ein Rohger�st/-portlet geben, das wir mit den
> unterschiedlichen Features f�llen k�nnen?
>
> Vielleicht kann jeder heute noch was dazu sagen (v.a. zu Aufteilung und
> Features), dann kann ich bis morgen/Wochenende mal ein rudiment�res
> Datenbankschema abgeben.
>
> Bis dann, Fabian T.
--
Stefan Kuhn M. A.
MPI of Chemical Ecology, Winzerlaer Str. 10, Beutenberg Campus, 07745
Jena, Germany
Tel: +49(0)3641 571261 - Fax: +49(0)3641 571202
--
To unsubscribe, e-mail: <mailto:[EMAIL PROTECTED]>
For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>