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 "Wang, XD (Xiao)" <X....@dl.ac.uk> on 2003/06/19 19:15:46 UTC
JSP Portlet Problem
> Hi there
>
> I am trying to add a new portlet(JSP), but exception occurs,
> any help is high appreciated.
>
> The portlet registry xreg file has template and action
> parameter names. The java class refered to the action value implements
> remote URL visit by Axis technology. If the Axis classes are used in the
> action class( say, Service service=new Service(); ) , then exception
> occurs, otherwise it works fine. The axis.jar and jaxrpc have been copied
> to tomcat/webapps/jetspeed/WEB-INF/lib.
>
> The exception is:
> org.apache.turbine.util.TurbineException: Error rendering
> Velocity template: /controls/html/jetspeed.vm: Invocation of method
> 'getContent' in class
> org.apache.jetspeed.portal.security.portlets.CacheableStatefulPortletWrapp
> er threw exception class java.lang.NoClassDefFoundError : null
> The action class is:
> package com.dl.infoportal.modules.actions.portlets;
> // 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.util.PortletConfigState;
> import org.apache.jetspeed.util.PortletSessionState;
> import org.apache.jetspeed.util.StringUtils;
> // Axis stuff
> import org.apache.axis.client.Call;
> import org.apache.axis.client.Service;
> import javax.xml.namespace.QName;
> public class InfoJSPAction extends JspPortletAction
> {
> private static final String DNSNAME = "dnsname";
>
> private static final String RESOURCES = "resources";
> private String
> endpoint="http://www.jino.com/modules/InfoPortal.cgi";
> /**
> * Build the normal state content for this portlet.
> *
> * @param portlet The jsp-based portlet that is being
> built.
> * @param rundata The turbine rundata context for this
> request.
> */
> protected void buildNormalContext(Portlet portlet,
> RunData rundata)
> {
>
> System.getProperties().put("proxySet","true");
>
> System.getProperties().put("proxyHost","wwwcache.jino.com");
>
> System.getProperties().put("proxyPort","9090");
> try
> {
> Service service=new Service();
> Call call=(Call)service.createCall();
>
> call.setTargetEndpointAddress( new
> java.net.URL(endpoint) );
> call.setOperationName(new
> QName("http://esc.dl.ac.uk/Resources","xml_description"));
> // Retrieve portlet parameters
> String dnsname = (String)
> PortletSessionState.getAttributeWithFallback(portlet, rundata, DNSNAME);
> String ret=(String)call.invoke( new Object[]
> { dnsname } );
> // Place appropriate objects in jsp
> context
>
> rundata.getRequest().setAttribute(RESOURCES, ret);
> }
> catch (Exception e)
> {
> Log.error(e);
> }
> }
> }
>
> The registry file is :
>
> <?xml version="1.0" encoding="UTF-8"?>
> <registry>
> <portlet-entry name="InfoJSP" hidden="false" type="ref"
> parent="JSP" application="false">
> <meta-info>
> <title>infoPortal (JSP)</title>
> <description>This is a demo of infoPortal to
> enquire resources</description>
> </meta-info>
> <parameter name="template" value="InfoJSP.jsp"
> hidden="true" cachedOnName="true" cachedOnValue="true"/>
> <parameter name="action"
> value="portlets.InfoJSPAction" hidden="true" cachedOnName="true"
> cachedOnValue="true"/>
> <media-type ref="html"/>
> <url cachedOnURL="true"/>
> <category group="Jetspeed">tutorial</category>
> </portlet-entry>
> </registry>
>
>
>
---------------------------------------------------------------------
To unsubscribe, e-mail: jetspeed-user-unsubscribe@jakarta.apache.org
For additional commands, e-mail: jetspeed-user-help@jakarta.apache.org