You are viewing a plain text version of this content. The canonical link for it is here.
Posted to jetspeed-user@portals.apache.org by Benjamin Bratkus <br...@oio.de> on 2005/04/13 16:33:30 UTC

AW: Jetspeed 2 - deployment first steps

Hello Sascha,

here is a little howto for your first portlet in jetspeed2, additional i
want to invite you to the jax - conference,
where a associate of mine talks about this topic:
http://www.jax.de/konferenzen/psecom,id,269,nodeid,,.html#E27.

here is my first portlet:

public class FirstPortlet extends GenericPortlet{

	Writer writer;

	/* (non-Javadoc)
	 * @see javax.portlet.GenericPortlet#doView(javax.portlet.RenderRequest,
javax.portlet.RenderResponse)
	 */
	protected void doView(RenderRequest renderRequest, RenderResponse
renderResponse)
			throws PortletException, IOException {
		renderResponse.setContentType("text/html");
		writer = renderResponse.getWriter();
		writer.write("Hello I am a portlet and I am trapped in a Portal!");
		String jspName = "/jsp/firstportlet.jsp";
		//writer.write(renderResponse.encodeURL(renderRequest.getContextPath()));
		writer.write("<IMG
SRC="+renderResponse.encodeURL(renderRequest.getContextPath()+"/pics/oio.gif
")+">");
		PortletRequestDispatcher rd = getPortletContext().getRequestDispatcher(
				jspName);
		rd.include(renderRequest, renderResponse);
			}

	/* (non-Javadoc)
	 * @see javax.portlet.GenericPortlet#doHelp(javax.portlet.RenderRequest,
javax.portlet.RenderResponse)
	 */
	protected void doHelp(RenderRequest request, RenderResponse response)
			throws PortletException, IOException {
		response.setContentType("text/html");
		writer = response.getWriter();
		response.setTitle("Helpsite of "+super.getTitle(request));
		writer.write("Hier kann man Informationen uber die Benutzung des Portlets
hinterlgen.");
	}


	/* (non-Javadoc)
	 * @see javax.portlet.GenericPortlet#doEdit(javax.portlet.RenderRequest,
javax.portlet.RenderResponse)
	 */
	protected void doEdit(RenderRequest request, RenderResponse response)
			throws PortletException, IOException {
		response.setContentType("text/html");
		writer = response.getWriter();
		writer.write("Hier konnen Eigenschaften die -modifiable- sind von den
Benutzern geandert werden");
		writer.write("Man hat beispielsweise die Moglichkeit den Title zu andern,
neben der Moglichkeit in der portlet.xml ");
		writer.write("Das "+super.getTitle(request)+" war der alte Titel");
		response.setTitle("Edit of "+super.getTitle(request));
	}

}
Additional there is a jsp and a pic which are included in the portlet. For
Example:
firstportlet.jsp
<HTML>
	<HEAD>
		<TITLE>Orientation in Objects GmbH</TITLE>
	</HEAD>
	<BODY>
	<H3>Welcome !</H3>




		<!--<INPUT TYPE="submit" name="save" value="Speichern"/>-->
</BODY>
</HTML>

The Structure of the "first steps" looks like this:
I've got a Project which has a source folder and following subfolders
/src
/src/java - for the java scources
/src/webapp/jsp - for the jsps
/src/webapp/pics - ^^
/src/webapp/WEB-INF/ here are my web.xml and my portlet.xml

You need also a maven.xml, a project.properties for Maven and a project.xml,
which is a descriptor and the descriptors web.xml and portlet.xml. The
portlet.xml describes your portlets with mime type, modes, etc., the web.xml
is the descriptor for your web application for example.:

<?xml version="1.0" encoding="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>first steps</display-name>
</web-app>

After all, you can create your war-archive via Maven and put into the
"deploy"-folder of your jetspeed2. The last step you've to do is to write a
statement for your portlet in one of the site.psml. have a look at the
default-page.psml in your "pages"-folder of your jetspeed2.

best regards,

Benjamin Bratkus

--
Orientation in Objects GmbH
Weinheimerstr. 68
D-68309 Mannheim
http://www.oio.de
Tel +49(0)621-71839-0
Fax. +49(0)621-71839-50


-----Ursprungliche Nachricht-----
Von: Sascha Glass [mailto:saschaglass@gmx.de]
Gesendet: Mittwoch, 13. April 2005 14:40
An: jetspeed-user@jakarta.apache.org
Betreff: Jetspeed 2 - deployment


Hello,

Does anyone know more detailed information about deploying portlets to
Jetspeed 2 than
http://wiki.apache.org/portals/Jetspeed2/DeployingCustomPortlets ?

Thank you!


---------------------------------------------------------------------
To unsubscribe, e-mail: jetspeed-user-unsubscribe@jakarta.apache.org
For additional commands, e-mail: jetspeed-user-help@jakarta.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: jetspeed-user-unsubscribe@jakarta.apache.org
For additional commands, e-mail: jetspeed-user-help@jakarta.apache.org


AW: Jetspeed 2 - deployment first steps

Posted by Benjamin Bratkus <br...@oio.de>.
Hello again,

here are the sources,

here is my maven.xml:

<?xml version="1.0" encoding="UTF-8"?>

<project xmlns:j="jelly:core" xmlns:ant="jelly:ant" default="war">
  <preGoal name="java:compile">
    <mkdir dir="${maven.build.dir}/xdoclet/webdoclet/WEB-INF" />
  	<attainGoal name="xdoclet:webdoclet" />
  </preGoal>
</project>

followed by the project.properties, for those who don't want to have a
build.properties in their homefolder

projet.properties:

maven.xdoc.date=left
maven.war.webapp.dir=${maven.build.dir}/xdoclet/webdoclet
maven.xdoclet.webdoclet.0=true
maven.xdoclet.webdoclet.0.destDir=${maven.build.dir}/xdoclet/webdoclet/WEB-I
NF
maven.xdoclet.webdoclet.0.mergeDir=src/merge
maven.xdoclet.webdoclet.deploymentdescriptor.0.destDir=${maven.build.dir}/xd
oclet/webdoclet/WEB-INF
maven.xdoclet.webdoclet.deploymentdescriptor.0.mergeDir=src/merge

de.oio.portlets.project.name.app=FirstPortlet


and the next is the project.xml

<project>
	<pomVersion>1</pomVersion>
	<id>FirstPortlet</id>
	<groupId>portlet</groupId>
	<name>portletExample</name>
	<currentVersion>1.0</currentVersion>
	<organization>
		<name>Orientation in Objects GmbH</name>
		<url>http://www.oio.de/</url>
		<logo>http://oio.de/i/h.jpg</logo>
	</organization>
	<inceptionYear>2005</inceptionYear>
	<package>de.oio.portlet</package>
	<logo/>
	<description>An example project for porlet development</description>
	<shortDescription>An example project for porlet
development</shortDescription>
	<url/>
	<issueTrackingUrl/>
	<siteAddress/>
	<siteDirector/>
	<distributionDirectory/>
	<mailingLists/>
	<!-- who the developers are for the project -->
	<developers>
  </developers>
	<!-- jar files the project is dependent on -->
	<dependencies>
		<dependency>
			<groupId>servletapi</groupId>
			<artifactId>servlet-api</artifactId>
			<version>2.4-20040521</version>
			<type>jar</type>
		</dependency>
		<dependency>
			<groupId>portlet-api</groupId>
			<artifactId>portlet-api</artifactId>
			<version>1.0</version>
			<type>jar</type>
			<properties>
				<war.bundle>false</war.bundle>
			</properties>
		</dependency>
		<!-- XDoclet dependencies -->
		<dependency>
			<id>xdoclet</id>
			<version>1.2</version>
		</dependency>
		<dependency>
			<groupId>xdoclet</groupId>
			<artifactId>xdoclet-web-module</artifactId>
			<version>1.2</version>
			<url>http://xdoclet.sf.net/</url>
		</dependency>
		<dependency>
			<groupId>xdoclet</groupId>
			<artifactId>xjavadoc</artifactId>
			<version>1.0.2</version>
			<url>http://xdoclet.sf.net/</url>
		</dependency>
		<dependency>
			<groupId>xdoclet</groupId>
			<artifactId>maven-xdoclet-plugin</artifactId>
			<version>1.2</version>
			<type>plugin</type>
			<url>http://xdoclet.sf.net/</url>
		</dependency>
	</dependencies>
	<build>
		<sourceDirectory>src/java</sourceDirectory>
		<unitTestSourceDirectory/>
		<resources>
			<resource>
				<directory>src/conf</directory>
				<includes>
					<include>*.properties</include>
				</includes>
			</resource>
		</resources>
	</build>
</project>

last the portlet.xml:

<?xml version="1.0" encoding="UTF-8"?>

<portlet-app xmlns="http://java.sun.com/xml/ns/portlet/portlet-app_1_0.xsd"
version="1.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/portlet/portlet-app_1_0.xsd
http://java.sun.com/xml/ns/portlet/portlet-app_1_0.xsd">

<portlet>
    <portlet-name>FirstPortlet</portlet-name>
    <portlet-class>de.oio.portlets.RssPortlet</portlet-class>
    <expiration-cache>30</expiration-cache>
    <supports>
      <mime-type>text/html</mime-type>
      <portlet-mode>edit</portlet-mode>
      <portlet-mode>help</portlet-mode>
    </supports>
    <supported-locale>en-US</supported-locale>

     <portlet-info>
      <title>FirstPortlet</title>
      <short-title>first try</short-title>
      <keywords>test</keywords>
    </portlet-info>
   </portlet>

</portlet-app>

hope you can deploy now your first portlet.

best regards,

Benjamin Bratkus

--
Orientation in Objects GmbH
Weinheimerstr. 68
D-68309 Mannheim
http://www.oio.de
Tel +49(0)621-71839-0
Fax. +49(0)621-71839-50



---------------------------------------------------------------------
To unsubscribe, e-mail: jetspeed-user-unsubscribe@jakarta.apache.org
For additional commands, e-mail: jetspeed-user-help@jakarta.apache.org


AW: Jetspeed 2 - deployment first steps

Posted by "-=]FTT[=-DGO" <dg...@fishtown-team.de>.
Hello Ben,

thank you very much fort his howto. I would be very glad if you could
show me the maven.xml, project.properties, project.xml and protlet.xml
for this howto. If one portlet is working the others shouldn#t be that
problem.
Thank you!

-----Ursprüngliche Nachricht-----
Von: Benjamin Bratkus [mailto:bratkus@oio.de] 
Gesendet: Mittwoch, 13. April 2005 16:34
An: Jetspeed Users List
Betreff: AW: Jetspeed 2 - deployment first steps

Hello Sascha,

here is a little howto for your first portlet in jetspeed2, additional i
want to invite you to the jax - conference,
where a associate of mine talks about this topic:
http://www.jax.de/konferenzen/psecom,id,269,nodeid,,.html#E27.

here is my first portlet:

public class FirstPortlet extends GenericPortlet{

	Writer writer;

	/* (non-Javadoc)
	 * @see
javax.portlet.GenericPortlet#doView(javax.portlet.RenderRequest,
javax.portlet.RenderResponse)
	 */
	protected void doView(RenderRequest renderRequest,
RenderResponse
renderResponse)
			throws PortletException, IOException {
		renderResponse.setContentType("text/html");
		writer = renderResponse.getWriter();
		writer.write("Hello I am a portlet and I am trapped in a
Portal!");
		String jspName = "/jsp/firstportlet.jsp";
	
//writer.write(renderResponse.encodeURL(renderRequest.getContextPath()))
;
		writer.write("<IMG
SRC="+renderResponse.encodeURL(renderRequest.getContextPath()+"/pics/oio
.gif
")+">");
		PortletRequestDispatcher rd =
getPortletContext().getRequestDispatcher(
				jspName);
		rd.include(renderRequest, renderResponse);
			}

	/* (non-Javadoc)
	 * @see
javax.portlet.GenericPortlet#doHelp(javax.portlet.RenderRequest,
javax.portlet.RenderResponse)
	 */
	protected void doHelp(RenderRequest request, RenderResponse
response)
			throws PortletException, IOException {
		response.setContentType("text/html");
		writer = response.getWriter();
		response.setTitle("Helpsite of
"+super.getTitle(request));
		writer.write("Hier kann man Informationen uber die
Benutzung des Portlets
hinterlgen.");
	}


	/* (non-Javadoc)
	 * @see
javax.portlet.GenericPortlet#doEdit(javax.portlet.RenderRequest,
javax.portlet.RenderResponse)
	 */
	protected void doEdit(RenderRequest request, RenderResponse
response)
			throws PortletException, IOException {
		response.setContentType("text/html");
		writer = response.getWriter();
		writer.write("Hier konnen Eigenschaften die -modifiable-
sind von den
Benutzern geandert werden");
		writer.write("Man hat beispielsweise die Moglichkeit den
Title zu andern,
neben der Moglichkeit in der portlet.xml ");
		writer.write("Das "+super.getTitle(request)+" war der
alte Titel");
		response.setTitle("Edit of "+super.getTitle(request));
	}

}
Additional there is a jsp and a pic which are included in the portlet.
For
Example:
firstportlet.jsp
<HTML>
	<HEAD>
		<TITLE>Orientation in Objects GmbH</TITLE>
	</HEAD>
	<BODY>
	<H3>Welcome !</H3>




		<!--<INPUT TYPE="submit" name="save"
value="Speichern"/>-->
</BODY>
</HTML>

The Structure of the "first steps" looks like this:
I've got a Project which has a source folder and following subfolders
/src
/src/java - for the java scources
/src/webapp/jsp - for the jsps
/src/webapp/pics - ^^
/src/webapp/WEB-INF/ here are my web.xml and my portlet.xml

You need also a maven.xml, a project.properties for Maven and a
project.xml,
which is a descriptor and the descriptors web.xml and portlet.xml. The
portlet.xml describes your portlets with mime type, modes, etc., the
web.xml
is the descriptor for your web application for example.:

<?xml version="1.0" encoding="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>first steps</display-name>
</web-app>

After all, you can create your war-archive via Maven and put into the
"deploy"-folder of your jetspeed2. The last step you've to do is to
write a
statement for your portlet in one of the site.psml. have a look at the
default-page.psml in your "pages"-folder of your jetspeed2.

best regards,

Benjamin Bratkus

--
Orientation in Objects GmbH
Weinheimerstr. 68
D-68309 Mannheim
http://www.oio.de
Tel +49(0)621-71839-0
Fax. +49(0)621-71839-50


-----Ursprungliche Nachricht-----
Von: Sascha Glass [mailto:saschaglass@gmx.de]
Gesendet: Mittwoch, 13. April 2005 14:40
An: jetspeed-user@jakarta.apache.org
Betreff: Jetspeed 2 - deployment


Hello,

Does anyone know more detailed information about deploying portlets to
Jetspeed 2 than
http://wiki.apache.org/portals/Jetspeed2/DeployingCustomPortlets ?

Thank you!


---------------------------------------------------------------------
To unsubscribe, e-mail: jetspeed-user-unsubscribe@jakarta.apache.org
For additional commands, e-mail: jetspeed-user-help@jakarta.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: jetspeed-user-unsubscribe@jakarta.apache.org
For additional commands, e-mail: jetspeed-user-help@jakarta.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: jetspeed-user-unsubscribe@jakarta.apache.org
For additional commands, e-mail: jetspeed-user-help@jakarta.apache.org