[Building Sakai] 2.7.1 new site content not modifiable

Chris Ribble cribble at uwindsor.ca
Thu Mar 10 12:23:22 PST 2011


Thanks for the help Matthew. I've decided for now to disable conditional 
release using that property and it solved the problem.

Thanks again.
Chris



From:   Matthew Jones <jonespm at umich.edu>
To:     Chris Ribble <cribble at uwindsor.ca>
Cc:     sakai-dev at collab.sakaiproject.org
Date:   03/10/2011 12:15 PM
Subject:        Re: [Building Sakai] 2.7.1 new site content not modifiable
Sent by:        jonespm at gmail.com



Well, there is a property set in SAK-17571 that disabled conditional 
release by default. I would think that It whouldn't get into this code if 
it's disabled, but don't know enough about it.

conditions.service.enabled=false

Since it did hit it though somehow for you, and findbugs would find it 
eventually it seems like it's a bug that should be fixed. But I don't know 
the appropriate fix since I don't even know what this does. (We don't use 
conditional release here) 

Check the array length of resourceTokens and put up an alert/return? Put 
it into a try/catch? Put the creation of the additionalAssignmentInfo 
String into a for loop? 

On Thu, Mar 10, 2011 at 11:41 AM, Chris Ribble <cribble at uwindsor.ca> 
wrote:
Thanks for the reply Matthew. 

Do you think the ticket/patch would fix this issue or is it simply related 
to it, since this ticket seems to not include the content/resources tool? 

Also, the test server that I am running, where this issue doesn't show up, 
is using the exact same code as the QA server where the problem is 
occurring. If there is a problem in the code, is there any configuration 
to the server that could affect the way the conditional release feature 
behaves? 

Thanks 
Chris 



From:        Matthew Jones <jonespm at umich.edu> 
To:        Chris Ribble <cribble at uwindsor.ca> 
Cc:        sakai-dev at collab.sakaiproject.org 
Date:        03/10/2011 11:01 AM 
Subject:        Re: [Building Sakai] 2.7.1 new site content not modifiable 

Sent by:        jonespm at gmail.com 




At a quick glance, I'm not sure what this code is doing (related to 
conditional release) but I'd say that CR-8/SAK-18838 has a array size that 
really needs to be checked. It seems like you can't guarantee there to be 
7 resourceTokens. ;)

Caused by: java.lang.ArrayIndexOutOfBoundsException: 5 
        at 
org.sakaiproject.content.tool.ResourceConditionsHelper.saveCondition(ResourceConditionsHelper.java:87)
  

https://source.sakaiproject.org/viewsvn/content/trunk/content-tool/tool/src/java/org/sakaiproject/content/tool/ResourceConditionsHelper.java?r1=77493&r2=77494& 


[1] https://jira.sakaiproject.org/browse/SAK-18838 

-Matthew 

On Thu, Mar 10, 2011 at 9:57 AM, Chris Ribble <cribble at uwindsor.ca> wrote: 

Hi all, 

I'm new to the list so I am hoping I'm not asking a question that has been 
answered before. 

We are running a 2.7.1 test instance with Kernel 1.1.8. We run it behind 
an F5 load balancer and it uses an Oracle 10g DB for storage. This 
instance was created after running migration scripts from our current 
2.5.2 production environment. 

In our 2.7.1 instance, our sakai admin has been testing various functions 
of each of the tools. In the content/resources tool we've noticed that 
when a new course site is created or an old course site is copied we 
cannot create new folders or edit existing files/folders for that site. We 
can however add new files, but cannot edit them once they are added. For 
instance, when you select create folder, and you are presented with the 
screen to name your folder, you click "Create Folder" and it just 
refreshes that same screen. In catalina.out the following stack trace 
error is seen: 

org.sakaiproject.cheftool.VelocityPortletPaneledAction - Exception calling 
method doCreateFolders java.lang.reflect.InvocationTargetException (Caused 
by java.lang.ArrayIndexOutOfBoundsException: 5) 
java.lang.reflect.InvocationTargetException 
        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:597) 
        at 
org.sakaiproject.cheftool.VelocityPortletPaneledAction.actionDispatch(VelocityPortletPaneledAction.java:618) 

        at 
org.sakaiproject.cheftool.VelocityPortletPaneledAction.processAction(VelocityPortletPaneledAction.java:528) 

        at 
org.sakaiproject.cheftool.ToolServlet.doGet(ToolServlet.java:230) 
        at 
org.sakaiproject.cheftool.VelocityPortletPaneledAction.doGet(VelocityPortletPaneledAction.java:1025) 

        at 
org.sakaiproject.cheftool.ToolServlet.doPost(ToolServlet.java:154) 
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:647) 
        at 
org.sakaiproject.vm.ComponentServlet.service(ComponentServlet.java:56) 
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:729) 
        at 
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:269) 

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

        at 
org.sakaiproject.util.RequestFilter.doFilter(RequestFilter.java:580) 
        at 
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215) 

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

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

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

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

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

        at 
org.sakaiproject.tool.impl.ActiveToolComponent$MyActiveTool.help(ActiveToolComponent.java:570) 

        at 
org.sakaiproject.cheftool.ToolServlet.sendToHelper(ToolServlet.java:659) 
        at 
org.sakaiproject.cheftool.ToolServlet.doGet(ToolServlet.java:221) 
        at 
org.sakaiproject.cheftool.VelocityPortletPaneledAction.doGet(VelocityPortletPaneledAction.java:1025) 

        at 
org.sakaiproject.cheftool.ToolServlet.doPost(ToolServlet.java:154) 
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:647) 
        at 
org.sakaiproject.vm.ComponentServlet.service(ComponentServlet.java:56) 
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:729) 
        at 
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:269) 

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

        at 
org.sakaiproject.util.RequestFilter.doFilter(RequestFilter.java:580) 
        at 
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215) 

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

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

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

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

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

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

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

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

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

        at 
org.sakaiproject.portal.charon.handlers.ToolHandler.doPost(ToolHandler.java:73) 

        at 
org.sakaiproject.portal.charon.SkinnableCharonPortal.doPost(SkinnableCharonPortal.java:1069) 

        at javax.servlet.http.HttpServlet.service(HttpServlet.java:647) 
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:729) 
        at 
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:269) 

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

        at 
org.sakaiproject.util.RequestFilter.doFilter(RequestFilter.java:641) 
        at 
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215) 

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

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

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

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

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

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

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

        at 
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:879) 

        at 
org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:665) 

        at 
org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:528) 

        at 
org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:81) 

        at 
org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:689) 

        at java.lang.Thread.run(Thread.java:619) 
Caused by: java.lang.ArrayIndexOutOfBoundsException: 5 
        at 
org.sakaiproject.content.tool.ResourceConditionsHelper.saveCondition(ResourceConditionsHelper.java:87) 

        at 
org.sakaiproject.content.tool.ResourcesHelperAction.doCreateFolders(ResourcesHelperAction.java:930) 

        ... 63 more 

The odd thing is I have another test instance that I run locally on my 
machine(using the same db) and I can modify the content/resources in those 
same sites fine through it. I've checked the config files they are mostly 
the same, the only main difference being that the broken test instance is 
behind a load balancer and it forces an SSL connection. 

We've checked the realms for content and everything looks fine, so all 
checks out there.... 

Has anyone seen anything like this before? Is there a setting I missed 
that is specific to this problem? 


Thanks 
Chris 


Chris Ribble 
LMS Application Developer 
Information Technology Services 
University of Windsor 
519-253-3000 x4412 
cribble at uwindsor.ca
_______________________________________________
sakai-dev mailing list
sakai-dev at collab.sakaiproject.org
http://collab.sakaiproject.org/mailman/listinfo/sakai-dev

TO UNSUBSCRIBE: send email to 
sakai-dev-unsubscribe at collab.sakaiproject.org with a subject of 
"unsubscribe" 


-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://collab.sakaiproject.org/pipermail/sakai-dev/attachments/20110310/cf3be80b/attachment.html 


More information about the sakai-dev mailing list