[Building Sakai] Error uploading resources

Steve Swinsburg s.swinsburg at lancaster.ac.uk
Thu Apr 2 02:47:35 PDT 2009


Ok a couple of things.

1. Don't save files into any part of Tomcat, especially the webapps  
dir. Save them outside. They don't need to be in a web accessible  
place (and shouldn't be, for security and because of the way Tomcat  
works) as they are retrieved from the filesystem for you.
2. Drop the middle slash in bodyPath from between ${sakai.home} and  
content since you already have a trailing slash in your -Dsakai.home  
setting
3. The most important one, don't have your sakai.home pointing to a  
web accessible part of Tomcat either. This means your sakai.properties  
can be read by anyone.

I'd set it up like this:
-Dsakai.home=/usr/local/sakai/

In that dir have your sakai.properties and make sure it is read/write  
by the Tomcat user so files can be saved into it. It's not web  
accessible so you are safer. You can specify any dir on the filesystem  
so long as it can be read/write by Tomcat.

You'll need to shift any content into there and resolve any broken  
paths.


cheers,
Steve

---
Steve Swinsburg
Portal Systems Developer
Centre for e-Science
Lancaster University
Lancaster
LA1 4YT

email: s.swinsburg at lancaster.ac.uk
phone: +44 (0) 1524 594870







On 2 Apr 2009, at 10:38, Emiliano Jankowski wrote:

> Hi!
>
> Well I uploaded a new file and it was saved in
>
> webapp/sakai/content/vol2/2009/092/09
> file name: 56edd17a-489a-4343-8abd-216ad9b16b31
>
> So, it is working, it's saving into the file system.
>
> Also i found this in the log
>
>
> Conversion of the ContentHostingService database tables is complete.
> Using new filesize column
> ====================================================
> ====================================================
>  (2009-04-02 10:39:40,079  
> main_org.sakaiproject.content.impl.DbContentService)
> INFO: init(): site quota: 1048576 body path: xxxxxxx/webapps/sakai// 
> content/ volumes: vol1, vol2, vol3,  (2009-04-02 10:39:40,140  
> main_org.sakaiproject.con$
> INFO: convertToFile (2009-04-02 10:39:40,208  
> main_org.sakaiproject.content.impl.DbContentService)
> WARN: convertToFile: null xml : /public/Docente1/neuquen.pdf  
> (2009-04-02 10:39:40,213  
> main_org.sakaiproject.content.impl.DbContentService)
> WARN: convertToFile: null xml : /group/PortfolioAdmin/system/ 
> 2column.jpg (2009-04-02 10:39:40,213  
> main_org.sakaiproject.content.impl.DbContentService)
> WARN: convertToFile: null xml : /group/PortfolioAdmin/system/ 
> formView.xslt (2009-04-02 10:39:40,213  
> main_org.sakaiproject.content.impl.DbContentService)
>
> and continue with all the resources I had...
>
> Is it ok ? convertToFile: null xml : /public/Docente1/neuquen.pdf  
> (2009-04-02 10:39:40,213
>
>
> And i have specified the sakai.home
>
> export JAVA_OPTS='-server -Xms512m -Xmx1024m -XX:PermSize=128m - 
> XX:MaxPermSize=196m -XX:NewSize=192m -XX:MaxNewSize=384m
> -Dsakai.demo=false -Dsakai.home=/usr/local/apache-tomcat-5.5.27/ 
> webapps/sakai/'
>
> and you are right, with the "/"
>
>
> Any ideas?
>
>
> Thanks!
>
>
>
> On Thu, Apr 2, 2009 at 6:26 AM, Steve Swinsburg <s.swinsburg at lancaster.ac.uk 
> > wrote:
> Hi Emiliano,
>
> Can you navigate on the filesystem to ${sakai.home}content/ and see  
> some folders in there. If you add new resources they should show up  
> in the folder structure in there? Just want to confirm that it's not  
> storing in the DB any more.
>
> I'm not sure if you need it, but have you specified -Dsakai.home=/ 
> path/to/your/sakai.properties/ in your JAVA_OPTS? I have it set and  
> points to the directory that contains my sakai.properties file. It  
> has a trailing slash on it, so that is why I have set  
> $sakai.home}content/ with no slash in between. When resources are  
> then uploaded they live in the 'content' folder at the same level as  
> my sakai.properties.
>
> Take a look and see if the path's match up.
>
>
> cheers,
> Steve
>
> ---
> Steve Swinsburg
> Portal Systems Developer
> Centre for e-Science
> Lancaster University
> Lancaster
> LA1 4YT
>
> email: s.swinsburg at lancaster.ac.uk
> phone: +44 (0) 1524 594870
>
>
>
>
>
>
>
> On 2 Apr 2009, at 10:07, Emiliano Jankowski wrote:
>
>> Hi Steve, I've done this, but I cant' access the resources I  
>> already had :(, if i upload a new one, it works great.
>> I enabled convertToFile at org.sakaiproject.content.api.ContentHostingService 
>>  = true , but i think that it didn't convert the resources...
>> This is the error i have when i try to read some old resources..
>>
>>
>> 009-04-02 10:56:44,661 TP- 
>> Processor11_org.sakaiproject.content.impl.DbContentService)
>> WARN: : failed to read resource: /user/215083d2-ae60-4e97- 
>> bcd7-0411a7a1079f/Nivel 1_trabajo en equipo_/CONOC PERSONAL Y DES  
>> PROF _3_.ppt len: 136704 : java.io.FileNotFoundException: xxxxxxxx/ 
>> webapps/sakai/content (Is a directory) (2009-04-02 10:58:24,853 TP- 
>> Processor6_org.sakaiproject.content.impl.DbContentService)
>>
>> I've also replaced the bodyPath at org.sakaiproject.content.api.ContentHostingService 
>>  = ${sakai.home}content/ for ${sakai.home}/content/ is this ok,  
>> right?
>>
>> Any ideas?
>>
>> Best!
>>
>>
>>
>> On Wed, Apr 1, 2009 at 7:55 AM, Steve Swinsburg <s.swinsburg at lancaster.ac.uk 
>> > wrote:
>> Ok great, and yes to store on the filesystem, in sakai.properties  
>> you want these two settings enabled/configured:
>>
>> # the file system root for content hosting's external stored files  
>> (default is null, i.e. store them in the db)
>> # see the readme file (2.2.7 File Based Content Hosting) for more  
>> details
>> bodyPath at org.sakaiproject.content.api.ContentHostingService = $ 
>> {sakai.home}content/
>>
>> # when storing content hosting's body bits in files, an optional  
>> set of folders just within the bodyPath -
>> # to act as volumes to distribute the files among - a comma  
>> separate list of folders.  If left out, no volumes will be used.
>> # see the readme file (2.2.7 File Based Content Hosting) for more  
>> details
>> bodyVolumes at org.sakaiproject.content.api.ContentHostingService =  
>> vol1,vol2,vol3
>>
>>
>> and potentially this one the first time around if you want to  
>> convert from DB to filesystem when you next start up:
>>
>> #convertToFile at org.sakaiproject.content.api.ContentHostingService =  
>> true
>>
>>
>> cheers,
>> Steve
>>
>> ---
>> Steve Swinsburg
>> Portal Systems Developer
>> Centre for e-Science
>> Lancaster University
>> Lancaster
>> LA1 4YT
>>
>> email: s.swinsburg at lancaster.ac.uk
>> phone: +44 (0) 1524 594870
>>
>>
>>
>>
>>
>>
>>
>> On 1 Apr 2009, at 11:52, Emiliano Jankowski wrote:
>>
>>> Oh yes! I've checked the files and you are correct! And It is  
>>> possible to not save the documents into the database, and do that  
>>> in the file system? Is it just a config option in sakai?
>>>
>>> Thanks!!
>>>
>>>
>>> On Wed, Apr 1, 2009 at 7:48 AM, Steve Swinsburg <s.swinsburg at lancaster.ac.uk 
>>> > wrote:
>>> Hello,
>>>
>>> are you storing content in the database as opposed to the  
>>> filesystem? Is it MySQL? By default MySQL has a 1Mb limit it can  
>>> store as binary. You need to adjust the max_allowed_packet from  
>>> 1048576 (ie 1Mb) to be something higher.
>>>
>>> See here: http://steve-on-sakai.blogspot.com/2008/11/sakai-mysql-and-storing-content-in.html
>>>
>>> That, or check the memory assigned to your JVM in JAVA_OPTS (post  
>>> them here) as you are running out of resources:
>>>
>>> From the Javadoc: ServerOverloadException is thrown whenever a  
>>> request cannot be completed at this time due to some critical  
>>> resource of the server being in too short supply.
>>>
>>>
>>> cheers,
>>> Steve
>>>
>>> ---
>>> Steve Swinsburg
>>> Portal Systems Developer
>>> Centre for e-Science
>>> Lancaster University
>>> Lancaster
>>> LA1 4YT
>>>
>>> email: s.swinsburg at lancaster.ac.uk
>>> phone: +44 (0) 1524 594870
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>> On 1 Apr 2009, at 11:42, Emiliano Jankowski wrote:
>>>
>>>> Hi there! I'm having an strange error when I try to upload a  
>>>> resource in "My workspace"
>>>> I've uploaded 4 ppt, when I want to add one more I have " Alerta:  
>>>> Unable to add item: TRABAJO EN EQUIPO (2).ppt" and in  
>>>> catalina.out I have
>>>>
>>>>
>>>> WARN: failed to write file from byte-array to database  
>>>> (2009-04-01 12:35:39,762 TP- 
>>>> Processor10_org.sakaiproject.content.impl.DbContentService)
>>>> org.sakaiproject.exception.ServerOverloadException id=failed to  
>>>> write file from byte-array to database
>>>>         at org.sakaiproject.content.impl.DbContentService 
>>>> $DbStorage.commitResource(DbContentService.java:1669)
>>>>         at  
>>>> org 
>>>> .sakaiproject 
>>>> .content 
>>>> .impl 
>>>> .BaseContentService.commitResourceEdit(BaseContentService.java: 
>>>> 5450)
>>>>         at  
>>>> org 
>>>> .sakaiproject 
>>>> .content 
>>>> .impl.BaseContentService.commitResource(BaseContentService.java: 
>>>> 5413)
>>>>         at  
>>>> org 
>>>> .sakaiproject 
>>>> .content 
>>>> .cover 
>>>> .ContentHostingService.commitResource(ContentHostingService.java: 
>>>> 519)
>>>>         at  
>>>> org 
>>>> .sakaiproject 
>>>> .content 
>>>> .tool.ResourcesAction.createResources(ResourcesAction.java:1384)
>>>>         at  
>>>> org 
>>>> .sakaiproject 
>>>> .content.tool.ResourcesAction.finishAction(ResourcesAction.java: 
>>>> 7207)
>>>>         at  
>>>> org 
>>>> .sakaiproject 
>>>> .content 
>>>> .tool.ResourcesAction.buildMainPanelContext(ResourcesAction.java: 
>>>> 4762)
>>>>         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  
>>>> org 
>>>> .sakaiproject 
>>>> .cheftool 
>>>> .VelocityPortletPaneledAction 
>>>> .toolModeDispatch(VelocityPortletPaneledAction.java:392)
>>>>
>>>> What does it mean? the strange thing is that if i try to upload a  
>>>> txt file for instance, it does ok, with no error.
>>>>
>>>>
>>>> Thanks a lot!
>>>>
>>>>
>>>>
>>>>
>>>> -- 
>>>> Jankowski Emiliano
>>>> Lic. en Sistemas
>>>>
>>>> http://ejankowski.blogspot.com
>>>> http://provincianito.blogspot.com/
>>>> _______________________________________________
>>>> 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"
>>>
>>>
>>>
>>>
>>> -- 
>>> Jankowski Emiliano
>>> Lic. en Sistemas
>>>
>>> http://ejankowski.blogspot.com
>>> http://provincianito.blogspot.com/
>>
>>
>>
>>
>> -- 
>> Jankowski Emiliano
>> Lic. en Sistemas
>>
>> http://ejankowski.blogspot.com
>> http://provincianito.blogspot.com/
>
>
>
>
> -- 
> Jankowski Emiliano
> Lic. en Sistemas
>
> http://ejankowski.blogspot.com
> http://provincianito.blogspot.com/

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://collab.sakaiproject.org/pipermail/sakai-dev/attachments/20090402/70bccc78/attachment-0001.html 
-------------- next part --------------
A non-text attachment was scrubbed...
Name: smime.p7s
Type: application/pkcs7-signature
Size: 2437 bytes
Desc: not available
Url : http://collab.sakaiproject.org/pipermail/sakai-dev/attachments/20090402/70bccc78/attachment-0001.bin 


More information about the sakai-dev mailing list