Hi,
The action class for the stock jsp protlet if you have done the tutorial will be in 
com.bluesunrise.jportal.modules.actions.portlets. You need to follow a similar path 
structure for your action class. Maybe something like this 
com.wizard.belaportal.modules.actions.portlets.

This package structure by the way is in the \web-inf\classes directory.

Now go to turbineresource.properties (web-inf\conf) and make sure that your package is 
visible there in the following way:

module.packages=com.wizard.belaportal.modules, org.apache.jetspeed.modules

Ofcourse if it is just a prototype you can always use the existing structure to put 
your class in. If you do not have a custom package then put the class in 
org.apache.jetspeed.modules.actions.portlets;

Based on the error that i see it seems you have not put your action class in the 
correct place.

Archana

>>> [EMAIL PROTECTED] 01/14/04 09:58AM >>>
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]

Reply via email to