Bela,

Copy the action class in either of these packages
org.apache.jetspeed.modules.actions.portlets 
org.apache.turbine.modules.actions.portlets
and try.

-Prashanth


-----Original Message-----
From: Bela Kovac [mailto:[EMAIL PROTECTED]
Sent: Wednesday, January 14, 2004 10:59 AM
To: Jetspeed Users List
Subject: JSP Portlet -- Action Part


Hi,

after managing to get a very simple (hello World) JSP portlet on  
screen, i have another question:

Now i want the portlet to get a string via web formular and then show  
it. Something like the "HelloVelocity" portlet, but i want to do this  
entirely in JSP. So i made up three files:

.../jetspeed/WEB-INF/templates/jsp/portlets/html/helloWorld.jsp:
================================================================
<%@ page language="java"
          session="false"
%>

<%@ taglib uri='/WEB-INF/templates/jsp/tld/template.tld'  
prefix='jetspeed' %>

<p>
<b>Hello World!</b>
</p>

<%
String jspeid = (String) request.getAttribute("js_peid");
String textString = (String) request.getAttribute("textString");
%>

<p>
     Aktueller Text-String:
     <br>
     <%=textString%>
</p>

<p>
     Neuen Text eingeben:
     <br>
     <form method="post" action="<jetspeed:dynamicUri/>">
         <input type="hidden" name="js_peid" value="<%=jspeid%>">
         <input type="text" name="textString" value="<%=textString%>">
         <input type="submit" name="refresh" value="Aktualisieren">
     </form>
</p>


.../jetspeed/WEB-INF/conf/helloWorld.xreg
=========================================
<?xml version="1.0" encoding="UTF-8"?>
<registry>
     <portlet-entry name="HelloWorld" hidden="false" type="ref"
         parent="JSP" application="false">
         <meta-info>
             <title>HelloWorld</title>
             <description>Mein erstes Jetspeed JSP-Portlet</description>
         </meta-info>
         <parameter name="template" value="helloWorld.jsp" hidden="true"
             cachedOnName="true" cachedOnValue="true"/>
         <parameter name="action" value="portlet.helloWorldAction"
             hidden="true" cachedOnName="true" cachedOnValue="true"/>
         <parameter name="textString" value="Test-Test. 1-2-3."
             hidden="true" cachedOnName="true" cachedOnValue="true"/>
         <media-type ref="html"/>
         <url cachedOnURL="true"/>
     </portlet-entry>
</registry>


.../jetspeed/WEB-INF/classes/org/apache/jetspeed/modules/ 
helloWorldAction.class
(Here the source code from the corresponding helloworldAction.java:)
======================================================================== 
======
package org.apache.jetspeed.modules;

// Turbine stuff
import org.apache.turbine.util.Log;
import org.apache.turbine.util.RunData;
import org.apache.turbine.services.TurbineServices;

// Jetspeed stuff
import org.apache.jetspeed.portal.Portlet;
import org.apache.jetspeed.modules.actions.portlets.JspPortletAction;
import  
org.apache.jetspeed.webservices.finance.stockmarket.StockQuoteService;
import org.apache.jetspeed.webservices.finance.stockmarket.StockQuote;
import org.apache.jetspeed.util.PortletConfigState;
import org.apache.jetspeed.util.PortletSessionState;
import org.apache.jetspeed.util.StringUtils;

public class helloWorldAction extends JspPortletAction {
     private static final String SYMBOLS = "textString";
     protected void buildNormalContext(Portlet portlet, RunData rundata)  
{
         // receive
         String symbols = (String)  
PortletSessionState.getAttributeWithFallback(portlet, rundata,  
SYMBOLS);
         // set
         rundata.getRequest().setAttribute(SYMBOLS, symbols);
     }
}



The action part isn't working within my jetspeed installation  
(.../jetspeed/WEB-INF/log/jetspeed.log):
[...]
2004-01-14 16:49:57,676 [http8080-Processor23] DEBUG GenericMVCPortlet  
- GenericMVCPortlet: Executing action [portlet.helloWorldAction] for  
portlet [HelloWorld]
2004-01-14 16:49:57,714 [http8080-Processor23] ERROR GenericMVCPortlet  
- GenericMVCPortlet - error executing  
actionjava.lang.ClassNotFoundException:
         Requested Action not found: portlet.helloWorldAction
         Turbine looked in the following modules.packages path:         
[org.apache.jetspeed.modules, org.apache.turbine.modules]
[...]



To be honest, i have no idea where to put the class file. All the  
tutorials don't help me, and i don't find the Action-Files from the  
demo-jsp-portlets (e.g. Jsp Stock Portfolio). The tutorial and the docs  
don't explain this matter very good.

So, my question: where have i to put that helloWorldAction.class in? If  
this is a newbie question which was answered before, please let me know  
where to find it.


Grateful for any answer,

Bela

-- 
"Der Blitzableiter auf einem Kirchturm ist das denkbar st�rkste  
Misstrauensvotum gegen den lieben Gott."
   -- Karl Kraus

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

======================================================================== 
This email message is for the sole use of the intended recipient (s) and may
contain confidential and privileged information. Any unauthorized review,
use, disclosure or distribution is prohibited. If you are not the intended
recipient, please contact the sender by reply email and destroy all copies
of the original message. To reply to our email administrator directly, send
an email to [EMAIL PROTECTED] 
Toys "R" Us, Inc.

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to