UNRESOLVED
Details
Assignee
ROME Jira LeadROME Jira LeadReporter
buckettbuckettFix versions
Affects versions
Priority
Major
Details
Details
Assignee
ROME Jira Lead
ROME Jira LeadReporter
buckett
buckettFix versions
Affects versions
Priority
Created April 20, 2009 at 8:47 AM
Updated October 8, 2013 at 10:09 PM
Resolved April 20, 2009 at 11:29 AM
Currently we use an old version of rome, rome-fetcher in Sakai
(http://sakaiproject.org) and I was looking as upgrading them to the latest
version to them. Currently Sakai has complicated classloader setup. There is a
description of it here.
https://source.sakaiproject.org/svn/reference/trunk/docs/architecture/sakai_component.doc
Sakai runs ontop of tomcat and each "component" has it's own classloader that
child of the shared classloader. The API for the component goes in shared so
that both the component and any webapp can access. The component then implements
this APi. But the implementation code can't be accessed by the webapp as the
component's classloader isn't a parent of the webapps. This prevents any webapps
accessing anything in a component.
Currently there is an API for getting RSS feeds which is implemented by a
component containing rome. The problem is that when a webapp calls through to
this component the thread classloader is still set to the webapp's so it
attempts to load the master configuration file (rome.properties) from the
webapp. This fails and causes rome to stop working.
It would be useful if PropertiesLoader could use either the thread classloader
or the classloader that loaded PropertiesLoader to load the configuration.