Forums and 404 resource not found error

199 views
Skip to first unread message

Danton Barnes

unread,
Oct 4, 2016, 10:11:31 AM10/4/16
to Sakai Development
Hello,
      I'm have an issue that I have been trying to fix for weeks.  I've done research I've looked through forums, documentation, etc but Just can't seem to find a solution.  I'm at the point where I think I may just need to rebuild everything.  I really don't want to do that.  Below I have a bug report that I am getting when the issue comes up.  I am also attaching some screen shots to help me explain exactly what is going on.  I'm running sakai 10.6.  See bug report below:

stack trace:

 

 

org.sakaiproject.portal.api.PortalHandlerException: org.sakaiproject.tool.api.ToolException: org.apache.jasper.JasperException: java.lang.ClassNotFoundException: org.apache.jsp.jsp.discussionForum.forum.dfForumDetail_jsp

    at org.sakaiproject.portal.charon.SkinnableCharonPortal.doGet(SkinnableCharonPortal.java:901)

caused by: org.sakaiproject.tool.api.ToolException: org.apache.jasper.JasperException: java.lang.ClassNotFoundException: org.apache.jsp.jsp.discussionForum.forum.dfForumDetail_jsp

    at org.sakaiproject.portal.charon.SkinnableCharonPortal.forwardTool(SkinnableCharonPortal.java:1544)

caused by: org.apache.jasper.JasperException: java.lang.ClassNotFoundException: org.apache.jsp.jsp.discussionForum.forum.dfForumDetail_jsp

    at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:376)

caused by: java.lang.ClassNotFoundException: org.apache.jsp.jsp.discussionForum.forum.dfForumDetail_jsp

    at java.net.URLClassLoader$1.run(URLClassLoader.java:366)

    at java.net.URLClassLoader$1.run(URLClassLoader.java:355)

    at java.security.AccessController.doPrivileged(Native Method)

    at java.net.URLClassLoader.findClass(URLClassLoader.java:354)

    at org.apache.jasper.servlet.JasperLoader.loadClass(JasperLoader.java:132)

    at org.apache.jasper.servlet.JasperLoader.loadClass(JasperLoader.java:63)

    at org.apache.catalina.core.DefaultInstanceManager.newInstance(DefaultInstanceManager.java:119)

    at org.apache.jasper.servlet.JspServletWrapper.getServlet(JspServletWrapper.java:172)

    at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:376)

    at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:395)

    at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:339)

    at javax.servlet.http.HttpServlet.service(HttpServlet.java:731)

    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:303)

    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)

    at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)

    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)

    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)

    at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:747)

    at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:485)

    at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:410)

    at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:337)

    at com.sun.faces.context.ExternalContextImpl.dispatch(ExternalContextImpl.java:346)

    at com.sun.faces.application.ViewHandlerImpl.renderView(ViewHandlerImpl.java:152)

    at org.sakaiproject.jsf.app.SakaiViewHandler.renderView(SakaiViewHandler.java:162)

    at com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:107)

    at com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:245)

    at com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:137)

    at javax.faces.webapp.FacesServlet.service(FacesServlet.java:214)

    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:303)

    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)

    at org.sakaiproject.util.RequestFilter.doFilter(RequestFilter.java:394)

    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)

    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)

    at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)

    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)

    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)

    at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:747)

    at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:485)

    at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:410)

    at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:337)

    at org.sakaiproject.tool.messageforums.MessageForumsFilePickerServlet.dispatch(MessageForumsFilePickerServlet.java:166)

    at org.sakaiproject.jsf.util.JsfTool.doGet(JsfTool.java:242)

    at javax.servlet.http.HttpServlet.service(HttpServlet.java:624)

    at javax.servlet.http.HttpServlet.service(HttpServlet.java:731)

    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:303)

    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)

    at org.sakaiproject.util.RequestFilter.doFilter(RequestFilter.java:394)

    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)

    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)

    at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:747)

    at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:485)

    at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:377)

    at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:337)

    at org.sakaiproject.tool.impl.ActiveToolComponent$MyActiveTool.forward(ActiveToolComponent.java:513)

    at org.sakaiproject.portal.charon.SkinnableCharonPortal.forwardTool(SkinnableCharonPortal.java:1544)

    at org.sakaiproject.portal.charon.handlers.ToolHandler.doTool(ToolHandler.java:215)

    at org.sakaiproject.portal.charon.handlers.ToolHandler.doGet(ToolHandler.java:98)

    at org.sakaiproject.portal.charon.SkinnableCharonPortal.doGet(SkinnableCharonPortal.java:901)

    at javax.servlet.http.HttpServlet.service(HttpServlet.java:624)

    at javax.servlet.http.HttpServlet.service(HttpServlet.java:731)

    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:303)

    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)

    at org.sakaiproject.util.RequestFilter.doFilter(RequestFilter.java:455)

    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)

    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)

    at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)

    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)

    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)

    at org.apache.catalina.filters.HttpHeaderSecurityFilter.doFilter(HttpHeaderSecurityFilter.java:120)

    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)

    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)

    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:220)

    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:122)

    at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:614)

    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:169)

    at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103)

    at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:956)

    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:116)

    at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:436)

    at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1078)

    at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:625)

    at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:318)

    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)

    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)

    at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)

    at java.lang.Thread.run(Thread.java:745)

 

 

 

 

Tool Placement:

No Placement

 

 

 

 

Request:

:    AuthType:null

:    CharEncoding:UTF-8

:    ContentLength:-1

:    ContentType:null

:    ContextPath:/portal

:    LocalAddress:10.234.154.77

:    LocalName:10.234.154.77

:    LocalPort:8443

:    Method:GET

:    PathInfo:/tool/e9d229c5-22bf-46c4-b8c8-24b7703f2a93/discussionForum/forum/dfForumDetail

:    Protocol:HTTP/1.1

:    QueryString:null

:    RemoteAddress:10.234.128.46

:    RemoteHost:10.234.128.46

:    RemotePort:58335

:    Requested URL:https://txsappblt074v.txt.textron.com:8443/portal/tool/e9d229c5-22bf-46c4-b8c8-24b7703f2a93/discussionForum/forum/dfForumDetail

:    Scheme:https

:    ServerName:txsappblt074v.txt.textron.com

:    Headers:

:        Header:host:txsappblt074v.txt.textron.com:8443

:        Header:connection:keep-alive

:        Header:cache-control:max-age=0

:        Header:upgrade-insecure-requests:1

:        Header:user-agent:Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/53.0.2785.143 Safari/537.36

:        Header:accept:text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8

:        Header:referer:https://txsappblt074v.txt.textron.com:8443/portal/site/00a594a5-eba2-4f7c-a65c-34b78065f431/page/cdce73f2-6bd4-4561-875c-96e1f486d0eb

:        Header:accept-encoding:gzip, deflate, sdch, br

:        Header:accept-language:en-US,en;q=0.8

:        Header:cookie:---censored---

:    Parameters:

:    Attributes:

:        Attribute:sakai.character.encoding.done:sakai.character.encoding.done

:        Attribute:tool.url.manager:org.sakaiproject.portal.util.ToolURLManagerImpl@11804f4a

:        Attribute:sakai.html.body.onload:setMainFrameHeight('Maine9d229c5x22bfx46c4xb8c8x24b7703f2a93');setFocus(focus_path);

:        Attribute:javax.servlet.request.key_size:128

:        Attribute:sakai.html.head.lang:en

:        Attribute:sakai.request.native.url:sakai.request.native.url

:        Attribute:sakai.filtered:sakai.filtered

:        Attribute:sakai.html.head.css:<link href="/library/skin/tool_base.css?version=" type="text/css" rel="stylesheet" media="all" />

<link href="/library/skin/neo-default/tool.css?version=" type="text/css" rel="stylesheet" media="all" />

 

:        Attribute:sakai.session:MyS_admin{821af402-5e41-43f2-9c8c-659fcc4ce601, userId='admin', at=11, ts=13, cs=3, Tue Oct 04 08:58:06 EDT 2016}

:        Attribute:javax.servlet.request.ssl_session:57f3a75eb04f889fd90eb68a4c164d3769b76cc01264c4f54e9679a18ceb1b2a

:        Attribute:sakai.html.head.css.skin:<link href="/library/skin/neo-default/tool.css?version=" type="text/css" rel="stylesheet" media="all" />

 

:        Attribute:javax.servlet.request.ssl_session_id:57f3a75eb04f889fd90eb68a4c164d3769b76cc01264c4f54e9679a18ceb1b2a

:        Attribute:sakai.html.head.js:<script type="text/javascript" src="/library/js/headscripts.js?version="></script>

<script type="text/javascript">var sakai = sakai || {}; sakai.editor = sakai.editor || {};  sakai.locale = sakai.locale || {}; sakai.locale.userCountry = 'US'; sakai.locale.userLanguage = 'en'; sakai.locale.userLocale = 'en_US'; sakai.editor.collectionId = '/group/00a594a5-eba2-4f7c-a65c-34b78065f431/';

sakai.editor.enableResourceSearch = false;</script> <script type="text/javascript">var CKEDITOR_BASEPATH='/library/editor/ckeditor/';

</script>

<script type="text/javascript" src="/library/editor/ckeditor/ckeditor.js?version="></script>

<script type="text/javascript" src="/library/editor/ckeditor.launch.js?version="></script>

 

:        Attribute:javax.servlet.request.ssl_session_mgr:org.apache.tomcat.util.net.jsse.JSSESupport@7ed58c3f

:        Attribute:sakai.html.head:<link href="/library/skin/tool_base.css?version=" type="text/css" rel="stylesheet" media="all" />

<link href="/library/skin/neo-default/tool.css?version=" type="text/css" rel="stylesheet" media="all" /> <script type="text/javascript" src="/library/js/headscripts.js?version="></script>

<script type="text/javascript">var sakai = sakai || {}; sakai.editor = sakai.editor || {};  sakai.locale = sakai.locale || {}; sakai.locale.userCountry = 'US'; sakai.locale.userLanguage = 'en'; sakai.locale.userLocale = 'en_US'; sakai.editor.collectionId = '/group/00a594a5-eba2-4f7c-a65c-34b78065f431/';

sakai.editor.enableResourceSearch = false;</script> <script type="text/javascript">var CKEDITOR_BASEPATH='/library/editor/ckeditor/';

</script>

<script type="text/javascript" src="/library/editor/ckeditor/ckeditor.js?version="></script>

<script type="text/javascript" src="/library/editor/ckeditor.launch.js?version="></script>

 

:        Attribute:javax.servlet.request.cipher_suite:TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA

:        Attribute:sakai.html.head.css.base:<link href="/library/skin/tool_base.css?version=" type="text/css" rel="stylesheet" media="all" />

 

:        Attribute:org.apache.tomcat.util.net.secure_protocol_version:TLSv1.2

Session:

:    Created:1475585886466

:    LastAccess:1475586200250

:    CreationDateAndTime:Tuesday, October 4, 2016

:    LastAccessDateAndTime:Tuesday, October 4, 2016

:    MaxInactive:1800

:    Attributes:

:        Attribute:portalskin:neoskin

 



The problem comes up in the forums.  In the screen shot below if the user clicks on the following links I get these errors.


For example if I click on the Link for the first reply "Test convo" I get the following:



I'm not sure if this is a problem with sakai or if this is a problem with Tomcat and honestly not sure what to do in either case.  Any help is greatly appreciated.


Thank you




Danton

Şimşek Mert

unread,
Oct 4, 2016, 10:21:01 AM10/4/16
to Danton Barnes, Sakai Development
Hi everybody

I am having exactly the same problem not only for forums but also some other pages like profile, preferences, home.

I thought at the beginning that it is related to something regarding cache. I have checked all config details related to cache and tomcat settings. but nothing changed.

Any help would be appreciated.

Thanks in advance.

--
You received this message because you are subscribed to the Google Groups "Sakai Development" group.
To unsubscribe from this group and stop receiving emails from it, send an email to sakai-dev+...@apereo.org.
To post to this group, send email to saka...@apereo.org.
Visit this group at https://groups.google.com/a/apereo.org/group/sakai-dev/.

Hendrik Steller

unread,
Oct 4, 2016, 11:45:59 AM10/4/16
to Danton Barnes, saka...@apereo.org
Hi,

this looks like Tomcat didn't manage to compile one of the tool's JSPs into a
servlet class - for whatever reason:


> java.lang.ClassNotFoundException:
> org.apache.jsp.jsp.discussionForum.forum.dfForumDetail_jsp

As I can't reproduce this with 10.5 or 10.7 (sorry, don't have a 10.6), these
are the first things I would try if I were in your shoes:

1.
Shutdown tomcat, delete the content of CATALINA_HOME/work, start&try again
Make sure the owner of the tomcat process has write permissions for the "work"
directory (also for webapps and temp and all files within, while you're at
it).

("work" is were tomcat puts the .java and .class files when it does the jsp-
>java->class compilation behind the scenes, so this could potentially fix
possible permission or weird caching issues)

2.
Check both(!) Tomcat log files: catalina.out and localhost.<yyyy-mm-dd>.log
for error messages indicating JSP compilation problems or other deployment
issues with that tool.

Some error messages don't seem to make it into catalina.out, especially if
they're more of an "infrastructural" kind where Tomcat itself encounters a
problem.


3.
Maybe I would try to rebuild and redeploy just the messageforums-tool,
assuming you've installed from source (I've seen some weird issues with maven
when a student tried to build Sakai while his laptop had network connectivity
problems)

[ very long shot:
4.
Should you've applied any tricks for a speedier Tomcat startup (skip
jarScanning, multi-threaded webapp deployment), try what happens if you don't.
]


Regards
Hendrik



On Tuesday 04 October 2016 07:11:31 Danton Barnes wrote:
> The problem comes up in the forums. In the screen shot below if the user
> clicks on the following links I get these errors.
>
> <https://lh3.googleusercontent.com/-Jzlr2HdGExg/V_O4NpImpyI/AAAAAAAABMU/Ejeg
> L-9DCmgcrHoxArjFyeY3WEMnL6mXgCLcB/s1600/example.png>
>
>
> For example if I click on the Link for the first reply "Test convo" I get
> the following:
>
> <https://lh3.googleusercontent.com/-gb3J2xCKWoA/V_O4Td4fTBI/AAAAAAAABMY/9z0P
> U2meLQwAzbBVaM5xfUqfpXYmJJaIQCLcB/s1600/Error.png>

Şimşek Mert

unread,
Oct 5, 2016, 10:52:58 AM10/5/16
to Hendrik Steller, Danton Barnes, saka...@apereo.org
Hi Hendrick

I have tried all your recommendations but nothing changed.

Any more idea?

Thanks

Danton Barnes

unread,
Oct 18, 2016, 10:39:20 AM10/18/16
to Sakai Development, dbarn...@gmail.com
Would it hurt to rebuild/redeploy the whole thing?  Would it delete my existing courseware if I did that?

Thanks



Danton

Leonardo Canessa

unread,
Oct 18, 2016, 10:47:15 AM10/18/16
to Danton Barnes, Sakai Development
Rebuilding / redeploying is a good idea. It won't delete any of your actual data (I'm assuming that's what you mean by courseware) as that is all stored in the database.

This is a bash script I use to "clean" tomcat: https://gist.github.com/master-bob/58ed92fef85f257b3746

Leonardo Canessa
Web Developer - E-Learning

--
You received this message because you are subscribed to the Google Groups "Sakai Development" group.
To unsubscribe from this group and stop receiving emails from it, send an email to sakai-dev+unsubscribe@apereo.org.

Danton Barnes

unread,
Oct 18, 2016, 12:26:34 PM10/18/16
to Sakai Development, dbarn...@gmail.com
Awesome.  Thank you for the assist.  Still learning some of this stuff.
To unsubscribe from this group and stop receiving emails from it, send an email to sakai-dev+...@apereo.org.

Danton Barnes

unread,
Oct 20, 2016, 12:54:56 AM10/20/16
to Sakai Development, dbarn...@gmail.com
I rebuilt sakai in it's entirety and also removed everything in the work directory recursively, and that all did the trick.  Thank you all for the assist.  


On Tuesday, October 4, 2016 at 11:45:59 AM UTC-4, Hendrik Steller wrote:
Reply all
Reply to author
Forward
0 new messages