Hi everyone,
I'm currently trying to deploy my own portlet into Pluto 1.0.1 by hand.
The window of the portlet already shows up in the Pluto portal, but the
content only shows "Error occurred in portlet!", and there is a
NullPointerException in the log:
java.lang.NullPointerException at
org.apache.pluto.invoker.impl.PortletInvokerImpl.invoke(PortletInvokerImpl.java:109)
I looked up the corresponding line in the source:
protected void invoke(PortletRequest portletRequest, PortletResponse
portletResponse, Integer methodID)
throws PortletException,IOException
{
InternalPortletRequest internalPortletRequest =
CoreUtils.getInternalRequest(portletRequest);
InternalPortletResponse internalPortletResponse =
CoreUtils.getInternalResponse(portletResponse);
// gather all required data from request and response
ServletRequest servletRequest =
((javax.servlet.http.HttpServletRequestWrapper)internalPortletRequest).getRequest();
ServletResponse servletResponse =
((javax.servlet.http.HttpServletResponseWrapper)internalPortletResponse).getResponse();
ServletDefinition servletDefinition =
portletDefinition.getServletDefinition();
ServletContext servletContext = servletConfig.getServletContext();
javax.servlet.RequestDispatcher dispatcher =
servletDefinition.getRequestDispatcher(servletContext); <<< ITS THIS LINE
[...]
Looks like servletConfig.getServletContext() returned null. The reason
could be that I defined no "invoker servlet" for my portlet. Before I
elaborate any more, could anyone tell me what's the deal with that
"invoker servlet"? I could not find anything about it in the portlet
specification or in the pluto documentation. Why is it needed, or is
just optional and there is an error in the impl?
Regards,
Andreas