I now have the Pluto portal driver initializing in Eclipse using ServletUnit,
but I'm still having trouble getting a response back from the test portlet.

I'm using ServletUnit to query the portal for this URI:
  http://localhost:8080/pluto/portal/
which I am expecting to return a rendering of the test front page.

...

First, I'm noticing an oddity in PortalDriverServlet.doGet: the portal URL
retrieved by this code (the additional logging added by me in my test copy):
[[
        PortalURL currentURL = environment.getRequestedPortalURL();
        if (LOG.isDebugEnabled()) {
            LOG.debug("PortalDriverServlet.doGet: PortalURL: " + currentURL);
        }
]]
is "http://localhost:0/pluto/portal?";; i.e. the port number is zero and the
trailing '/' is replaced by '?'.  I don't know if there's a problem there, and
if so whether it's with ServletUnit or Pluto.

...

Later, I'm getting an error when trying to render the JSP page, which problem
currently has me stumped.  I'm guessing there's a problem with the tag 
libraries.
[[
com.meterware.httpunit.HttpInternalErrorException: Error on HTTP request: 500
javax.servlet.ServletException:
javax.servlet.jsp.tagext.TagAttributeInfo.<init>(Ljava/lang/String;ZLjava/lang/String;ZZ)V
[http://localhost:8080/pluto/portal/]
        at
com.meterware.servletunit.ServletUnitClient.newResponse(ServletUnitClient.java:121)
        at com.meterware.httpunit.WebWindow.getResource(WebWindow.java:164)
        at 
com.meterware.httpunit.WebWindow.getSubframeResponse(WebWindow.java:128)
        at com.meterware.httpunit.WebWindow.getResponse(WebWindow.java:121)
        at com.meterware.httpunit.WebClient.getResponse(WebClient.java:113)
        at
org.apache.pluto.unittest.TestPortletAccess.testDoPostHttpServletRequestHttpServletResponse(TestPortletAccess.java:71)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:585)
        at junit.framework.TestCase.runTest(TestCase.java:154)
        at junit.framework.TestCase.runBare(TestCase.java:127)
        at junit.framework.TestResult$1.protect(TestResult.java:106)
        at junit.framework.TestResult.runProtected(TestResult.java:124)
        at junit.framework.TestResult.run(TestResult.java:109)
        at junit.framework.TestCase.run(TestCase.java:118)
        at junit.framework.TestSuite.runTest(TestSuite.java:208)
        at junit.framework.TestSuite.run(TestSuite.java:203)
        at
org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:478)
        at
org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:344)
        at
org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:196)
]]

...

I'm struggling here because I can't tell if the problem is related to Pluto,
ServletUnit, the servlet configuration, or the Portlet configuration.  Does
anyone have any ideas, or any good places to look in the code, that might get me
going again?  (I now have the advantage of being able to examine values in
running code.)

Thanks,

#g

-- 
Graham Klyne
Research Technology Service
Oxford University Computing Services

Reply via email to