SV: SV: Help setting up hello world
Søren Blidorf <[email protected]> Thu, 3 Jun 2010 21:01:14 +0200
| Newsgroups | gmane.comp.jakarta.pluto.user |
|---|---|
| Message-ID | <59ECFB4856284FB2817423C929CDA62A@NOLAS> |
This is a multi-part message in MIME format.
------=_NextPart_000_0378_01CB035F.E77A75D0
Content-Type: text/plain;
charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
That did it.
=20
My mistake was that I read the directory diagram so that webapp goes in
java. :o/
=20
HelloWorldPortlet (top level directory)
|- pom.xml (the pom file)
|- src (Subdir containing main subdirectory)
|- main (Subdir containing java, resources and
webapp subdirs)
|- java (java source code =
goes
under here)
| `- com
| `- mycompany
| `- =
portlet
| `-
HelloWorldPortlet.java (portlet source)
|- webapp (webapp =
resources
(jsp, css, images) go under here)
`- jsp =
=20
`- HelloWorldPortletView.jsp (for view mode)
=20
`- HelloWorldPortletEdit.jsp (for edit mode)
`-
META-INF
=20
`- HelloWorldPortlet.xml (Tomcat context deployment descriptor)
`- =
WEB-INF
=20
`- portlet.xml (JSR-168 deployment descriptor)
=20
`- web.xml (This will be modified by maven-pluto-plugin)
=20
-----Oprindelig meddelelse-----
Fra: Gary Weaver [mailto:[email protected]]=20
Sendt: 3. juni 2010 20:15
Til: [email protected]
Emne: Re: SV: Help setting up hello world
=20
To be more literally answering your question, and copying pasting code =
from
that wiki page in large part, it might look like this:
=20
---start src/main/java/helloworld/HelloWorld.java which after war =
deployed
becomes
/path/to/tomcat/webapps/webapp_name/WEB-INF/classes/helloworld/HelloWorld=
.ja
va ---
package helloworld;
import javax.portlet.*;=20
import java.io.*;=20
=20
public class HelloWorld extends GenericPortlet {=20
public void doView(RenderRequest request,RenderResponse response)=20
throws PortletException,IOException {=20
=20
// Get our preferences
PortletPreferences pref =3D request.getPreferences();
=20
// Get the value of "displaytext" from our preferences, if not
available,
// then use the second string passed to the function
String displayText =3D pref.getValue("displaytext", "MISSING:
display-text");
// displays the string from our preferences
=20
response.setContentType(request.getResponseContentType());=20
PrintWriter writer =3D response.getWriter();=20
writer.write(displayText);=20
}=20
}
---end HelloWorld.java---
=20
---start src/main/webapp/WEB-INF/web.xml which after war deployed =
becomes
/path/to/tomcat/webapps/webapp_name/WEB-INF/web.xml ---
<?xml version=3D"1.0" encoding=3D"ISO-8859-1"?>=20
<!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application
2.3//EN"=20
"http://java.sun.com/dtd/web-app_2_3.dtd">
=20
<web-app>
<display-name>HelloWorld</display-name>
<description>Hello World Portlet</description>
</web-app>
---end web.xml---
=20
---start src/main/webapp/WEB-INF/portlet.xml after war deployed becomes
/path/to/tomcat/webapps/webapp_name/WEB-INF/portlet.xml ---
<?xml version=3D"1.0" encoding=3D"UTF-8"?>
<portlet-app =
xmlns=3D"http://java.sun.com/xml/ns/portlet/portlet-app_1_0.xsd"
version=3D"1.0">=20
<portlet>=20
<portlet-name>HelloWorld</portlet-name>=20
<portlet-class>helloworld.HelloWorld</portlet-class>=20
<expiration-cache>0</expiration-cache>=20
<supports>=20
<mime-type>text/html</mime-type>=20
<portlet-mode>VIEW</portlet-mode>=20
</supports>=20
<supported-locale>en</supported-locale>
<portlet-info>=20
<title>HelloWorld</title>=20
<keywords>Hello, world, test</keywords>
</portlet-info>
<portlet-preferences>
<preference>
<name>displaytext</name>
<value>Hello, from your preferences</value>
</preference>
</portlet-preferences>
</portlet>
</portlet-app>
---end portlet.xml---
=20
with Pluto related jars put into /path/to/tomcat/shared/lib (and if =
tomcat6
then /path/to/tomcat/conf/server.xml modified to support use of =
shared/lib).
=20
On Jun 3, 2010, at 2:01 PM, Gary Weaver wrote:
If you look at that second link I sent:
https://wiki.jasig.org/display/PLT/Hello+World+Portlet
=20
It has an example simple web.xml, portlet.xml, etc. If you are new to =
Java
or Java web applications, you probably out to read up on that and Maven
prior to getting into the portlet side of things, though.
=20
As for where to go after Hello World, I lot of people use Spring Portlet
MVC, in which case you might do something like this in web.xml (I tried =
to
strip out the unnecessary parts, but not sure how good of a job I did):
=20
<?xml version=3D"1.0" encoding=3D"UTF-8"?>
<!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application
2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd">
<web-app>
<display-name>yourportletname</display-name>
<description>Description of the portlet</description>
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>
/WEB-INF/context/portlet/nameofyourportlet.xml
</param-value>
</context-param>
<context-param>
<param-name>webAppRootKey</param-name>
<param-value>some.parent.package.newofyourportlet</param-value>
</context-param>
<listener>
=20
<listener-class>org.springframework.web.util.WebAppRootListener</listener=
-cl
ass>
</listener>
<listener>
=20
<listener-class>org.springframework.web.context.ContextLoaderListener</li=
ste
ner-class>
</listener>
<servlet>
<servlet-name>ViewRendererServlet</servlet-name>
=20
<servlet-class>org.springframework.web.servlet.ViewRendererServlet</servl=
et-
class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>ViewRendererServlet</servlet-name>
<url-pattern>/WEB-INF/servlet/view</url-pattern>
</servlet-mapping>
</web-app>
=20
And could look at this as an example of spring context, pom.xml,
portlet.xml, etc.:
https://source.jasig.org/sandbox/MailPortlet/tags/rel-2.0.0-alpha-7/
=20
There are also a Grails Portlet project and a Rails-portlet project, I =
think
both aimed at JSR-286 implementations like Liferay (I know the latter is =
at
the moment).
=20
If you want to see what is it really doing in the assembly portion, look =
at
FileAssembler.java. For example I found it here:
http://github.com/apache/pluto/blob/trunk/pluto-util/src/main/java/org/ap=
ach
e/pluto/util/assemble/file/FileAssembler.java
=20
Gary
=20
=20
On Jun 3, 2010, at 1:33 PM, S=F8ren Blidorf wrote:
Thanks Gary. I will look at it.
=20
When I use mvn package I get a build error - invalid web.xml.
=20
Does anybody know what is needed in the web.xml for maven to concider it
valid?
=20
Soren
=20
-----Oprindelig meddelelse-----
Fra: Gary Weaver [mailto:[email protected]]=20
Sendt: 3. juni 2010 17:22
Til: [email protected]
Emne: Re: Help setting up hello world
=20
Soren,
=20
Assuming you are talking about this hello world example?:
http://portals.apache.org/pluto/v20/deploying.html
=20
I also just found another example, even though it is geared for uPortal
rather than the example Pluto server. (But uPortal uses Pluto and =
supports
JSR-168 compliant portlets, so should work.):
https://wiki.jasig.org/display/PLT/Hello+World+Portlet
=20
Some other example portlets are here:
https://source.jasig.org/portlets/
there are also some in here but not all of these work:
https://source.jasig.org/sandbox/
=20
As of 2010/06/03 I'm not sure how any of those if any are JSR-286 (most =
are
still JSR-168), but that shouldn't matter afaik just to get something =
simple
working.
=20
Some miscellaneous tips/notes:
* Pluto's jars should be in the shared/lib area, which requires some =
change
to the default Tomcat 6 config to have it look for. That is the most
appropriate place for it, afaik.
* Like any war, if you unzip the war, it should unzip its contents into =
the
current directory (i.e. is isn't unzipping into (webapp directory =
name)/...
). That is just a war thing, not specific to portlets. This only matters =
if
you tried to make the war by hand.
* Pluto's assembly API must be used to prep the war. There is a
maven-pluto-plugin that can help with this (it uses Pluto assembly). =
Pluto
assembly looks at the portlet.xml then modifies the web.xml and adds
portlet*.tld file(s).
* Even though Tomcat is much more lenient when it decompresses a war, =
Pluto
assembly (used by maven-pluto-plugin) uses the standard Java API to =
unjar
the war, and if the META-INF/MANIFEST.MF file isn't the first entry (and
there should be only one manifest), it will choke (and the error is not =
that
helpful).
* Just because maven-pluto-plugin preps the war doesn't mean it is a =
valid
portlet (or even valid web.xml and portlet.xml for a portlet) or that it
will even register in Pluto afaik. You need to make sure that web.xml is
cleaned up and that you didn't try to add the stuff that Pluto assembly =
puts
into it. (For info on how to clean it up if you need that, see the =
unplutofy
project).
* In newer versions of pluto (not sure what version, but sometime =
between
1.0.0-RC2 and 1.1.7), portlets register themselves with pluto (I think). =
So
you can someone tell if a portlet is available and at least valid enough =
for
Pluto to register it (although it still may not work) if the logs showed
that it registered. It may not register each time though? Registering is
different than just Tomcat deploying the war (it is the line right after
that in the logs usually, I think).
=20
Hopefully none of that info is wrong, and please anyone feel free to =
correct
or clarify those.
=20
Wish I could provide more info, but maybe some of that will help.
=20
Gary
=20
=20
On Jun 3, 2010, at 5:58 AM, S=F8ren Blidorf wrote:
=20
Hi.
=20
I am new to portlets and Pluto.
=20
I have installed Pluto on my existing Tomcat and it works fine.
=20
However I am having difficulties setting up a helloworld portlet.
=20
I have created the portlet.xml and the helloworld.java. Compiled and =
deploy
but nothing happens.
=20
I have tried different examples on google, but nothing works.
=20
Does anybody have a helloworld.war file of a describsion for dummies on =
how
to get a helloworld to work.
=20
Soren
=20
=20
=20
=20
------=_NextPart_000_0378_01CB035F.E77A75D0
Content-Type: text/html;
charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
<html>
<head>
<META HTTP-EQUIV=3D"Content-Type" CONTENT=3D"text/html; =
charset=3Diso-8859-1">
<meta name=3DGenerator content=3D"Microsoft Word 10 (filtered)">
<style>
<!--
/* Font Definitions */
@font-face
{font-family:Helvetica;
panose-1:2 11 6 4 2 2 2 2 2 4;}
@font-face
{font-family:"Monotype Corsiva";
panose-1:3 1 1 1 1 2 1 1 1 1;}
@font-face
{font-family:Tahoma;
panose-1:2 11 6 4 3 5 4 4 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
{margin:0cm;
margin-bottom:.0001pt;
font-size:12.0pt;
font-family:"Times New Roman";}
p.MsoEnvelopeAddress, li.MsoEnvelopeAddress, div.MsoEnvelopeAddress
{margin-top:0cm;
margin-right:0cm;
margin-bottom:0cm;
margin-left:144.0pt;
margin-bottom:.0001pt;
font-size:20.0pt;
font-family:"Monotype Corsiva";
color:gray;
font-style:italic;}
p.MsoEnvelopeReturn, li.MsoEnvelopeReturn, div.MsoEnvelopeReturn
{margin:0cm;
margin-bottom:.0001pt;
font-size:16.0pt;
font-family:"Monotype Corsiva";
color:gray;
font-style:italic;}
a:link, span.MsoHyperlink
{color:blue;
text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
{color:blue;
text-decoration:underline;}
span.EmailStyle21
{font-family:Arial;
color:navy;}
@page Section1
{size:595.3pt 841.9pt;
margin:3.0cm 2.0cm 3.0cm 2.0cm;}
div.Section1
{page:Section1;}
-->
</style>
</head>
<body lang=3DDA link=3Dblue vlink=3Dblue style=3D'word-wrap: =
break-word;-webkit-nbsp-mode: space;
-webkit-line-break: after-white-space'>
<div class=3DSection1>
<p class=3DMsoNormal><font size=3D2 color=3Dnavy face=3DArial><span =
style=3D'font-size:
10.0pt;font-family:Arial;color:navy'>That did it.</span></font></p>
<p class=3DMsoNormal><font size=3D2 color=3Dnavy face=3DArial><span =
style=3D'font-size:
10.0pt;font-family:Arial;color:navy'> </span></font></p>
<p class=3DMsoNormal><font size=3D2 color=3Dnavy face=3DArial><span =
lang=3DEN-GB
style=3D'font-size:10.0pt;font-family:Arial;color:navy'>My mistake was =
that I
read the directory diagram so that webapp goes in java. =
:o/</span></font></p>
<p class=3DMsoNormal><font size=3D2 color=3Dnavy face=3DArial><span =
lang=3DEN-GB
style=3D'font-size:10.0pt;font-family:Arial;color:navy'> </span></fo=
nt></p>
<p class=3DMsoNormal><font size=3D2 color=3Dnavy face=3DArial><span =
lang=3DEN-GB
style=3D'font-size:10.0pt;font-family:Arial;color:navy'>HelloWorldPortlet=
(top
level directory)</span></font></p>
<p class=3DMsoNormal><font size=3D2 color=3Dnavy face=3DArial><span =
lang=3DEN-GB
style=3D'font-size:10.0pt;font-family:Arial;color:navy'>=A0=A0=A0=A0=A0=A0=
=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 |- pom.xml
(the pom file)</span></font></p>
<p class=3DMsoNormal><font size=3D2 color=3Dnavy face=3DArial><span =
lang=3DEN-GB
style=3D'font-size:10.0pt;font-family:Arial;color:navy'>=A0=A0=A0=A0=A0=A0=
=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 |- src
(Subdir containing main subdirectory)</span></font></p>
<p class=3DMsoNormal><font size=3D2 color=3Dnavy face=3DArial><span =
lang=3DEN-GB
style=3D'font-size:10.0pt;font-family:Arial;color:navy'>=A0=A0=A0=A0=A0=A0=
=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 =A0=A0=A0
|- main (Subdir containing java, resources and webapp =
subdirs)</span></font></p>
<p class=3DMsoNormal><font size=3D2 color=3Dnavy face=3DArial><span =
lang=3DEN-GB
style=3D'font-size:10.0pt;font-family:Arial;color:navy'>=A0=A0=A0=A0=A0=A0=
=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 =A0=A0=A0
=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 |- java (java source =
code goes under here)</span></font></p>
<p class=3DMsoNormal><font size=3D2 color=3Dnavy face=3DArial><span =
lang=3DEN-GB
style=3D'font-size:10.0pt;font-family:Arial;color:navy'>=A0=A0=A0=A0=A0=A0=
=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=
=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 =A0=A0=A0
|=A0=A0=A0=A0=A0=A0 `- com</span></font></p>
<p class=3DMsoNormal><font size=3D2 color=3Dnavy face=3DArial><span =
lang=3DEN-GB
style=3D'font-size:10.0pt;font-family:Arial;color:navy'>=A0=A0=A0=A0=A0=A0=
=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=
=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 =A0=A0
=A0|=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 `- mycompany</span></font></p>
<p class=3DMsoNormal><font size=3D2 color=3Dnavy face=3DArial><span =
lang=3DEN-GB
style=3D'font-size:10.0pt;font-family:Arial;color:navy'>=A0=A0=A0=A0=A0=A0=
=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=
=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 =A0=A0=A0
|=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 `- portlet</span></font></p>
<p class=3DMsoNormal><font size=3D2 color=3Dnavy face=3DArial><span =
lang=3DEN-GB
style=3D'font-size:10.0pt;font-family:Arial;color:navy'>=A0=A0=A0=A0=A0=A0=
=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=
=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 =A0=A0=A0
|=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 `- =
HelloWorldPortlet.java (portlet source)</span></font></p>
<p class=3DMsoNormal><font size=3D2 color=3Dnavy face=3DArial><span =
lang=3DEN-GB
style=3D'font-size:10.0pt;font-family:Arial;color:navy'>=A0=A0=A0=A0=A0=A0=
=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=
=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 =A0=A0=A0
|- webapp=A0 (webapp resources (jsp, css, images) go under =
here)</span></font></p>
<p class=3DMsoNormal><font size=3D2 color=3Dnavy face=3DArial><span =
lang=3DEN-GB
style=3D'font-size:10.0pt;font-family:Arial;color:navy'>=A0=A0=A0=A0=A0=A0=
=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=
=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 =A0=A0=A0
=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 `- jsp =
</span></font></p>
<p class=3DMsoNormal><font size=3D2 color=3Dnavy face=3DArial><span =
lang=3DEN-GB
style=3D'font-size:10.0pt;font-family:Arial;color:navy'>=A0=A0=A0=A0=A0=A0=
=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=
=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 =A0=A0=A0
=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=
=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 `- HelloWorldPortletView.jsp =
(for view
mode)=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=
=A0=A0=A0 =
=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=
=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=
=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 =
=A0=A0=A0=A0</span></font></p>
<p class=3DMsoNormal><font size=3D2 color=3Dnavy face=3DArial><span =
lang=3DEN-GB
style=3D'font-size:10.0pt;font-family:Arial;color:navy'>=A0=A0=A0=A0=A0=A0=
=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=
=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 =A0=A0=A0
=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=
=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 `- HelloWorldPortletEdit.jsp =
(for edit
mode)=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=
=A0=A0 =A0=A0=A0 =
=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=
=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=
=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 =
=A0=A0=A0=A0</span></font></p>
<p class=3DMsoNormal><font size=3D2 color=3Dnavy face=3DArial><span =
lang=3DEN-GB
style=3D'font-size:10.0pt;font-family:Arial;color:navy'>=A0=A0=A0=A0=A0=A0=
=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=
=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 =A0=A0=A0
=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 `- =
META-INF</span></font></p>
<p class=3DMsoNormal><font size=3D2 color=3Dnavy face=3DArial><span =
lang=3DEN-GB
style=3D'font-size:10.0pt;font-family:Arial;color:navy'>=A0=A0=A0=A0=A0=A0=
=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=
=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 =A0=A0=A0
=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=
=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 `- HelloWorldPortlet.xml =
(Tomcat
context deployment descriptor)</span></font></p>
<p class=3DMsoNormal><font size=3D2 color=3Dnavy face=3DArial><span =
lang=3DEN-GB
style=3D'font-size:10.0pt;font-family:Arial;color:navy'>=A0=A0=A0=A0=A0=A0=
=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=
=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 =A0=A0=A0
=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 `- =
WEB-INF</span></font></p>
<p class=3DMsoNormal><font size=3D2 color=3Dnavy face=3DArial><span =
lang=3DEN-GB
style=3D'font-size:10.0pt;font-family:Arial;color:navy'>=A0=A0=A0=A0=A0=A0=
=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=
=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=
=A0=A0=A0=A0=A0=A0=A0=A0 =A0=A0=A0
=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 `- portlet.xml =
(JSR-168 deployment descriptor)</span></font></p>
<p class=3DMsoNormal><font size=3D2 color=3Dnavy face=3DArial><span =
lang=3DEN-GB
style=3D'font-size:10.0pt;font-family:Arial;color:navy'>=A0=A0=A0=A0=A0=A0=
=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=
=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=
=A0=A0=A0=A0=A0=A0=A0=A0 =A0=A0=A0
=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 `- web.xml (This =
will be modified by maven-pluto-plugin)</span></font></p>
<p class=3DMsoNormal><font size=3D2 color=3Dnavy face=3DArial><span =
lang=3DEN-GB
style=3D'font-size:10.0pt;font-family:Arial;color:navy'> </span></fo=
nt></p>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D2 =
face=3DTahoma><span
style=3D'font-size:10.0pt;font-family:Tahoma'>-----Oprindelig =
meddelelse-----<br>
<b><span style=3D'font-weight:bold'>Fra:</span></b> Gary Weaver
[mailto:[email protected]] <br>
<b><span style=3D'font-weight:bold'>Sendt:</span></b> 3. juni 2010 =
20:15<br>
<b><span style=3D'font-weight:bold'>Til:</span></b> =
[email protected]<br>
<b><span style=3D'font-weight:bold'>Emne:</span></b> Re: SV: Help =
setting up
hello world</span></font></p>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D3
face=3D"Times New Roman"><span =
style=3D'font-size:12.0pt'> </span></font></p>
<div>
<div>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D3
face=3D"Times New Roman"><span style=3D'font-size:12.0pt'>To be more =
literally
answering your question, and copying pasting code from that wiki page in =
large
part, it might look like this:</span></font></p>
</div>
<div>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D3
face=3D"Times New Roman"><span =
style=3D'font-size:12.0pt'> </span></font></p>
</div>
<div>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D3
face=3D"Times New Roman"><span style=3D'font-size:12.0pt'>---start
src/main/java/helloworld/HelloWorld.java which after war deployed =
becomes
/path/to/tomcat/webapps/webapp_name/WEB-INF/classes/helloworld/HelloWorld=
.java
---</span></font></p>
</div>
<div>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D3
face=3D"Times New Roman"><span style=3D'font-size:12.0pt'>package =
helloworld;</span></font></p>
</div>
<div>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D3
face=3D"Times New Roman"><span style=3D'font-size:12.0pt'>import =
javax.portlet.*; </span></font></p>
</div>
<div>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D3
face=3D"Times New Roman"><span style=3D'font-size:12.0pt'>import =
java.io.*; </span></font></p>
</div>
<div>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D3
face=3D"Times New Roman"><span =
style=3D'font-size:12.0pt'> </span></font></p>
</div>
<div>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D3
face=3D"Times New Roman"><span style=3D'font-size:12.0pt'>public class =
HelloWorld
extends GenericPortlet { </span></font></p>
</div>
<div>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D3
face=3D"Times New Roman"><span style=3D'font-size:12.0pt'> =
public void
doView(RenderRequest request,RenderResponse =
response) </span></font></p>
</div>
<div>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D3
face=3D"Times New Roman"><span style=3D'font-size:12.0pt'> =
throws PortletException,IOException { </span></font></p>
</div>
<div>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D3
face=3D"Times New Roman"><span =
style=3D'font-size:12.0pt'> </span></font></p>
</div>
<div>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D3
face=3D"Times New Roman"><span style=3D'font-size:12.0pt'> =
// Get our preferences</span></font></p>
</div>
<div>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D3
face=3D"Times New Roman"><span style=3D'font-size:12.0pt'> =
PortletPreferences pref =3D =
request.getPreferences();</span></font></p>
</div>
<div>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D3
face=3D"Times New Roman"><span =
style=3D'font-size:12.0pt'> </span></font></p>
</div>
<div>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D3
face=3D"Times New Roman"><span style=3D'font-size:12.0pt'> =
// Get the value of "displaytext" from our preferences, =
if not
available,</span></font></p>
</div>
<div>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D3
face=3D"Times New Roman"><span style=3D'font-size:12.0pt'> =
// then use the second string passed to the =
function</span></font></p>
</div>
<div>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D3
face=3D"Times New Roman"><span style=3D'font-size:12.0pt'> =
String displayText =3D pref.getValue("displaytext",
"MISSING: display-text");</span></font></p>
</div>
<div>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D3
face=3D"Times New Roman"><span style=3D'font-size:12.0pt'> =
// displays the string from our preferences</span></font></p>
</div>
<div>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D3
face=3D"Times New Roman"><span =
style=3D'font-size:12.0pt'> </span></font></p>
</div>
<div>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D3
face=3D"Times New Roman"><span style=3D'font-size:12.0pt'> =
response.setContentType(request.getResponseContentType()); </s=
pan></font></p>
</div>
<div>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D3
face=3D"Times New Roman"><span style=3D'font-size:12.0pt'> =
PrintWriter writer =3D =
response.getWriter(); </span></font></p>
</div>
<div>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D3
face=3D"Times New Roman"><span style=3D'font-size:12.0pt'> =
writer.write(displayText); </span></font></p>
</div>
<div>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D3
face=3D"Times New Roman"><span style=3D'font-size:12.0pt'> =
} </span></font></p>
</div>
<div>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D3
face=3D"Times New Roman"><span =
style=3D'font-size:12.0pt'>}</span></font></p>
</div>
<div>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D3
face=3D"Times New Roman"><span style=3D'font-size:12.0pt'>---end =
HelloWorld.java---</span></font></p>
</div>
<div>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D3
face=3D"Times New Roman"><span =
style=3D'font-size:12.0pt'> </span></font></p>
</div>
<div>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D3
face=3D"Times New Roman"><span style=3D'font-size:12.0pt'>---start
src/main/webapp/WEB-INF/web.xml which after war deployed becomes
/path/to/tomcat/webapps/webapp_name/WEB-INF/web.xml =
---</span></font></p>
</div>
<div>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D3
face=3D"Times New Roman"><span style=3D'font-size:12.0pt'><?xml
version=3D"1.0" =
encoding=3D"ISO-8859-1"?> </span></font></p>
</div>
<div>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D3
face=3D"Times New Roman"><span style=3D'font-size:12.0pt'><!DOCTYPE =
web-app
PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application =
2.3//EN" </span></font></p>
</div>
<div>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D3
face=3D"Times New Roman"><span style=3D'font-size:12.0pt'> =
"<a
href=3D"http://java.sun.com/dtd/web-app_2_3.dtd">http://java.sun.com/dtd/=
web-app_2_3.dtd</a>"></span></font></p>
</div>
<div>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D3
face=3D"Times New Roman"><span =
style=3D'font-size:12.0pt'> </span></font></p>
</div>
<div>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D3
face=3D"Times New Roman"><span =
style=3D'font-size:12.0pt'><web-app></span></font></p>
</div>
<div>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D3
face=3D"Times New Roman"><span style=3D'font-size:12.0pt'>
<display-name>HelloWorld</display-name></span></font></p>
</div>
<div>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D3
face=3D"Times New Roman"><span style=3D'font-size:12.0pt'>
<description>Hello World =
Portlet</description></span></font></p>
</div>
<div>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D3
face=3D"Times New Roman"><span =
style=3D'font-size:12.0pt'></web-app></span></font></p>
</div>
<div>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D3
face=3D"Times New Roman"><span style=3D'font-size:12.0pt'>---end =
web.xml---</span></font></p>
</div>
<div>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D3
face=3D"Times New Roman"><span =
style=3D'font-size:12.0pt'> </span></font></p>
</div>
<div>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D3
face=3D"Times New Roman"><span style=3D'font-size:12.0pt'>---start
src/main/webapp/WEB-INF/portlet.xml after war deployed becomes
/path/to/tomcat/webapps/webapp_name/WEB-INF/portlet.xml =
---</span></font></p>
</div>
<div>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D3
face=3D"Times New Roman"><span style=3D'font-size:12.0pt'><?xml
version=3D"1.0" =
encoding=3D"UTF-8"?></span></font></p>
</div>
<div>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D3
face=3D"Times New Roman"><span =
style=3D'font-size:12.0pt'><portlet-app
xmlns=3D"<a =
href=3D"http://java.sun.com/xml/ns/portlet/portlet-app_1_0.xsd">http://ja=
va.sun.com/xml/ns/portlet/portlet-app_1_0.xsd</a>"
version=3D"1.0"> </span></font></p>
</div>
<div>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D3
face=3D"Times New Roman"><span style=3D'font-size:12.0pt'>
<portlet> </span></font></p>
</div>
<div>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D3
face=3D"Times New Roman"><span style=3D'font-size:12.0pt'> =
<portlet-name>HelloWorld</portlet-name> </span></f=
ont></p>
</div>
<div>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D3
face=3D"Times New Roman"><span style=3D'font-size:12.0pt'> =
<portlet-class>helloworld.HelloWorld</portlet-class>&nb=
sp;</span></font></p>
</div>
<div>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D3
face=3D"Times New Roman"><span style=3D'font-size:12.0pt'> =
<expiration-cache>0</expiration-cache> </span></fo=
nt></p>
</div>
<div>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D3
face=3D"Times New Roman"><span style=3D'font-size:12.0pt'> =
<supports> </span></font></p>
</div>
<div>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D3
face=3D"Times New Roman"><span style=3D'font-size:12.0pt'> =
=
<mime-type>text/html</mime-type> </span></font></p>
</div>
<div>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D3
face=3D"Times New Roman"><span style=3D'font-size:12.0pt'> =
=
<portlet-mode>VIEW</portlet-mode> </span></font></p>
</div>
<div>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D3
face=3D"Times New Roman"><span style=3D'font-size:12.0pt'> =
</supports> </span></font></p>
</div>
<div>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D3
face=3D"Times New Roman"><span style=3D'font-size:12.0pt'> =
<supported-locale>en</supported-locale></span></font></=
p>
</div>
<div>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D3
face=3D"Times New Roman"><span style=3D'font-size:12.0pt'> =
<portlet-info> </span></font></p>
</div>
<div>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D3
face=3D"Times New Roman"><span style=3D'font-size:12.0pt'> =
=
<title>HelloWorld</title> </span></font></p>
</div>
<div>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D3
face=3D"Times New Roman"><span style=3D'font-size:12.0pt'> =
<keywords>Hello, world, =
test</keywords></span></font></p>
</div>
<div>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D3
face=3D"Times New Roman"><span style=3D'font-size:12.0pt'> =
</portlet-info></span></font></p>
</div>
<div>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D3
face=3D"Times New Roman"><span style=3D'font-size:12.0pt'> =
<portlet-preferences></span></font></p>
</div>
<div>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D3
face=3D"Times New Roman"><span style=3D'font-size:12.0pt'> =
<preference></span></font></p>
</div>
<div>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D3
face=3D"Times New Roman"><span style=3D'font-size:12.0pt'> =
=
<name>displaytext</name></span></font></p>
</div>
<div>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D3
face=3D"Times New Roman"><span style=3D'font-size:12.0pt'> =
<value>Hello, from your
preferences</value></span></font></p>
</div>
<div>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D3
face=3D"Times New Roman"><span style=3D'font-size:12.0pt'> =
</preference></span></font></p>
</div>
<div>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D3
face=3D"Times New Roman"><span style=3D'font-size:12.0pt'> =
</portlet-preferences></span></font></p>
</div>
<div>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D3
face=3D"Times New Roman"><span style=3D'font-size:12.0pt'>
</portlet></span></font></p>
</div>
<div>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D3
face=3D"Times New Roman"><span =
style=3D'font-size:12.0pt'></portlet-app></span></font></p>
</div>
<div>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D3
face=3D"Times New Roman"><span style=3D'font-size:12.0pt'>---end =
portlet.xml---</span></font></p>
</div>
<div>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D3
face=3D"Times New Roman"><span =
style=3D'font-size:12.0pt'> </span></font></p>
</div>
<div>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D3
face=3D"Times New Roman"><span style=3D'font-size:12.0pt'>with Pluto =
related jars
put into /path/to/tomcat/shared/lib (and if tomcat6
then /path/to/tomcat/conf/server.xml modified to support use of
shared/lib).</span></font></p>
</div>
</div>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D3
face=3D"Times New Roman"><span =
style=3D'font-size:12.0pt'> </span></font></p>
<div>
<div>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D3
face=3D"Times New Roman"><span style=3D'font-size:12.0pt'>On Jun 3, =
2010, at 2:01
PM, Gary Weaver wrote:</span></font></p>
</div>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D3
face=3D"Times New Roman"><span style=3D'font-size:12.0pt'><br>
<br>
</span></font></p>
<div style=3D'word-wrap: break-word;-webkit-nbsp-mode: =
space;-webkit-line-break: after-white-space'>
<div>
<div>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D3
face=3D"Times New Roman"><span style=3D'font-size:12.0pt'>If you look at =
that
second link I sent:</span></font></p>
</div>
<div>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D3
face=3D"Times New Roman"><span style=3D'font-size:12.0pt'><a
href=3D"https://wiki.jasig.org/display/PLT/Hello+World+Portlet">https://w=
iki.jasig.org/display/PLT/Hello+World+Portlet</a></span></font></p>
</div>
<div>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D3
face=3D"Times New Roman"><span =
style=3D'font-size:12.0pt'> </span></font></p>
</div>
<div>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D3
face=3D"Times New Roman"><span style=3D'font-size:12.0pt'>It has an =
example simple
web.xml, portlet.xml, etc. If you are new to Java or Java web =
applications, you
probably out to read up on that and Maven prior to getting into the =
portlet
side of things, though.</span></font></p>
</div>
<div>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D3
face=3D"Times New Roman"><span =
style=3D'font-size:12.0pt'> </span></font></p>
</div>
<div>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D3
face=3D"Times New Roman"><span style=3D'font-size:12.0pt'>As for where =
to go after
Hello World, I lot of people use Spring Portlet MVC, in which case you =
might do
something like this in web.xml (I tried to strip out the unnecessary =
parts, but
not sure how good of a job I did):</span></font></p>
</div>
<div>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D3
face=3D"Times New Roman"><span =
style=3D'font-size:12.0pt'> </span></font></p>
</div>
<div>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D3
face=3D"Times New Roman"><span style=3D'font-size:12.0pt'><?xml
version=3D"1.0" =
encoding=3D"UTF-8"?></span></font></p>
</div>
<div>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D3
face=3D"Times New Roman"><span style=3D'font-size:12.0pt'><!DOCTYPE =
web-app
PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application
2.3//EN" "<a =
href=3D"http://java.sun.com/dtd/web-app_2_3.dtd">http://java.sun.com/dtd/=
web-app_2_3.dtd</a>"></span></font></p>
</div>
<div>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D3
face=3D"Times New Roman"><span =
style=3D'font-size:12.0pt'><web-app></span></font></p>
</div>
<div>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D3
face=3D"Times New Roman"><span style=3D'font-size:12.0pt'>
<display-name>yourportletname</display-name></span></fo=
nt></p>
</div>
<div>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D3
face=3D"Times New Roman"><span style=3D'font-size:12.0pt'>
<description>Description of the =
portlet</description></span></font></p>
</div>
<div>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D3
face=3D"Times New Roman"><span style=3D'font-size:12.0pt'>
<context-param></span></font></p>
</div>
<div>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D3
face=3D"Times New Roman"><span style=3D'font-size:12.0pt'> =
=
<param-name>contextConfigLocation</param-name></span></=
font></p>
</div>
<div>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D3
face=3D"Times New Roman"><span style=3D'font-size:12.0pt'> =
<param-value></span></font></p>
</div>
<div>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D3
face=3D"Times New Roman"><span style=3D'font-size:12.0pt'> =
=
/WEB-INF/context/portlet/nameofyourportlet.xml</span></font></p>
</div>
<div>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D3
face=3D"Times New Roman"><span style=3D'font-size:12.0pt'> =
</param-value></span></font></p>
</div>
<div>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D3
face=3D"Times New Roman"><span style=3D'font-size:12.0pt'>
</context-param></span></font></p>
</div>
<div>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D3
face=3D"Times New Roman"><span style=3D'font-size:12.0pt'>
<context-param></span></font></p>
</div>
<div>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D3
face=3D"Times New Roman"><span style=3D'font-size:12.0pt'> =
=
<param-name>webAppRootKey</param-name></span></font></p=
>
</div>
<div>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D3
face=3D"Times New Roman"><span style=3D'font-size:12.0pt'> =
<param-value>some.parent.package.newofyourportlet</param-v=
alue></span></font></p>
</div>
<div>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D3
face=3D"Times New Roman"><span style=3D'font-size:12.0pt'> =
</context-param></span></font></p>
</div>
<div>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D3
face=3D"Times New Roman"><span style=3D'font-size:12.0pt'>
<listener></span></font></p>
</div>
<div>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D3
face=3D"Times New Roman"><span style=3D'font-size:12.0pt'> =
=
<listener-class>org.springframework.web.util.WebAppRootListen=
er</listener-class></span></font></p>
</div>
<div>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D3
face=3D"Times New Roman"><span style=3D'font-size:12.0pt'>
</listener></span></font></p>
</div>
<div>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D3
face=3D"Times New Roman"><span style=3D'font-size:12.0pt'>
<listener></span></font></p>
</div>
<div>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D3
face=3D"Times New Roman"><span style=3D'font-size:12.0pt'> =
=
<listener-class>org.springframework.web.context.ContextLoader=
Listener</listener-class></span></font></p>
</div>
<div>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D3
face=3D"Times New Roman"><span style=3D'font-size:12.0pt'> =
</listener></span></font></p>
</div>
<div>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D3
face=3D"Times New Roman"><span style=3D'font-size:12.0pt'>
<servlet></span></font></p>
</div>
<div>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D3
face=3D"Times New Roman"><span style=3D'font-size:12.0pt'> =
=
<servlet-name>ViewRendererServlet</servlet-name></span>=
</font></p>
</div>
<div>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D3
face=3D"Times New Roman"><span style=3D'font-size:12.0pt'> =
=
<servlet-class>org.springframework.web.servlet.ViewRendererSe=
rvlet</servlet-class></span></font></p>
</div>
<div>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D3
face=3D"Times New Roman"><span style=3D'font-size:12.0pt'> =
=
<load-on-startup>1</load-on-startup></span></font></p>
</div>
<div>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D3
face=3D"Times New Roman"><span style=3D'font-size:12.0pt'>
</servlet></span></font></p>
</div>
<div>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D3
face=3D"Times New Roman"><span style=3D'font-size:12.0pt'>
<servlet-mapping></span></font></p>
</div>
<div>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D3
face=3D"Times New Roman"><span style=3D'font-size:12.0pt'> =
=
<servlet-name>ViewRendererServlet</servlet-name></span>=
</font></p>
</div>
<div>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D3
face=3D"Times New Roman"><span style=3D'font-size:12.0pt'> =
=
<url-pattern>/WEB-INF/servlet/view</url-pattern></span>=
</font></p>
</div>
<div>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D3
face=3D"Times New Roman"><span style=3D'font-size:12.0pt'>
</servlet-mapping></span></font></p>
</div>
<div>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D3
face=3D"Times New Roman"><span =
style=3D'font-size:12.0pt'></web-app></span></font></p>
</div>
<div>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D3
face=3D"Times New Roman"><span =
style=3D'font-size:12.0pt'> </span></font></p>
</div>
<div>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D3
face=3D"Times New Roman"><span style=3D'font-size:12.0pt'>And could look =
at this as
an example of spring context, pom.xml, portlet.xml, etc.: <a
href=3D"https://source.jasig.org/sandbox/MailPortlet/tags/rel-2.0.0-alpha=
-7/">https://source.jasig.org/sandbox/MailPortlet/tags/rel-2.0.0-alpha-7/=
</a></span></font></p>
</div>
</div>
<div>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D3
face=3D"Times New Roman"><span =
style=3D'font-size:12.0pt'> </span></font></p>
</div>
<div>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D3
face=3D"Times New Roman"><span style=3D'font-size:12.0pt'>There are also =
a Grails
Portlet project and a Rails-portlet project, I think both aimed at =
JSR-286
implementations like Liferay (I know the latter is at the =
moment).</span></font></p>
</div>
<div>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D3
face=3D"Times New Roman"><span =
style=3D'font-size:12.0pt'> </span></font></p>
</div>
<div>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D3
face=3D"Times New Roman"><span style=3D'font-size:12.0pt'>If you want to =
see what
is it really doing in the assembly portion, look =
at FileAssembler.java.
For example I found it here:</span></font></p>
</div>
<div>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D3
face=3D"Times New Roman"><span style=3D'font-size:12.0pt'><a
href=3D"http://github.com/apache/pluto/blob/trunk/pluto-util/src/main/jav=
a/org/apache/pluto/util/assemble/file/FileAssembler.java">http://github.c=
om/apache/pluto/blob/trunk/pluto-util/src/main/java/org/apache/pluto/util=
/assemble/file/FileAssembler.java</a></span></font></p>
</div>
<div>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D3
face=3D"Times New Roman"><span =
style=3D'font-size:12.0pt'> </span></font></p>
</div>
<div>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D3
face=3D"Times New Roman"><span =
style=3D'font-size:12.0pt'>Gary</span></font></p>
</div>
<div>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D3
face=3D"Times New Roman"><span =
style=3D'font-size:12.0pt'> </span></font></p>
</div>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D3
face=3D"Times New Roman"><span =
style=3D'font-size:12.0pt'> </span></font></p>
<div>
<div>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D3
face=3D"Times New Roman"><span style=3D'font-size:12.0pt'>On Jun 3, =
2010, at 1:33
PM, S=F8ren Blidorf wrote:</span></font></p>
</div>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D3
face=3D"Times New Roman"><span style=3D'font-size:12.0pt'><br>
<br>
</span></font></p>
<div link=3Dblue vlink=3Dblue style=3D'word-wrap: =
break-word;-webkit-nbsp-mode: space;
-webkit-line-break: after-white-space'>
<div>
<div>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D2 =
color=3Dnavy
face=3DArial><span lang=3DEN-GB =
style=3D'font-size:10.0pt;font-family:Arial;
color:navy'>Thanks<span class=3Dapple-converted-space> </span>Gary. =
I will look
at it.</span></font></p>
</div>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D2 =
color=3Dnavy
face=3DArial><span lang=3DEN-GB =
style=3D'font-size:10.0pt;font-family:Arial;
color:navy'> </span></font></p>
<div>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D2 =
color=3Dnavy
face=3DArial><span lang=3DEN-GB =
style=3D'font-size:10.0pt;font-family:Arial;
color:navy'>When I use mvn package I get a build error - invalid =
web.xml.</span></font></p>
</div>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D2 =
color=3Dnavy
face=3DArial><span lang=3DEN-GB =
style=3D'font-size:10.0pt;font-family:Arial;
color:navy'> </span></font></p>
<div>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D2 =
color=3Dnavy
face=3DArial><span lang=3DEN-GB =
style=3D'font-size:10.0pt;font-family:Arial;
color:navy'>Does anybody know what is needed in the web.xml for maven to
concider it valid?</span></font></p>
</div>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D2 =
color=3Dnavy
face=3DArial><span lang=3DEN-GB =
style=3D'font-size:10.0pt;font-family:Arial;
color:navy'> </span></font></p>
<div>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D2 =
color=3Dnavy
face=3DArial><span lang=3DEN-GB =
style=3D'font-size:10.0pt;font-family:Arial;
color:navy'>Soren</span></font></p>
</div>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D2 =
color=3Dnavy
face=3DArial><span lang=3DEN-GB =
style=3D'font-size:10.0pt;font-family:Arial;
color:navy'> </span></font></p>
<div style=3D'margin-left:65.2pt'>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D2 =
face=3DTahoma><span
style=3D'font-size:10.0pt;font-family:Tahoma'>-----Oprindelig =
meddelelse-----<br>
<b><span style=3D'font-weight:bold'>Fra:</span></b><span
class=3Dapple-converted-space> </span>Gary Weaver
[mailto:[email protected]]<span =
class=3Dapple-converted-space> </span><br>
<b><span style=3D'font-weight:bold'>Sendt:</span></b><span
class=3Dapple-converted-space> </span>3. juni 2010 17:22<br>
<b><span style=3D'font-weight:bold'>Til:</span></b><span
class=3Dapple-converted-space> </span><a
href=3D"mailto:[email protected]">[email protected]=
rg</a><br>
<b><span style=3D'font-weight:bold'>Emne:</span></b><span
class=3Dapple-converted-space> </span>Re: Help setting up hello =
world</span></font></p>
</div>
<p class=3DMsoNormal style=3D'margin-left:130.4pt'><font size=3D3
face=3D"Times New Roman"><span =
style=3D'font-size:12.0pt'> </span></font></p>
<div style=3D'margin-left:65.2pt'>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D3
face=3D"Times New Roman"><span =
style=3D'font-size:12.0pt'>Soren,</span></font></p>
</div>
<div>
<p class=3DMsoNormal style=3D'margin-left:130.4pt'><font size=3D3
face=3D"Times New Roman"><span =
style=3D'font-size:12.0pt'> </span></font></p>
</div>
<div>
<div style=3D'margin-left:65.2pt'>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D3
face=3D"Times New Roman"><span style=3D'font-size:12.0pt'>Assuming you =
are talking
about this hello world example?:</span></font></p>
</div>
</div>
<div>
<div style=3D'margin-left:65.2pt'>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D3
face=3D"Times New Roman"><span style=3D'font-size:12.0pt'><a
href=3D"http://portals.apache.org/pluto/v20/deploying.html">http://portal=
s.apache.org/pluto/v20/deploying.html</a></span></font></p>
</div>
</div>
<div>
<p class=3DMsoNormal style=3D'margin-left:130.4pt'><font size=3D3
face=3D"Times New Roman"><span =
style=3D'font-size:12.0pt'> </span></font></p>
</div>
<div>
<div style=3D'margin-left:65.2pt'>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D3
face=3D"Times New Roman"><span style=3D'font-size:12.0pt'>I also just =
found another
example, even though it is geared for uPortal rather than the example =
Pluto
server. (But uPortal uses Pluto and supports JSR-168 compliant portlets, =
so should
work.):</span></font></p>
</div>
</div>
<div>
<div style=3D'margin-left:65.2pt'>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D3
face=3D"Times New Roman"><span style=3D'font-size:12.0pt'><a
href=3D"https://wiki.jasig.org/display/PLT/Hello+World+Portlet">https://w=
iki.jasig.org/display/PLT/Hello+World+Portlet</a></span></font></p>
</div>
</div>
<div>
<p class=3DMsoNormal style=3D'margin-left:130.4pt'><font size=3D3
face=3D"Times New Roman"><span =
style=3D'font-size:12.0pt'> </span></font></p>
</div>
<div>
<div style=3D'margin-left:65.2pt'>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D3
face=3D"Times New Roman"><span style=3D'font-size:12.0pt'>Some other =
example
portlets are here:</span></font></p>
</div>
</div>
<div>
<div style=3D'margin-left:65.2pt'>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D3
face=3D"Times New Roman"><span style=3D'font-size:12.0pt'><a
href=3D"https://source.jasig.org/portlets/">https://source.jasig.org/port=
lets/</a></span></font></p>
</div>
</div>
<div>
<div style=3D'margin-left:65.2pt'>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D3
face=3D"Times New Roman"><span style=3D'font-size:12.0pt'>there are also =
some in
here but not all of these work:</span></font></p>
</div>
</div>
<div>
<div style=3D'margin-left:65.2pt'>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D3
face=3D"Times New Roman"><span style=3D'font-size:12.0pt'><a
href=3D"https://source.jasig.org/sandbox/">https://source.jasig.org/sandb=
ox/</a></span></font></p>
</div>
</div>
<div>
<p class=3DMsoNormal style=3D'margin-left:130.4pt'><font size=3D3
face=3D"Times New Roman"><span =
style=3D'font-size:12.0pt'> </span></font></p>
</div>
<div>
<div style=3D'margin-left:65.2pt'>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D3
face=3D"Times New Roman"><span style=3D'font-size:12.0pt'>As of =
2010/06/03 I'm not
sure how any of those if any are JSR-286 (most are still JSR-168), but =
that shouldn't
matter afaik just to get something simple working.</span></font></p>
</div>
</div>
<div>
<p class=3DMsoNormal style=3D'margin-left:130.4pt'><font size=3D3
face=3D"Times New Roman"><span =
style=3D'font-size:12.0pt'> </span></font></p>
</div>
<div>
<div style=3D'margin-left:65.2pt'>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D3
face=3D"Times New Roman"><span style=3D'font-size:12.0pt'>Some =
miscellaneous
tips/notes:</span></font></p>
</div>
</div>
<div>
<div style=3D'margin-left:65.2pt'>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D3
face=3D"Times New Roman"><span style=3D'font-size:12.0pt'>* Pluto's jars =
should be
in the shared/lib area, which requires some change to the default Tomcat =
6
config to have it look for. That is the most appropriate place for it, =
afaik.</span></font></p>
</div>
</div>
<div>
<div style=3D'margin-left:65.2pt'>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D3
face=3D"Times New Roman"><span style=3D'font-size:12.0pt'>* Like any =
war, if you
unzip the war, it should unzip its contents into the current directory =
(i.e. is
isn't unzipping into (webapp directory name)/... ). That is just a war =
thing,
not specific to portlets. This only matters if you tried to make the war =
by
hand.</span></font></p>
</div>
</div>
<div>
<div style=3D'margin-left:65.2pt'>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D3
face=3D"Times New Roman"><span style=3D'font-size:12.0pt'>* Pluto's =
assembly API
must be used to prep the war. There is a maven-pluto-plugin that can =
help with
this (it uses Pluto assembly). Pluto assembly looks at the portlet.xml =
then
modifies the web.xml and adds portlet*.tld file(s).</span></font></p>
</div>
</div>
<div>
<div style=3D'margin-left:65.2pt'>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D3
face=3D"Times New Roman"><span style=3D'font-size:12.0pt'>* Even though =
Tomcat is
much more lenient when it decompresses a war, Pluto assembly (used by
maven-pluto-plugin) uses the standard Java API to unjar the war, and if
the </span></font><span class=3Dapple-style-span><font =
face=3D"Courier New"><span
style=3D'font-family:"Courier =
New"'>META-INF/MANIFEST.MF</span></font></span><span
class=3Dapple-style-span><font face=3DHelvetica><span =
style=3D'font-family:Helvetica'> file
isn't the first entry (and there should be only one manifest), it will =
choke
(and the error is not that helpful).</span></font></span></p>
</div>
</div>
<div>
<div style=3D'margin-left:65.2pt'>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D3
face=3D"Times New Roman"><span style=3D'font-size:12.0pt'>* Just because
maven-pluto-plugin preps the war doesn't mean it is a valid portlet (or =
even
valid web.xml and portlet.xml for a portlet) or that it will even =
register in
Pluto afaik. You need to make sure that web.xml is cleaned up and that =
you
didn't try to add the stuff that Pluto assembly puts into it. (For info =
on how
to clean it up if you need that, see the unplutofy =
project).</span></font></p>
</div>
</div>
<div>
<div style=3D'margin-left:65.2pt'>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D3
face=3D"Times New Roman"><span style=3D'font-size:12.0pt'>* In newer =
versions of
pluto (not sure what version, but sometime between 1.0.0-RC2 and 1.1.7),
portlets register themselves with pluto (I think). So you can someone =
tell if a
portlet is available and at least valid enough for Pluto to register it
(although it still may not work) if the logs showed that it registered. =
It may
not register each time though? Registering is different than just Tomcat
deploying the war (it is the line right after that in the logs usually, =
I
think).</span></font></p>
</div>
</div>
<div>
<p class=3DMsoNormal style=3D'margin-left:130.4pt'><font size=3D3
face=3D"Times New Roman"><span =
style=3D'font-size:12.0pt'> </span></font></p>
</div>
<div>
<div style=3D'margin-left:65.2pt'>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D3
face=3D"Times New Roman"><span style=3D'font-size:12.0pt'>Hopefully none =
of that
info is wrong, and please anyone feel free to correct or clarify =
those.</span></font></p>
</div>
</div>
<div>
<p class=3DMsoNormal style=3D'margin-left:130.4pt'><font size=3D3
face=3D"Times New Roman"><span =
style=3D'font-size:12.0pt'> </span></font></p>
</div>
<div>
<div style=3D'margin-left:65.2pt'>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D3
face=3D"Times New Roman"><span style=3D'font-size:12.0pt'>Wish I could =
provide more
info, but maybe some of that will help.</span></font></p>
</div>
</div>
<div>
<p class=3DMsoNormal style=3D'margin-left:130.4pt'><font size=3D3
face=3D"Times New Roman"><span =
style=3D'font-size:12.0pt'> </span></font></p>
</div>
<div>
<div style=3D'margin-left:65.2pt'>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D3
face=3D"Times New Roman"><span =
style=3D'font-size:12.0pt'>Gary</span></font></p>
</div>
</div>
<div>
<p class=3DMsoNormal style=3D'margin-left:130.4pt'><font size=3D3
face=3D"Times New Roman"><span =
style=3D'font-size:12.0pt'> </span></font></p>
</div>
<div>
<p class=3DMsoNormal style=3D'margin-left:130.4pt'><font size=3D3
face=3D"Times New Roman"><span =
style=3D'font-size:12.0pt'> </span></font></p>
<div>
<div>
<div style=3D'margin-left:65.2pt'>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D3
face=3D"Times New Roman"><span style=3D'font-size:12.0pt'>On Jun 3, =
2010, at 5:58
AM, S=F8ren Blidorf wrote:</span></font></p>
</div>
</div>
<div style=3D'margin-left:65.2pt'>
<p class=3DMsoNormal =
style=3D'margin-right:0cm;margin-bottom:12.0pt;margin-left:
65.2pt'><font size=3D3 face=3D"Times New Roman"><span =
style=3D'font-size:12.0pt'> </span></font></p>
</div>
<div link=3Dblue vlink=3Dpurple>
<div>
<div>
<div style=3D'margin-left:65.2pt'>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D2 =
face=3DArial><span
style=3D'font-size:10.0pt;font-family:Arial'>Hi.<u1:p></u1:p></span></fon=
t></p>
</div>
</div>
<div>
<div style=3D'margin-left:65.2pt'>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D2 =
face=3DArial><span
style=3D'font-size:10.0pt;font-family:Arial'><u1:p> </u1:p></span></=
font></p>
</div>
</div>
<div>
<div style=3D'margin-left:65.2pt'>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D2 =
face=3DArial><span
lang=3DEN-GB style=3D'font-size:10.0pt;font-family:Arial'>I am new to =
portlets and
Pluto.<u1:p></u1:p></span></font></p>
</div>
</div>
<div>
<div style=3D'margin-left:65.2pt'>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D2 =
face=3DArial><span
lang=3DEN-GB =
style=3D'font-size:10.0pt;font-family:Arial'><u1:p> </u1:p></span></=
font></p>
</div>
</div>
<div>
<div style=3D'margin-left:65.2pt'>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D2 =
face=3DArial><span
lang=3DEN-GB style=3D'font-size:10.0pt;font-family:Arial'>I have =
installed Pluto on
my existing Tomcat and it works fine.<u1:p></u1:p></span></font></p>
</div>
</div>
<div>
<div style=3D'margin-left:65.2pt'>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D2 =
face=3DArial><span
lang=3DEN-GB =
style=3D'font-size:10.0pt;font-family:Arial'><u1:p> </u1:p></span></=
font></p>
</div>
</div>
<div>
<div style=3D'margin-left:65.2pt'>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D2 =
face=3DArial><span
lang=3DEN-GB style=3D'font-size:10.0pt;font-family:Arial'>However I am =
having
difficulties setting up a helloworld =
portlet.<u1:p></u1:p></span></font></p>
</div>
</div>
<div>
<div style=3D'margin-left:65.2pt'>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D2 =
face=3DArial><span
lang=3DEN-GB =
style=3D'font-size:10.0pt;font-family:Arial'><u1:p> </u1:p></span></=
font></p>
</div>
</div>
<div>
<div style=3D'margin-left:65.2pt'>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D2 =
face=3DArial><span
lang=3DEN-GB style=3D'font-size:10.0pt;font-family:Arial'>I have created =
the
portlet.xml and the helloworld.java. Compiled and deploy but nothing =
happens.<u1:p></u1:p></span></font></p>
</div>
</div>
<div>
<div style=3D'margin-left:65.2pt'>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D2 =
face=3DArial><span
lang=3DEN-GB =
style=3D'font-size:10.0pt;font-family:Arial'><u1:p> </u1:p></span></=
font></p>
</div>
</div>
<div>
<div style=3D'margin-left:65.2pt'>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D2 =
face=3DArial><span
lang=3DEN-GB style=3D'font-size:10.0pt;font-family:Arial'>I have tried =
different
examples on google, but nothing works.<u1:p></u1:p></span></font></p>
</div>
</div>
<div>
<div style=3D'margin-left:65.2pt'>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D2 =
face=3DArial><span
lang=3DEN-GB =
style=3D'font-size:10.0pt;font-family:Arial'><u1:p> </u1:p></span></=
font></p>
</div>
</div>
<div>
<div style=3D'margin-left:65.2pt'>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D2 =
face=3DArial><span
lang=3DEN-GB style=3D'font-size:10.0pt;font-family:Arial'>Does anybody =
have a
helloworld.war file of a describsion for dummies on how to get a =
helloworld to
work.<u1:p></u1:p></span></font></p>
</div>
</div>
<div>
<div style=3D'margin-left:65.2pt'>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D2 =
face=3DArial><span
lang=3DEN-GB =
style=3D'font-size:10.0pt;font-family:Arial'><u1:p> </u1:p></span></=
font></p>
</div>
</div>
<div>
<div style=3D'margin-left:65.2pt'>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D2 =
face=3DArial><span
lang=3DEN-GB =
style=3D'font-size:10.0pt;font-family:Arial'>Soren</span></font></p>
</div>
</div>
<u1:p></u1:p>
<div>
<div style=3D'margin-left:65.2pt'>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D3
face=3D"Times New Roman"><span lang=3DEN-GB =
style=3D'font-size:12.0pt'><u1:p> </u1:p></span></font></p>
</div>
</div>
</div>
</div>
</div>
<p class=3DMsoNormal style=3D'margin-left:130.4pt'><font size=3D3
face=3D"Times New Roman"><span =
style=3D'font-size:12.0pt'> </span></font></p>
</div>
</div>
</div>
</div>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D3
face=3D"Times New Roman"><span =
style=3D'font-size:12.0pt'> </span></font></p>
</div>
</div>
<p class=3DMsoNormal style=3D'margin-left:65.2pt'><font size=3D3
face=3D"Times New Roman"><span =
style=3D'font-size:12.0pt'> </span></font></p>
</div>
</body>
</html>
------=_NextPart_000_0378_01CB035F.E77A75D0--