Zuerstmal brauchst du nen Portalserver:
- Pluto
- Jetspeed2
- Liferay
- Bea
- JBoss
- IBM
Das sind mal ein paar von den vorhandenen.
Dann irgendeine Ide, NB, Eclipse, Rational Application Developer (RAD). Den RAD würd ich dir zum anfangen nicht empfehlen da er extrem viel IBM-spezifisches Zeugs macht und du das nicht merkst wenn du grade erst anfängst.
Würd dir Eclipse 3.3 Europe Edition empfehlen, bzw. Eclipse 3.x + WTP. Dann legst du einfach ein Dynamic Web Project an und packst da die Portlet-API als externe Lib rein (liegt im Portalserver normal unter shared/lib).
Dann kanns auch schon losgehen, programmiert sich ähnlich wie ein Servlet nur dass du statt doGet, doPost eben die Methoden
doView, doEdit, evtl. doConfig und doHelp hast. Dann noch ne Methode actionPerformed oder renderAction oder wie auch immer die heißt, kommt auf den Portalcontainer an (und v.a. ob er sich aj die JSR-168 hält).
Also ne neue Klasse, die wiederum von GenericPortlet erben lassen bzw. Portlet implementieren und los gehts.
Ne JSP erstellen und eben statt mit den normalen request/response-Objekten arbeitst du jetzt mit portletRequest und portletResponse. Im Portletumfeld hast du eben auch einen PortletRequest/PortletResponse anstatt einem HttpServletRequest/HttpServletResponse.
Jetspeed z.B. hat viele kleine Applikationen dabei welche das Vorgehen sehr gut verdeutlichen. Einfach mal jetspeed2 installieren und evtl. im webcvs/svn dann unter applications die CalendarApp anschauen. Damit kannst mal anfangen.
Ach ja, die portlet.xml gehört natürlich unter WEB-INF. Deployen tust du die Anwendung über export as war und dann in die deploy-dir des PortalServers kopieren.
masseur81 hat gesagt.:
Der Tomcat ist ein Webserver, damit kannst du kein Portlet laufen lassen. Oder gibts mittlerweile nen Tomcat-Portletcontainer?
Jein, Jetspeed 1&2 und Pluto lassen sich in fast jeden Servletcontainer integrieren, u.a. auch Tomcat.