I will agree with Eric and then disagree. The answer is that "it depends on what you are trying to do".

For example, uPortal and other portals often have things that need to be done to a portlet before it is ready for use - this is because they are an enterprise portal and the portal administrators need to be "in the loop" when new capabilities are introduced.

In Sakai we are using JSR-168 as a simple "drop in/plug in" for new tools. The administrator or developer drops in the new portlet and viola - the end users immediately see it and start adding it to their sites.

In Sakai we take advantage of Tomcat's hot-deploy of wars - and register the portlet with Sakai at war-start - this also allows live updating - a developer can site with Sakai and recompile / redeploy their webapp and hit refresh in their browser once the war re-expands and re-registers with Sakai through PortletServlet extensions - a cool developer feature.

Another reason in Sakai that we do not like manual intervention to install a portlet is that many Sakai installations have to hand over a completely configured Sakai image to the "production folks" - and the production folks *do not* like it when tomcat writes to local disk to muck with a web.xml. They also do not like it when an administrator adds new functionality to a system (writing to local tomcat disk) through an online web form - for enterprise portals - this is standard operating procedure - but for an application like Sakai in a clustered production that needs to be restarted or app servers added/removed from clusters on a ver dynamic basis - we need a "start-able image" of a known configuration all the time.

But it depends on the goal.

Now on to the solution. Being on 286 EG - I am convinced that there is little interest in standardizing web.xml for portlets - frankly - that is the domain of the servlet folks and 168/286 efforts define portlets - not servlets. Remember that there are ways to deploy portlets that are not in servlet containers.

This is fine and makes a lot of sense from a standards development perspective.

However that does *NOT* stop us from building a defacto standard and following it. For now my defacto standard for web.xml is Pluto 1.1's web.xml format. Because Sakai uses Pluto 1.1 - we adopt the Pluto 1.1 format without change.

It portal developers start using Pluto 1.1. and do not change the war format - then we slowly get a defacto standard - then portlet developers start distributing wars in the Pluto 1.1. form and we have a nice market for drop-in portlets.

Frankly containers like WebSphere could slip a webphere-specific implementation of PortletServlet into shared and then viola - they could take Pluto war files. Any container could do this.

And for the enterprise portals that want to muck with the web.xml - they can do this if they like by providing the classic admin portlet to upload a war.

So for me the key here is to accept the fact that war-binary compatibility is a good thing for many but not all applications, and that we need to fix this as a community - not as a standards effort.

/Chuck

On Mar 15, 2007, at 7:08 PM, Eric Dalquist wrote:

Troy,

What many portals do is provide some sort of portlet deployment tool. uPortal (which uses Pluto) does this. While it isn't as nice as just dropping the WAR into the webapps directory it does shield you from knowing what is going on with the web.xml or having to maintain it. I actually support keeping this web.xml magic as far away from the developer as possible. I have done some (cursory) looking into having a portal detect new web-apps and re-write the web.xml at deploy time it really seems like the portal would have to have hooks into the servlet container to catch the deployment of the WAR and re-write the web.xml before the container gets around to parsing it.

There may be some options with just looking at the webapps dir every few seconds and updaing web.xmls as needed and counting on tomcat to re-load the changed app but that may not be the best approach since all of the webapps would get loaded twice.

-Eric

Troy Motte wrote:
It's so much fun answering my own email. But I understand now.
Here's how I see it: The dirty secret about Portlets is that they aren't like normal J2EE apps where you code your application and drop your war file into any standard container and everything works as expected. Your application has to be customized for the container. Specifically, your web.xml has to be mangled to suit the container. For each container, you will have to maintain a separate web.xml. You will likely have to maintain multiple IDE's, build tools, etc., since everybody seems to insist on hiding the specifics of web.xml mangling behind development tools required by the container. It would be nice if the container would handle web.xml mangling instead of doing it at build time, but that seems to be difficult, as nobody does it that way.

I find this rather dissapointing. I'd be interested in others' perceptions.


----- Original Message ----
From: Troy Motte <[EMAIL PROTECTED]>
To: [email protected]
Sent: Thursday, March 15, 2007 4:00:20 PM
Subject: Trying to get a portlet to work [was Re: Administration Portlet doesn't work]

Okay I'm getting flustered.

I've followed the configuration instructions for pluto-portal- driver-config.xml, including the portlet-app element (even though the other portlets don't seem to need this). Checking on the source code, what I'm seeing is that the portletRegistry probably doesn't have an entry for my portlet. I'm back to the same thing as ever - why doesn't Pluto recognize my portlet?

Does anybody have any ideas? I'm totally at a loss.

Troy

----- Original Message ----
From: Troy Motte <[EMAIL PROTECTED]>
To: [email protected]
Sent: Thursday, March 15, 2007 3:29:59 PM
Subject: Re: Administration Portlet doesn't work

Well I wasn't able to get the admin portlet to completely recognize my portlet but I did manage to create a page with my portlet on it by editing pluto-portal-driver-config.xml. I now get a blowup to the effect of what's below. I've implemented doView, doEdit, doHelp however.

java.lang.NullPointerException
org.apache.pluto.driver.services.impl.resource.SupportedModesServiceI mpl.isPortletModeSupportedByPortlet(SupportedModesServiceImpl.java: 108) org.apache.pluto.driver.services.impl.resource.SupportedModesServiceI mpl.isPortletModeSupported(SupportedModesServiceImpl.java:81) org.apache.pluto.driver.config.impl.DriverConfigurationImpl.isPortlet ModeSupported(DriverConfigurationImpl.java:125) org.apache.pluto.driver.tags.PortletModeAnchorTag.isPortletModeAllowe d(PortletModeAnchorTag.java:161) org.apache.pluto.driver.tags.PortletModeAnchorTag.doStartTag (PortletModeAnchorTag.java:88) org.apache.jsp.WEB_002dINF.themes.portlet_002dskin_jsp._jspx_meth_plu to_modeAnchor_0(portlet_002dskin_jsp.java:178) org.apache.jsp.WEB_002dINF.themes.portlet_002dskin_jsp._jspx_meth_plu to_portlet_0(portlet_002dskin_jsp.java:115) org.apache.jsp.WEB_002dINF.themes.portlet_002dskin_jsp._jspService (portlet_002dskin_jsp.java:73) org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java: 97)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
org.apache.jasper.servlet.JspServletWrapper.service (JspServletWrapper.java:334) org.apache.jasper.servlet.JspServlet.serviceJspFile (JspServlet.java:314)
    org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
org.apache.jasper.runtime.JspRuntimeLibrary.include (JspRuntimeLibrary.java:966) org.apache.jsp.WEB_002dINF.themes.pluto_002ddefault_002dtheme_jsp._js px_meth_c_forEach_2(pluto_002ddefault_002dtheme_jsp.java:746) org.apache.jsp.WEB_002dINF.themes.pluto_002ddefault_002dtheme_jsp._js px_meth_c_otherwise_1(pluto_002ddefault_002dtheme_jsp.java:694) org.apache.jsp.WEB_002dINF.themes.pluto_002ddefault_002dtheme_jsp._js px_meth_c_choose_1(pluto_002ddefault_002dtheme_jsp.java:562) org.apache.jsp.WEB_002dINF.themes.pluto_002ddefault_002dtheme_jsp._js pService(pluto_002ddefault_002dtheme_jsp.java:159) org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java: 97)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
org.apache.jasper.servlet.JspServletWrapper.service (JspServletWrapper.java:334) org.apache.jasper.servlet.JspServlet.serviceJspFile (JspServlet.java:314)
    org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
org.apache.pluto.driver.PortalDriverServlet.doGet (PortalDriverServlet.java:147)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:689)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:802)

----- Original Message ----
From: Troy Motte <[EMAIL PROTECTED]>
To: [email protected]
Sent: Thursday, March 15, 2007 2:37:41 PM
Subject: Re: Administration Portlet doesn't work

Okay thanks for letting me know.
I tried 1.1.0 and the admin page works fine. Now I only need to deploy my portlet.

I created a war file and successfully deployed it into the tomcat instance that's part of the bundle. But I'm trying to figure out how to get Pluto to notice it. Note that I have yet to successfully deploy a portlet in anyone's portlet container and I'm really not sure what I'm missing. I've noticed that when I look at other portlets there are often Servlets mentioned in web.xml that seem to parallel the portlet itself. I've never seen anything in the Portlet Spec about that. Should I be writing some servlets? Just trying to hello world right now.

If there's a better mailing list for my questions please feel free to direct me to it...

Troy
----- Original Message ----
From: David H. DeWolf <[EMAIL PROTECTED]>
To: [email protected]
Sent: Thursday, March 15, 2007 12:49:08 PM
Subject: Re: Administration Portlet doesn't work

Thanks for the update.

This is a known issue with version 1.1.1. It has been fixed in the trunk and 1.1.2 is due out shortly. If you'd like, role back to 1.1.0 and you should be fine.


David

Troy Motte wrote:

Hello,

I just downloaded the pluto "bundle" from
http://www.eng.lsu.edu/mirrors/apache/portals/pluto/pluto- current-bundle.zip. I installed and after setting JAVA_HOME in bin/startup.bat I had it up and running. I went to:

  http://localhost:8080/pluto

That looked fine. I eventually recognized that "Navigation" is a menu, and went to "Pluto Admin". That took me to this URL:

  http://localhost:8080/pluto/portal/Pluto%20Admin

The Pluto Page Administrator portlet printed the somewhat cryptic stack trace enclosed below. I was really hoping to be able to find something I could test simple portlets on without having to install a variety of IDE's, build scripting environments, etc.. Is Pluto capable of providing that facility or am I asking too much? I had no luck with Jetspeed.

Troy

javax.portlet.PortletException
at org.apache.pluto.internal.impl.PortletRequestDispatcherImpl.include( PortletRequestDispatcherImpl.java:114) at org.apache.pluto.driver.portlets.GenericPlutoPortlet.doView (GenericPlutoPortlet.java:39) at org.apache.pluto.driver.portlets.PageAdminPortlet.doView (PageAdminPortlet.java:89) at javax.portlet.GenericPortlet.doDispatch (GenericPortlet.java:247)
    at javax.portlet.GenericPortlet.render(GenericPortlet.java:175)
at org.apache.pluto.core.PortletServlet.dispatch (PortletServlet.java:198) at org.apache.pluto.core.PortletServlet.doGet (PortletServlet.java:141)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:689)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter (ApplicationFilterChain.java:252) at org.apache.catalina.core.ApplicationFilterChain.doFilter (ApplicationFilterChain.java:173) at org.apache.catalina.core.ApplicationDispatcher.invoke (ApplicationDispatcher.java:672) at org.apache.catalina.core.ApplicationDispatcher.doInclude (ApplicationDispatcher.java:574) at org.apache.catalina.core.ApplicationDispatcher.include (ApplicationDispatcher.java:499) at org.apache.pluto.core.DefaultPortletInvokerService.invoke (DefaultPortletInvokerService.java:169) at org.apache.pluto.core.DefaultPortletInvokerService.render (DefaultPortletInvokerService.java:103) at org.apache.pluto.core.PortletContainerImpl.doRender (PortletContainerImpl.java:178) at org.apache.pluto.driver.tags.PortletTag.doStartTag (PortletTag.java:153) at org.apache.jsp.WEB_002dINF.themes.portlet_002dskin_jsp._jspx_meth_pl uto_portlet_0(portlet_002dskin_jsp.java:101) at org.apache.jsp.WEB_002dINF.themes.portlet_002dskin_jsp._jspService (portlet_002dskin_jsp.java:76) at org.apache.jasper.runtime.HttpJspBase.service (HttpJspBase.java:97)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
at org.apache.jasper.servlet.JspServletWrapper.service (JspServletWrapper.java:334) at org.apache.jasper.servlet.JspServlet.serviceJspFile (JspServlet.java:314) at org.apache.jasper.servlet.JspServlet.service (JspServlet.java:264)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter (ApplicationFilterChain.java:252) at org.apache.catalina.core.ApplicationFilterChain.doFilter (ApplicationFilterChain.java:173) at org.apache.catalina.core.ApplicationDispatcher.invoke (ApplicationDispatcher.java:672) at org.apache.catalina.core.ApplicationDispatcher.doInclude (ApplicationDispatcher.java:574) at org.apache.catalina.core.ApplicationDispatcher.include (ApplicationDispatcher.java:499) at org.apache.jasper.runtime.JspRuntimeLibrary.include (JspRuntimeLibrary.java:966) at org.apache.jsp.WEB_002dINF.themes.pluto_002ddefault_002dtheme_jsp._j spx_meth_c_forEach_2(pluto_002ddefault_002dtheme_jsp.java:746) at org.apache.jsp.WEB_002dINF.themes.pluto_002ddefault_002dtheme_jsp._j spx_meth_c_otherwise_1(pluto_002ddefault_002dtheme_jsp.java:694) at org.apache.jsp.WEB_002dINF.themes.pluto_002ddefault_002dtheme_jsp._j spx_meth_c_choose_1(pluto_002ddefault_002dtheme_jsp.java:562) at org.apache.jsp.WEB_002dINF.themes.pluto_002ddefault_002dtheme_jsp._j spService(pluto_002ddefault_002dtheme_jsp.java:159) at org.apache.jasper.runtime.HttpJspBase.service (HttpJspBase.java:97)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
at org.apache.jasper.servlet.JspServletWrapper.service (JspServletWrapper.java:334) at org.apache.jasper.servlet.JspServlet.serviceJspFile (JspServlet.java:314) at org.apache.jasper.servlet.JspServlet.service (JspServlet.java:264)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter (ApplicationFilterChain.java:252) at org.apache.catalina.core.ApplicationFilterChain.doFilter (ApplicationFilterChain.java:173) at org.apache.catalina.core.ApplicationDispatcher.invoke (ApplicationDispatcher.java:672) at org.apache.catalina.core.ApplicationDispatcher.processRequest (ApplicationDispatcher.java:463) at org.apache.catalina.core.ApplicationDispatcher.doForward (ApplicationDispatcher.java:398) at org.apache.catalina.core.ApplicationDispatcher.forward (ApplicationDispatcher.java:301) at org.apache.pluto.driver.PortalDriverServlet.doGet (PortalDriverServlet.java:147)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:689)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter (ApplicationFilterChain.java:252) at org.apache.catalina.core.ApplicationFilterChain.doFilter (ApplicationFilterChain.java:173) at org.apache.catalina.core.StandardWrapperValve.invoke (StandardWrapperValve.java:213) at org.apache.catalina.core.StandardContextValve.invoke (StandardContextValve.java:178) at org.apache.catalina.authenticator.AuthenticatorBase.invoke (AuthenticatorBase.java:524) at org.apache.catalina.core.StandardHostValve.invoke (StandardHostValve.java:126) at org.apache.catalina.valves.ErrorReportValve.invoke (ErrorReportValve.java:105) at org.apache.catalina.authenticator.SingleSignOn.invoke (SingleSignOn.java:419) at org.apache.catalina.core.StandardEngineValve.invoke (StandardEngineValve.java:107) at org.apache.catalina.connector.CoyoteAdapter.service (CoyoteAdapter.java:148) at org.apache.coyote.http11.Http11Processor.process (Http11Processor.java:869) at org.apache.coyote.http11.Http11BaseProtocol $Http11ConnectionHandler.processConnection (Http11BaseProtocol.java:664) at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket (PoolTcpEndpoint.java:527) at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt (LeaderFollowerWorkerThread.java:80) at org.apache.tomcat.util.threads.ThreadPool $ControlRunnable.run(ThreadPool.java:684)
    at java.lang.Thread.run(Thread.java:595)
Caused by: javax.servlet.ServletException
at org.apache.jasper.runtime.PageContextImpl.doHandlePageException (PageContextImpl.java:843) at org.apache.jasper.runtime.PageContextImpl.handlePageException (PageContextImpl.java:776) at org.apache.jsp.WEB_002dINF.fragments.admin.page.view_jsp._jspService (view_jsp.java:263) at org.apache.jasper.runtime.HttpJspBase.service (HttpJspBase.java:97)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
at org.apache.jasper.servlet.JspServletWrapper.service (JspServletWrapper.java:334) at org.apache.jasper.servlet.JspServlet.serviceJspFile (JspServlet.java:314) at org.apache.jasper.servlet.JspServlet.service (JspServlet.java:264)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter (ApplicationFilterChain.java:252) at org.apache.catalina.core.ApplicationFilterChain.doFilter (ApplicationFilterChain.java:173) at org.apache.catalina.core.ApplicationDispatcher.invoke (ApplicationDispatcher.java:672) at org.apache.catalina.core.ApplicationDispatcher.doInclude (ApplicationDispatcher.java:574) at org.apache.catalina.core.ApplicationDispatcher.include (ApplicationDispatcher.java:499) at org.apache.pluto.internal.impl.PortletRequestDispatcherImpl.include( PortletRequestDispatcherImpl.java:107)
    ... 66 more

Nested Exception is javax.servlet.ServletException
at org.apache.jasper.runtime.PageContextImpl.doHandlePageException (PageContextImpl.java:843) at org.apache.jasper.runtime.PageContextImpl.handlePageException (PageContextImpl.java:776) at org.apache.jsp.WEB_002dINF.fragments.admin.page.view_jsp._jspService (view_jsp.java:263) at org.apache.jasper.runtime.HttpJspBase.service (HttpJspBase.java:97)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
at org.apache.jasper.servlet.JspServletWrapper.service (JspServletWrapper.java:334) at org.apache.jasper.servlet.JspServlet.serviceJspFile (JspServlet.java:314) at org.apache.jasper.servlet.JspServlet.service (JspServlet.java:264)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter (ApplicationFilterChain.java:252) at org.apache.catalina.core.ApplicationFilterChain.doFilter (ApplicationFilterChain.java:173) at org.apache.catalina.core.ApplicationDispatcher.invoke (ApplicationDispatcher.java:672) at org.apache.catalina.core.ApplicationDispatcher.doInclude (ApplicationDispatcher.java:574) at org.apache.catalina.core.ApplicationDispatcher.include (ApplicationDispatcher.java:499) at org.apache.pluto.internal.impl.PortletRequestDispatcherImpl.include( PortletRequestDispatcherImpl.java:107) at org.apache.pluto.driver.portlets.GenericPlutoPortlet.doView (GenericPlutoPortlet.java:39) at org.apache.pluto.driver.portlets.PageAdminPortlet.doView (PageAdminPortlet.java:89) at javax.portlet.GenericPortlet.doDispatch (GenericPortlet.java:247)
    at javax.portlet.GenericPortlet.render(GenericPortlet.java:175)
at org.apache.pluto.core.PortletServlet.dispatch (PortletServlet.java:198) at org.apache.pluto.core.PortletServlet.doGet (PortletServlet.java:141)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:689)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter (ApplicationFilterChain.java:252) at org.apache.catalina.core.ApplicationFilterChain.doFilter (ApplicationFilterChain.java:173) at org.apache.catalina.core.ApplicationDispatcher.invoke (ApplicationDispatcher.java:672) at org.apache.catalina.core.ApplicationDispatcher.doInclude (ApplicationDispatcher.java:574) at org.apache.catalina.core.ApplicationDispatcher.include (ApplicationDispatcher.java:499) at org.apache.pluto.core.DefaultPortletInvokerService.invoke (DefaultPortletInvokerService.java:169) at org.apache.pluto.core.DefaultPortletInvokerService.render (DefaultPortletInvokerService.java:103) at org.apache.pluto.core.PortletContainerImpl.doRender (PortletContainerImpl.java:178) at org.apache.pluto.driver.tags.PortletTag.doStartTag (PortletTag.java:153) at org.apache.jsp.WEB_002dINF.themes.portlet_002dskin_jsp._jspx_meth_pl uto_portlet_0(portlet_002dskin_jsp.java:101) at org.apache.jsp.WEB_002dINF.themes.portlet_002dskin_jsp._jspService (portlet_002dskin_jsp.java:76) at org.apache.jasper.runtime.HttpJspBase.service (HttpJspBase.java:97)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
at org.apache.jasper.servlet.JspServletWrapper.service (JspServletWrapper.java:334) at org.apache.jasper.servlet.JspServlet.serviceJspFile (JspServlet.java:314) at org.apache.jasper.servlet.JspServlet.service (JspServlet.java:264)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter (ApplicationFilterChain.java:252) at org.apache.catalina.core.ApplicationFilterChain.doFilter (ApplicationFilterChain.java:173) at org.apache.catalina.core.ApplicationDispatcher.invoke (ApplicationDispatcher.java:672) at org.apache.catalina.core.ApplicationDispatcher.doInclude (ApplicationDispatcher.java:574) at org.apache.catalina.core.ApplicationDispatcher.include (ApplicationDispatcher.java:499) at org.apache.jasper.runtime.JspRuntimeLibrary.include (JspRuntimeLibrary.java:966) at org.apache.jsp.WEB_002dINF.themes.pluto_002ddefault_002dtheme_jsp._j spx_meth_c_forEach_2(pluto_002ddefault_002dtheme_jsp.java:746) at org.apache.jsp.WEB_002dINF.themes.pluto_002ddefault_002dtheme_jsp._j spx_meth_c_otherwise_1(pluto_002ddefault_002dtheme_jsp.java:694) at org.apache.jsp.WEB_002dINF.themes.pluto_002ddefault_002dtheme_jsp._j spx_meth_c_choose_1(pluto_002ddefault_002dtheme_jsp.java:562) at org.apache.jsp.WEB_002dINF.themes.pluto_002ddefault_002dtheme_jsp._j spService(pluto_002ddefault_002dtheme_jsp.java:159) at org.apache.jasper.runtime.HttpJspBase.service (HttpJspBase.java:97)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
at org.apache.jasper.servlet.JspServletWrapper.service (JspServletWrapper.java:334) at org.apache.jasper.servlet.JspServlet.serviceJspFile (JspServlet.java:314) at org.apache.jasper.servlet.JspServlet.service (JspServlet.java:264)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter (ApplicationFilterChain.java:252) at org.apache.catalina.core.ApplicationFilterChain.doFilter (ApplicationFilterChain.java:173) at org.apache.catalina.core.ApplicationDispatcher.invoke (ApplicationDispatcher.java:672) at org.apache.catalina.core.ApplicationDispatcher.processRequest (ApplicationDispatcher.java:463) at org.apache.catalina.core.ApplicationDispatcher.doForward (ApplicationDispatcher.java:398) at org.apache.catalina.core.ApplicationDispatcher.forward (ApplicationDispatcher.java:301) at org.apache.pluto.driver.PortalDriverServlet.doGet (PortalDriverServlet.java:147)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:689)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter (ApplicationFilterChain.java:252) at org.apache.catalina.core.ApplicationFilterChain.doFilter (ApplicationFilterChain.java:173) at org.apache.catalina.core.StandardWrapperValve.invoke (StandardWrapperValve.java:213) at org.apache.catalina.core.StandardContextValve.invoke (StandardContextValve.java:178) at org.apache.catalina.authenticator.AuthenticatorBase.invoke (AuthenticatorBase.java:524) at org.apache.catalina.core.StandardHostValve.invoke (StandardHostValve.java:126) at org.apache.catalina.valves.ErrorReportValve.invoke (ErrorReportValve.java:105) at org.apache.catalina.authenticator.SingleSignOn.invoke (SingleSignOn.java:419) at org.apache.catalina.core.StandardEngineValve.invoke (StandardEngineValve.java:107) at org.apache.catalina.connector.CoyoteAdapter.service (CoyoteAdapter.java:148) at org.apache.coyote.http11.Http11Processor.process (Http11Processor.java:869) at org.apache.coyote.http11.Http11BaseProtocol $Http11ConnectionHandler.processConnection (Http11BaseProtocol.java:664) at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket (PoolTcpEndpoint.java:527) at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt (LeaderFollowerWorkerThread.java:80) at org.apache.tomcat.util.threads.ThreadPool $ControlRunnable.run(ThreadPool.java:684)
    at java.lang.Thread.run(Thread.java:595)




















Reply via email to