Hallo Leute
,
bin Neuling in der Portlet Welt und versuche ein kleines Portlet zu programmieren....wäre super, wenn mir jemand helfen könnte, ich bekomme es einfach nicht zum laufen...
Ich arbeite mit Eclipse und als Portalserver verwende ich Liferay(Tomcat)...
ich wollte ein Portlet erstellen das ein einfaches Textfeld besitzt und einen Ok Button...dieses Textfeld soll ausgelesen werden und das was man in das Textfeld reingeschrieben hat, soll auf einer zweiten Jsp ausgegeben werden...Wenn ich das Portlet laufen lasse, wird es nicht angezeigt( .....ist temporär nicht erreichbar)....
Hier die Auszüge aus meinem Portlet...
die jsp´s befinden sich im WEB-INF Verzeichnis
die nun folgende jsp soll den Wert ausgeben der in dem Textfeld eingegeben wurde: zweiteSeite.jsp
und das ist mein Controller
Auszug aus der web.xml
Auszug aus der portlet.xml
Auszug aus der liferay-portlet.xml
Auszug aus der liferay-display.xml

bin Neuling in der Portlet Welt und versuche ein kleines Portlet zu programmieren....wäre super, wenn mir jemand helfen könnte, ich bekomme es einfach nicht zum laufen...
Ich arbeite mit Eclipse und als Portalserver verwende ich Liferay(Tomcat)...
ich wollte ein Portlet erstellen das ein einfaches Textfeld besitzt und einen Ok Button...dieses Textfeld soll ausgelesen werden und das was man in das Textfeld reingeschrieben hat, soll auf einer zweiten Jsp ausgegeben werden...Wenn ich das Portlet laufen lasse, wird es nicht angezeigt( .....ist temporär nicht erreichbar)....
Hier die Auszüge aus meinem Portlet...
die jsp´s befinden sich im WEB-INF Verzeichnis
HTML:
<%@ taglib uri="http://java.sun.com/portlet_2_0" prefix="portlet" %>
<portlet:defineObjects />
<br>Hier können Sie Musik-Künstler abfragen...
<html>
<body>
<form name= "Formular" action= "<portlet:actionURL>
<portlet:param name ="jspPage" value = "view.jsp"/>
</portlet:actionURL>" method = "POST">
<table>
<tr>
<td>Name:</td>
<td><input type="text" name="name" size="20"></td>
<td><input type= "submit" value="ok"/></td>
</tr>
</table>
</form>
</body>
</html>
die nun folgende jsp soll den Wert ausgeben der in dem Textfeld eingegeben wurde: zweiteSeite.jsp
HTML:
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Zweite Seite</title>
</head>
<body>
<%
String nameAuslesen=request.getParameter("name");
%>
Sie haben folgendes eingegeben: <%= nameAuslesen %>
</body>
</html>
und das ist mein Controller
Code:
public class Test extends GenericPortlet {
@Override
public final void processAction(final ActionRequest request,
final ActionResponse response) throws PortletException, IOException
{
String jspPage = request.getParameter("jspPage");
if (jspPage.equals("view.jsp"))
{
String name = request.getParameter("name");
response.setRenderParameter(name, name);
response.setRenderParameter(jspPage, "zweiteseite.jsp");
}
else if(jspPage.equals("zweiteseite.jsp")) {
//hier möchte ich wieder zurück zur startpage
response.setRenderParameter(jspPage, "view.jsp");
}
}
protected void doView(RenderRequest request, RenderResponse response)
throws PortletException, IOException {
PortletContext context = getPortletContext();
PortletRequestDispatcher dispatcher
= context.getRequestDispatcher( "/view.jsp" );
dispatcher.include( request, response );
}
}
Auszug aus der web.xml
HTML:
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" id="WebApp_ID" version="2.5">
<display-name>MusicFinderService-portlet</display-name>
<welcome-file-list>
<welcome-file>index.html</welcome-file>
<welcome-file>index.htm</welcome-file>
<welcome-file>index.jsp</welcome-file>
<welcome-file>default.html</welcome-file>
<welcome-file>default.htm</welcome-file>
<welcome-file>default.jsp</welcome-file>
</welcome-file-list>
<jsp-config>
<taglib>
<taglib-uri>http://java.sun.com/portlet_2_0</taglib-uri>
<taglib-location>
/WEB-INF/tld/liferay-portlet.tld
</taglib-location>
</taglib>
</jsp-config>
</web-app>
Auszug aus der portlet.xml
HTML:
<?xml version="1.0"?>
<portlet-app xmlns="http://java.sun.com/xml/ns/portlet/portlet-app_2_0.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/portlet/portlet-app_2_0.xsd http://java.sun.com/xml/ns/portlet/portlet-app_2_0.xsd" version="2.0">
<portlet>
<portlet-name>MusicFinderService</portlet-name>
<display-name>MusicFinderService</display-name>
<portlet-class>Test</portlet-class>
<init-param>
<name>view-template</name>
<value>view.jsp</value>
</init-param>
<expiration-cache>0</expiration-cache>
<supports>
<mime-type>text/html</mime-type>
</supports>
<portlet-info>
<title>MusicFinderService</title>
<short-title>MusicFinderService</short-title>
<keywords>MusicFinderService</keywords>
</portlet-info>
<security-role-ref>
<role-name>administrator</role-name>
</security-role-ref>
<security-role-ref>
<role-name>guest</role-name>
</security-role-ref>
<security-role-ref>
<role-name>power-user</role-name>
</security-role-ref>
<security-role-ref>
<role-name>user</role-name>
</security-role-ref>
</portlet>
Auszug aus der liferay-portlet.xml
HTML:
<?xml version="1.0"?>
<!DOCTYPE liferay-portlet-app PUBLIC "-//Liferay//DTD Portlet Application 6.1.0//EN" "http://www.liferay.com/dtd/liferay-portlet-app_6_1_0.dtd">
<liferay-portlet-app>
<portlet>
<portlet-name>MusicFinderService</portlet-name>
<icon>/icon.png</icon>
<instanceable>false</instanceable>
<header-portlet-css>/css/main.css</header-portlet-css>
<footer-portlet-javascript>/js/main.js</footer-portlet-javascript>
<css-class-wrapper>MusicFinderService-portlet</css-class-wrapper>
</portlet>
<role-mapper>
<role-name>administrator</role-name>
<role-link>Administrator</role-link>
</role-mapper>
<role-mapper>
<role-name>guest</role-name>
<role-link>Guest</role-link>
</role-mapper>
<role-mapper>
<role-name>power-user</role-name>
<role-link>Power User</role-link>
</role-mapper>
<role-mapper>
<role-name>user</role-name>
<role-link>User</role-link>
</role-mapper>
</liferay-portlet-app>
Auszug aus der liferay-display.xml
HTML:
<?xml version="1.0"?>
<!DOCTYPE display PUBLIC "-//Liferay//DTD Display 6.1.0//EN" "http://www.liferay.com/dtd/liferay-display_6_1_0.dtd">
<display>
<category name="category.sample">
<portlet id="MusicFinderService" />
<portlet id="webserviceportlet"></portlet>
</category>
</display>