<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
	<id>tag:old.nabble.com,2006:forum-12275</id>
	<title>Nabble - Roller</title>
	<updated>2009-11-25T01:07:56Z</updated>
	<link rel="self" type="application/atom+xml" href="http://old.nabble.com/Roller-f12275.xml" />
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Roller-f12275.html" />
	<subtitle type="html">&lt;a href=&quot;http://www.rollerweblogger.org/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;Roller&lt;/a&gt; is the open source blog server that drives Sun Microsystem's blogs.sun.com employee blogging site, the Javalobby's JRoller Java community site, and hundreds of other sites. If you want to set up a blog server for yourself or for several thousand of your closest friends, then Roller is the perfect choice.</subtitle>
	
<entry>
	<id>tag:old.nabble.com,2006:post-26509460</id>
	<title>Memcached source</title>
	<published>2009-11-25T01:07:56Z</published>
	<updated>2009-11-25T01:07:56Z</updated>
	<author>
		<name>Christopher Blasnik</name>
	</author>
	<content type="html">Hi Dave,
&lt;br&gt;&lt;br&gt;Is it possible to download the source code for the roller memcached plugin?
&lt;br&gt;&lt;br&gt;Cheers,
&lt;br&gt;- Chris
&lt;br&gt;&lt;br&gt;-- 
&lt;br&gt;Christopher Blasnik
&lt;br&gt;UCS - unique computing solutions gmbh
&lt;br&gt;Löwengasse 2/8
&lt;br&gt;A-1030 Vienna, Austria
&lt;br&gt;&lt;a href=&quot;http://www.ucs.at/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.ucs.at/&lt;/a&gt;&lt;br&gt;mailto:&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26509460&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;c.blasnik@...&lt;/a&gt;
&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Roller---Dev-f12277.html&quot; embed=&quot;fixTarget[12277]&quot; target=&quot;_top&quot; &gt;Roller - Dev&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Memcached-source-tp26509460s12275p26509460.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26500381</id>
	<title>Re: WeblogCategories II</title>
	<published>2009-11-24T09:43:47Z</published>
	<updated>2009-11-24T09:43:47Z</updated>
	<author>
		<name>Ana Pardo</name>
	</author>
	<content type="html">Thank You so much for your answer. I tried to put
&lt;br&gt;$model.weblog.getWeblogCategory(&amp;quot;/Noticias&amp;quot;) and i still get the same
&lt;br&gt;problem.
&lt;br&gt;Also i tried with:
&lt;br&gt;&lt;br&gt;- #showWeblogCategoryLinksList(&amp;quot;/Noticias&amp;quot; false true)
&lt;br&gt;- $model.weblogCategory(&amp;quot;/Noticias&amp;quot;)
&lt;br&gt;- This code from de roller template guide
&lt;br&gt;&lt;br&gt;#foreach ($cat in $model.weblog.categories)
&lt;br&gt;&lt;br&gt;#if ($cat.name != &amp;quot;Music&amp;quot;)
&lt;br&gt;&lt;br&gt;$cat.name&amp;lt;br&amp;gt;
&lt;br&gt;&lt;br&gt;#end
&lt;br&gt;&lt;br&gt;#end
&lt;br&gt;&lt;br&gt;I tried several ways using the roller- template guide. And i can't find
&lt;br&gt;something that helps. Is there a macro that just display a string that i
&lt;br&gt;tell it to. Something that works like an echo on other languajes? I just
&lt;br&gt;want to get the name of the category and display it.
&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;2009/11/23 Dave &amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26500381&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;snoopdave@...&lt;/a&gt;&amp;gt;
&lt;br&gt;&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; On Thu, Nov 19, 2009 at 11:36 AM, Ana Pardo &amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26500381&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;anampardo@...&lt;/a&gt;&amp;gt; wrote:
&lt;br&gt;&amp;gt; &amp;gt; Hello! I have a problem with customizing the way categories are
&lt;br&gt;&amp;gt; displayed. I
&lt;br&gt;&amp;gt; &amp;gt; want to list each category individually, so the only way i could think to
&lt;br&gt;&amp;gt; do
&lt;br&gt;&amp;gt; &amp;gt; this is:
&lt;br&gt;&amp;gt; &amp;gt;
&lt;br&gt;&amp;gt; &amp;gt; &amp;lt;p&amp;gt;#set($rootCategory = $model.weblog.getWeblogCategory(&amp;quot;Noticias&amp;quot;))
&lt;br&gt;&amp;gt; &amp;gt; &amp;nbsp;#showWeblogCategoryLinksList($model.weblog.getWeblogCategory(&amp;quot;Noticias&amp;quot;)
&lt;br&gt;&amp;gt; &amp;gt; false true)&amp;lt;/p&amp;gt;
&lt;br&gt;&amp;gt; &amp;gt; &amp;lt;p&amp;gt; #set($rootCategory = $model.weblog.getWeblogCategory(&amp;quot;Nuestras
&lt;br&gt;&amp;gt; Marcas&amp;quot;))
&lt;br&gt;&amp;gt; &amp;gt; #showWeblogCategoryLinksList($rootCategory false true)&amp;lt;/p&amp;gt;
&lt;br&gt;&amp;gt; &amp;gt; &amp;lt;p&amp;gt;#set($rootCategory = $model.weblog.getWeblogCategory(&amp;quot;Eventos&amp;quot;))
&lt;br&gt;&amp;gt; &amp;gt; #showWeblogCategoryLinksList($rootCategory false true)&amp;lt;/p&amp;gt;
&lt;br&gt;&amp;gt; &amp;gt;
&lt;br&gt;&amp;gt; &amp;gt; This code gives me two problems:
&lt;br&gt;&amp;gt; &amp;gt;
&lt;br&gt;&amp;gt; &amp;gt; 1) When i select any of those categories the name changes to
&lt;br&gt;&amp;gt; &amp;gt; &amp;quot;categoryObject.name&amp;quot;. I don't understand wy it doesn't shows the name of
&lt;br&gt;&amp;gt; &amp;gt; the category instead. Is there an easier way to list the category one by
&lt;br&gt;&amp;gt; &amp;gt; one? Or is there something else i have to add to my code?
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; That is probably because $model.weblog.getWeblogCategory(&amp;quot;Noticias&amp;quot;)
&lt;br&gt;&amp;gt; or some other call to getWeblogCategory() is failing and returning
&lt;br&gt;&amp;gt; null. You might need to pass &amp;quot;/Noticias&amp;quot;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;gt; 2) It appends a bullet at the beginning of the category name. I can't
&lt;br&gt;&amp;gt; find
&lt;br&gt;&amp;gt; &amp;gt; the way of deleting that, i have removed the tags &amp;lt;li&amp;gt;&amp;lt;/li&amp;gt;,&amp;lt;ul&amp;gt;&amp;lt;/ul&amp;gt;,
&lt;br&gt;&amp;gt; and
&lt;br&gt;&amp;gt; &amp;gt; any other tag asociated with list in html and it doesn't go away. Is
&lt;br&gt;&amp;gt; there a
&lt;br&gt;&amp;gt; &amp;gt; way of doing this?
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; If you use #showWeblogCategoryLinksList() then you're gonna get a list
&lt;br&gt;&amp;gt; (i.e. with &amp;lt;li&amp;gt; elements). You can use CSS styles to make those go
&lt;br&gt;&amp;gt; away.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; You don't have to use #showWeblogCategoryLinksList(), you can write
&lt;br&gt;&amp;gt; your own Velocity code to display the categories any way you'd like.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Hope that helps...
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; - Dave
&lt;br&gt;&amp;gt;
&lt;br&gt;&lt;/div&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Roller---User-f12278.html&quot; embed=&quot;fixTarget[12278]&quot; target=&quot;_top&quot; &gt;Roller - User&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/WeblogCategories-II-tp25588583s12275p26500381.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26495184</id>
	<title>Re: authenticator</title>
	<published>2009-11-24T04:40:11Z</published>
	<updated>2009-11-24T04:40:11Z</updated>
	<author>
		<name>Dave-401</name>
	</author>
	<content type="html">Add this to your roller-custom.properties file:
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp;log4j.category.org.apache.roller.weblogger.ui.rendering.plugins.comments=DEBUG
&lt;br&gt;&lt;br&gt;Then re-enable the comment authenticator and you'll get some DEBUG
&lt;br&gt;messages when it goes into action. Hopefully, we can learn something
&lt;br&gt;from that.
&lt;br&gt;&lt;br&gt;- Dave
&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;On Tue, Nov 24, 2009 at 4:01 AM, Rocco Scappatura
&lt;br&gt;&amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26495184&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;Rocco.Scappatura@...&lt;/a&gt;&amp;gt; wrote:
&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; Hello,
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; Hello I'm using roller 3.1.
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; It's a few time that the authenticator doesn't work.
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; I have temporarily disabled, but I would like to enable it because I
&lt;br&gt;&amp;gt;&amp;gt; receive a lot of spam comments.
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; How could I act to find the reason of the trouble!
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; It is since ten more days that I have post this question. I really can't
&lt;br&gt;&amp;gt; figure out why I can't use successfully the math authenticator in my
&lt;br&gt;&amp;gt; blog.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Dave, please could you give me some hint on how to discover the cause
&lt;br&gt;&amp;gt; and solve the trouble?
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Thanks,
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; rocsca
&lt;br&gt;&amp;gt;
&lt;br&gt;&lt;/div&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Roller---User-f12278.html&quot; embed=&quot;fixTarget[12278]&quot; target=&quot;_top&quot; &gt;Roller - User&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/authenticator-tp26333894s12275p26495184.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26492554</id>
	<title>RE: authenticator</title>
	<published>2009-11-24T01:01:54Z</published>
	<updated>2009-11-24T01:01:54Z</updated>
	<author>
		<name>Rocco Scappatura-3</name>
	</author>
	<content type="html">Hello,
&lt;br&gt;&lt;br&gt;&amp;gt; Hello I'm using roller 3.1.
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; It's a few time that the authenticator doesn't work.
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; I have temporarily disabled, but I would like to enable it because I
&lt;br&gt;&amp;gt; receive a lot of spam comments.
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; How could I act to find the reason of the trouble!
&lt;br&gt;&lt;br&gt;It is since ten more days that I have post this question. I really can't
&lt;br&gt;figure out why I can't use successfully the math authenticator in my
&lt;br&gt;blog.
&lt;br&gt;&lt;br&gt;Dave, please could you give me some hint on how to discover the cause
&lt;br&gt;and solve the trouble?
&lt;br&gt;&lt;br&gt;Thanks,
&lt;br&gt;&lt;br&gt;rocsca
&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Roller---User-f12278.html&quot; embed=&quot;fixTarget[12278]&quot; target=&quot;_top&quot; &gt;Roller - User&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/authenticator-tp26333894s12275p26492554.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26489058</id>
	<title>Re: unable to save drafts or publish new entries</title>
	<published>2009-11-23T17:17:14Z</published>
	<updated>2009-11-23T17:17:14Z</updated>
	<author>
		<name>Bear Giles</name>
	</author>
	<content type="html">AUGH!!!!
&lt;br&gt;&lt;br&gt;After spending much of the day creating a bloody forehead-shaped indentation
&lt;br&gt;in the wall I finally determined it was an incredibly simple problem.
&lt;br&gt;&lt;br&gt;'noscript' was blocking the javascript.
&lt;br&gt;&lt;br&gt;'noscript' didn't put up the usual warnings, and roller doesn't have any
&lt;br&gt;&amp;quot;hey, you really ought to be turning on javascript if you try to do this&amp;quot;
&lt;br&gt;messages.
&lt;br&gt;&lt;br&gt;Bear
&lt;br&gt;&lt;br&gt;On Mon, Nov 23, 2009 at 1:33 PM, Bear Giles &amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26489058&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;bgiles@...&lt;/a&gt;&amp;gt; wrote:
&lt;br&gt;&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; I dug into the database a little - there are entries in weblogentry and
&lt;br&gt;&amp;gt; they appear on the 'entries' page. &amp;nbsp;But they do not appear on the short list
&lt;br&gt;&amp;gt; of drafts and published entries on the right column and publishing the entry
&lt;br&gt;&amp;gt; has no effect. (I also can't find a 'preview entry' window but that might be
&lt;br&gt;&amp;gt; firefox acting up.)
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Bear
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; On Mon, Nov 23, 2009 at 10:31 AM, Bear Giles &amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26489058&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;bgiles@...&lt;/a&gt;&amp;gt;wrote:
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; I'm still not getting in unless I misunderstood what you mean.
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; I've set the PersistenceManager so it won't save sessions across restarts
&lt;br&gt;&amp;gt;&amp;gt; and bounced tomcat. &amp;nbsp;I get the login page but when I try
&lt;br&gt;&amp;gt;&amp;gt; saving a simple page there's no change from before.
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; Bear
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; On Mon, Nov 23, 2009 at 10:00 AM, Matt Raible &amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26489058&amp;i=2&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;matt@...&lt;/a&gt;&amp;gt;wrote:
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt; I get a permission denied error almost every day when I go into the admin
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt; UI. I believe it happens when I'm using Remember Me. Refreshing solves
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt; the
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt; problem, but it is annoying (but obviously not annoying enough for me to
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt; fix
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt; it).
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt; Matt
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt; On Mon, Nov 23, 2009 at 9:42 AM, Bear Giles &amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26489058&amp;i=3&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;bgiles@...&lt;/a&gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt; wrote:
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt; A bit more information. &amp;nbsp;If I hit the brower's URL line, not just hit
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt; the
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt; button, I get a generic &amp;quot;permissionDenied&amp;quot; warning but there are
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt; absolutely
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt; no details.
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt;
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt; On Mon, Nov 23, 2009 at 9:08 AM, Bear Giles &amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26489058&amp;i=4&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;bgiles@...&lt;/a&gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt; wrote:
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt;
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt; &amp;gt; I've created an external location for the search-index, themes and
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt; &amp;gt; uploads. &amp;nbsp;It's owned by the appserver.
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt; &amp;gt;
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt; &amp;gt; Since rebooting the appserver I can edit existing entries. &amp;nbsp;I can
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt; even
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt; &amp;gt; delete them.
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt; &amp;gt;
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt; &amp;gt; When I try to save new entries I get a 'changes saved' message and
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt; even
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt; see
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt; &amp;gt; the new buttons on the bottom, but I don't see any log entries and
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt; there's
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt; &amp;gt; no indication that the database has been updated. E.g., the content
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt; on
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt; the
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt; &amp;gt; right bar (e.g., recent drafts) hasn't changed.
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt; &amp;gt;
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt; &amp;gt; Ideas?
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt; &amp;gt;
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt; &amp;gt; Thanks,
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt; &amp;gt;
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt; &amp;gt; Bear
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt; &amp;gt;
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt;
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&lt;/div&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Roller---User-f12278.html&quot; embed=&quot;fixTarget[12278]&quot; target=&quot;_top&quot; &gt;Roller - User&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/unable-to-save-drafts-or-publish-new-entries-tp26480941s12275p26489058.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26485324</id>
	<title>Re: unable to save drafts or publish new entries</title>
	<published>2009-11-23T12:33:13Z</published>
	<updated>2009-11-23T12:33:13Z</updated>
	<author>
		<name>Bear Giles</name>
	</author>
	<content type="html">I dug into the database a little - there are entries in weblogentry and they
&lt;br&gt;appear on the 'entries' page. &amp;nbsp;But they do not appear on the short list of
&lt;br&gt;drafts and published entries on the right column and publishing the entry
&lt;br&gt;has no effect. (I also can't find a 'preview entry' window but that might be
&lt;br&gt;firefox acting up.)
&lt;br&gt;&lt;br&gt;Bear
&lt;br&gt;&lt;br&gt;&lt;br&gt;On Mon, Nov 23, 2009 at 10:31 AM, Bear Giles &amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26485324&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;bgiles@...&lt;/a&gt;&amp;gt; wrote:
&lt;br&gt;&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; I'm still not getting in unless I misunderstood what you mean.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; I've set the PersistenceManager so it won't save sessions across restarts
&lt;br&gt;&amp;gt; and bounced tomcat. &amp;nbsp;I get the login page but when I try
&lt;br&gt;&amp;gt; saving a simple page there's no change from before.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Bear
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; On Mon, Nov 23, 2009 at 10:00 AM, Matt Raible &amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26485324&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;matt@...&lt;/a&gt;&amp;gt;wrote:
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; I get a permission denied error almost every day when I go into the admin
&lt;br&gt;&amp;gt;&amp;gt; UI. I believe it happens when I'm using Remember Me. Refreshing solves the
&lt;br&gt;&amp;gt;&amp;gt; problem, but it is annoying (but obviously not annoying enough for me to
&lt;br&gt;&amp;gt;&amp;gt; fix
&lt;br&gt;&amp;gt;&amp;gt; it).
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; Matt
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; On Mon, Nov 23, 2009 at 9:42 AM, Bear Giles &amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26485324&amp;i=2&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;bgiles@...&lt;/a&gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; wrote:
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; &amp;gt; A bit more information. &amp;nbsp;If I hit the brower's URL line, not just hit
&lt;br&gt;&amp;gt;&amp;gt; the
&lt;br&gt;&amp;gt;&amp;gt; &amp;gt; button, I get a generic &amp;quot;permissionDenied&amp;quot; warning but there are
&lt;br&gt;&amp;gt;&amp;gt; absolutely
&lt;br&gt;&amp;gt;&amp;gt; &amp;gt; no details.
&lt;br&gt;&amp;gt;&amp;gt; &amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; &amp;gt; On Mon, Nov 23, 2009 at 9:08 AM, Bear Giles &amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26485324&amp;i=3&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;bgiles@...&lt;/a&gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; wrote:
&lt;br&gt;&amp;gt;&amp;gt; &amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; &amp;gt; &amp;gt; I've created an external location for the search-index, themes and
&lt;br&gt;&amp;gt;&amp;gt; &amp;gt; &amp;gt; uploads. &amp;nbsp;It's owned by the appserver.
&lt;br&gt;&amp;gt;&amp;gt; &amp;gt; &amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; &amp;gt; &amp;gt; Since rebooting the appserver I can edit existing entries. &amp;nbsp;I can even
&lt;br&gt;&amp;gt;&amp;gt; &amp;gt; &amp;gt; delete them.
&lt;br&gt;&amp;gt;&amp;gt; &amp;gt; &amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; &amp;gt; &amp;gt; When I try to save new entries I get a 'changes saved' message and
&lt;br&gt;&amp;gt;&amp;gt; even
&lt;br&gt;&amp;gt;&amp;gt; &amp;gt; see
&lt;br&gt;&amp;gt;&amp;gt; &amp;gt; &amp;gt; the new buttons on the bottom, but I don't see any log entries and
&lt;br&gt;&amp;gt;&amp;gt; &amp;gt; there's
&lt;br&gt;&amp;gt;&amp;gt; &amp;gt; &amp;gt; no indication that the database has been updated. E.g., the content on
&lt;br&gt;&amp;gt;&amp;gt; &amp;gt; the
&lt;br&gt;&amp;gt;&amp;gt; &amp;gt; &amp;gt; right bar (e.g., recent drafts) hasn't changed.
&lt;br&gt;&amp;gt;&amp;gt; &amp;gt; &amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; &amp;gt; &amp;gt; Ideas?
&lt;br&gt;&amp;gt;&amp;gt; &amp;gt; &amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; &amp;gt; &amp;gt; Thanks,
&lt;br&gt;&amp;gt;&amp;gt; &amp;gt; &amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; &amp;gt; &amp;gt; Bear
&lt;br&gt;&amp;gt;&amp;gt; &amp;gt; &amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; &amp;gt;
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&lt;/div&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Roller---User-f12278.html&quot; embed=&quot;fixTarget[12278]&quot; target=&quot;_top&quot; &gt;Roller - User&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/unable-to-save-drafts-or-publish-new-entries-tp26480941s12275p26485324.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26482906</id>
	<title>Re: Roller 5.0</title>
	<published>2009-11-23T09:51:48Z</published>
	<updated>2009-11-23T09:51:48Z</updated>
	<author>
		<name>Dave-401</name>
	</author>
	<content type="html">On Mon, Nov 23, 2009 at 12:20 PM, Gregor Schneider
&lt;br&gt;&amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26482906&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;rc46fi@...&lt;/a&gt;&amp;gt; wrote:
&lt;br&gt;&amp;gt; where else to ask my question? I'm not asking for a public beta but
&lt;br&gt;&amp;gt; for a new release, and the reason is that I'm up to setting up a new
&lt;br&gt;&amp;gt; blog-site.
&lt;br&gt;&lt;br&gt;You are asking questions in the right place. I'm was pointing out that
&lt;br&gt;we don't really have a fixed release schedule. Even when we are ready
&lt;br&gt;to make a release, voting out a final release candidate can take
&lt;br&gt;weeks.
&lt;br&gt;&lt;br&gt;If I had to guess when we'll have final 5.0 release, I'd say February.
&lt;br&gt;&lt;br&gt;&lt;br&gt;&amp;gt; Since Roller might be one of the candidates - but def. not Roller 4 -
&lt;br&gt;&amp;gt; and I've got a schedule to keep up with, I'd be more happy if some
&lt;br&gt;&amp;gt; bird could tweet me something about a releaseplan...
&lt;br&gt;&lt;br&gt;If you have a tight schedule then you'll probably want to go with
&lt;br&gt;4.0.1. If you really want one of the new features in 5.0, then you
&lt;br&gt;might want to wait -- or better yet, test, report and help fix the
&lt;br&gt;problems you find.
&lt;br&gt;&lt;br&gt;&amp;gt; And sorry again for asking this question here, but if you don't like
&lt;br&gt;&amp;gt; that, you might want to consider not to mention any planned
&lt;br&gt;&amp;gt; release-dates (&amp;quot;fall 2009&amp;quot;) on your website...
&lt;br&gt;&lt;br&gt;No need to apologize. That is a good point. &amp;nbsp;I should point out our
&lt;br&gt;fluid release schedule whenever I mention dates.
&lt;br&gt;&lt;br&gt;- Dave
&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Roller---User-f12278.html&quot; embed=&quot;fixTarget[12278]&quot; target=&quot;_top&quot; &gt;Roller - User&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Roller-5.0-tp26481760s12275p26482906.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26482570</id>
	<title>Re: unable to save drafts or publish new entries</title>
	<published>2009-11-23T09:31:14Z</published>
	<updated>2009-11-23T09:31:14Z</updated>
	<author>
		<name>Bear Giles</name>
	</author>
	<content type="html">I'm still not getting in unless I misunderstood what you mean.
&lt;br&gt;&lt;br&gt;I've set the PersistenceManager so it won't save sessions across restarts
&lt;br&gt;and bounced tomcat. &amp;nbsp;I get the login page but when I try
&lt;br&gt;saving a simple page there's no change from before.
&lt;br&gt;&lt;br&gt;Bear
&lt;br&gt;&lt;br&gt;&lt;br&gt;On Mon, Nov 23, 2009 at 10:00 AM, Matt Raible &amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26482570&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;matt@...&lt;/a&gt;&amp;gt;wrote:
&lt;br&gt;&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; I get a permission denied error almost every day when I go into the admin
&lt;br&gt;&amp;gt; UI. I believe it happens when I'm using Remember Me. Refreshing solves the
&lt;br&gt;&amp;gt; problem, but it is annoying (but obviously not annoying enough for me to
&lt;br&gt;&amp;gt; fix
&lt;br&gt;&amp;gt; it).
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Matt
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; On Mon, Nov 23, 2009 at 9:42 AM, Bear Giles &amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26482570&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;bgiles@...&lt;/a&gt;&amp;gt; wrote:
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;gt; A bit more information. &amp;nbsp;If I hit the brower's URL line, not just hit the
&lt;br&gt;&amp;gt; &amp;gt; button, I get a generic &amp;quot;permissionDenied&amp;quot; warning but there are
&lt;br&gt;&amp;gt; absolutely
&lt;br&gt;&amp;gt; &amp;gt; no details.
&lt;br&gt;&amp;gt; &amp;gt;
&lt;br&gt;&amp;gt; &amp;gt; On Mon, Nov 23, 2009 at 9:08 AM, Bear Giles &amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26482570&amp;i=2&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;bgiles@...&lt;/a&gt;&amp;gt;
&lt;br&gt;&amp;gt; wrote:
&lt;br&gt;&amp;gt; &amp;gt;
&lt;br&gt;&amp;gt; &amp;gt; &amp;gt; I've created an external location for the search-index, themes and
&lt;br&gt;&amp;gt; &amp;gt; &amp;gt; uploads. &amp;nbsp;It's owned by the appserver.
&lt;br&gt;&amp;gt; &amp;gt; &amp;gt;
&lt;br&gt;&amp;gt; &amp;gt; &amp;gt; Since rebooting the appserver I can edit existing entries. &amp;nbsp;I can even
&lt;br&gt;&amp;gt; &amp;gt; &amp;gt; delete them.
&lt;br&gt;&amp;gt; &amp;gt; &amp;gt;
&lt;br&gt;&amp;gt; &amp;gt; &amp;gt; When I try to save new entries I get a 'changes saved' message and even
&lt;br&gt;&amp;gt; &amp;gt; see
&lt;br&gt;&amp;gt; &amp;gt; &amp;gt; the new buttons on the bottom, but I don't see any log entries and
&lt;br&gt;&amp;gt; &amp;gt; there's
&lt;br&gt;&amp;gt; &amp;gt; &amp;gt; no indication that the database has been updated. E.g., the content on
&lt;br&gt;&amp;gt; &amp;gt; the
&lt;br&gt;&amp;gt; &amp;gt; &amp;gt; right bar (e.g., recent drafts) hasn't changed.
&lt;br&gt;&amp;gt; &amp;gt; &amp;gt;
&lt;br&gt;&amp;gt; &amp;gt; &amp;gt; Ideas?
&lt;br&gt;&amp;gt; &amp;gt; &amp;gt;
&lt;br&gt;&amp;gt; &amp;gt; &amp;gt; Thanks,
&lt;br&gt;&amp;gt; &amp;gt; &amp;gt;
&lt;br&gt;&amp;gt; &amp;gt; &amp;gt; Bear
&lt;br&gt;&amp;gt; &amp;gt; &amp;gt;
&lt;br&gt;&amp;gt; &amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&lt;/div&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Roller---User-f12278.html&quot; embed=&quot;fixTarget[12278]&quot; target=&quot;_top&quot; &gt;Roller - User&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/unable-to-save-drafts-or-publish-new-entries-tp26480941s12275p26482570.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26482336</id>
	<title>Re: Roller 5.0</title>
	<published>2009-11-23T09:20:24Z</published>
	<updated>2009-11-23T09:20:24Z</updated>
	<author>
		<name>Gregor Schneider</name>
	</author>
	<content type="html">-----BEGIN PGP SIGNED MESSAGE-----
&lt;br&gt;Hash: SHA1
&lt;br&gt;&lt;br&gt;Dave,
&lt;br&gt;&lt;br&gt;where else to ask my question? I'm not asking for a public beta but
&lt;br&gt;for a new release, and the reason is that I'm up to setting up a new
&lt;br&gt;blog-site.
&lt;br&gt;&lt;br&gt;Since Roller might be one of the candidates - but def. not Roller 4 -
&lt;br&gt;and I've got a schedule to keep up with, I'd be more happy if some
&lt;br&gt;bird could tweet me something about a releaseplan...
&lt;br&gt;&lt;br&gt;And sorry again for asking this question here, but if you don't like
&lt;br&gt;that, you might want to consider not to mention any planned
&lt;br&gt;release-dates (&amp;quot;fall 2009&amp;quot;) on your website...
&lt;br&gt;&lt;br&gt;Cheers
&lt;br&gt;&lt;br&gt;Gregor
&lt;br&gt;- --
&lt;br&gt;just because your paranoid, doesn't mean they're not after you...
&lt;br&gt;gpgp-fp: 79A84FA526807026795E4209D3B3FE028B3170B2
&lt;br&gt;gpgp-key available
&lt;br&gt;@ &lt;a href=&quot;http://pgpkeys.pca.dfn.de:11371&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://pgpkeys.pca.dfn.de:11371&lt;/a&gt;&lt;br&gt;@ &lt;a href=&quot;http://pgp.mit.edu:11371/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://pgp.mit.edu:11371/&lt;/a&gt;&lt;br&gt;skype:rc46fi
&lt;br&gt;&lt;br&gt;&lt;br&gt;-----BEGIN PGP SIGNATURE-----
&lt;br&gt;Version: GnuPG v1.4.6 (MingW32)
&lt;br&gt;Comment: Use GnuPG with Firefox : &lt;a href=&quot;http://getfiregpg.org&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://getfiregpg.org&lt;/a&gt;&amp;nbsp;(Version: 0.7.10)
&lt;br&gt;&lt;br&gt;iD8DBQFLCsRa07P+AosxcLIRAk8OAJ0Z5Hb+QbY/1FVOBKZiBaoz/q1IZQCfVUry
&lt;br&gt;/tczcVzUjouAb39z0F+szF0=
&lt;br&gt;=7lFU
&lt;br&gt;-----END PGP SIGNATURE-----
&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Roller---User-f12278.html&quot; embed=&quot;fixTarget[12278]&quot; target=&quot;_top&quot; &gt;Roller - User&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Roller-5.0-tp26481760s12275p26482336.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26482078</id>
	<title>Re: Roller 5.0</title>
	<published>2009-11-23T09:04:17Z</published>
	<updated>2009-11-23T09:04:17Z</updated>
	<author>
		<name>Dave-401</name>
	</author>
	<content type="html">On Mon, Nov 23, 2009 at 11:46 AM, Gregor Schneider
&lt;br&gt;&amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26482078&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;rc46fi@...&lt;/a&gt;&amp;gt; wrote:
&lt;br&gt;&amp;gt; on the Roller website is mentioned that Roller 5.0 will be due in
&lt;br&gt;&amp;gt; &amp;quot;fall 2009&amp;quot;, Since fall is almost over, can anybody shed some light on
&lt;br&gt;&amp;gt; the release-date?
&lt;br&gt;&lt;br&gt;We don't really do release dates around here, so please consider
&lt;br&gt;statements like that to be ball-park guesstimates.
&lt;br&gt;&lt;br&gt;Having said that, there is a Roller 5.0 beta 1 build* out now:
&lt;br&gt;&amp;nbsp; &amp;nbsp; &lt;a href=&quot;http://markmail.org/message/rwk6pj4voxbyuaj3&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://markmail.org/message/rwk6pj4voxbyuaj3&lt;/a&gt;&lt;br&gt;&lt;br&gt;Please direct questions here to the list and bug reports to JIRA.
&lt;br&gt;&lt;br&gt;Thanks,
&lt;br&gt;- Dave
&lt;br&gt;&lt;br&gt;* this is a &amp;quot;build&amp;quot; and NOT an official Release, it's intended for
&lt;br&gt;testing purposes only, etc.
&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; TIA
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Gregor
&lt;br&gt;&amp;gt; - --
&lt;br&gt;&amp;gt; just because your paranoid, doesn't mean they're not after you...
&lt;br&gt;&amp;gt; gpgp-fp: 79A84FA526807026795E4209D3B3FE028B3170B2
&lt;br&gt;&amp;gt; gpgp-key available
&lt;br&gt;&amp;gt; @ &lt;a href=&quot;http://pgpkeys.pca.dfn.de:11371&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://pgpkeys.pca.dfn.de:11371&lt;/a&gt;&lt;br&gt;&amp;gt; @ &lt;a href=&quot;http://pgp.mit.edu:11371/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://pgp.mit.edu:11371/&lt;/a&gt;&lt;br&gt;&amp;gt; skype:rc46fi
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; -----BEGIN PGP SIGNATURE-----
&lt;br&gt;&amp;gt; Version: GnuPG v1.4.6 (MingW32)
&lt;br&gt;&amp;gt; Comment: Use GnuPG with Firefox : &lt;a href=&quot;http://getfiregpg.org&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://getfiregpg.org&lt;/a&gt;&amp;nbsp;(Version: 0.7.10)
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; iD8DBQFLCrxj07P+AosxcLIRApOXAJ4oxX6Ht1VhdbiX9HOgBRa9OQH4kQCgm52O
&lt;br&gt;&amp;gt; XFw62RS1rwzmgZRAKEICsw4=
&lt;br&gt;&amp;gt; =CR9b
&lt;br&gt;&amp;gt; -----END PGP SIGNATURE-----
&lt;br&gt;&amp;gt;
&lt;br&gt;&lt;/div&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Roller---User-f12278.html&quot; embed=&quot;fixTarget[12278]&quot; target=&quot;_top&quot; &gt;Roller - User&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Roller-5.0-tp26481760s12275p26482078.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26482155</id>
	<title>Re: unable to save drafts or publish new entries</title>
	<published>2009-11-23T09:00:48Z</published>
	<updated>2009-11-23T09:00:48Z</updated>
	<author>
		<name>mraible</name>
	</author>
	<content type="html">I get a permission denied error almost every day when I go into the admin
&lt;br&gt;UI. I believe it happens when I'm using Remember Me. Refreshing solves the
&lt;br&gt;problem, but it is annoying (but obviously not annoying enough for me to fix
&lt;br&gt;it).
&lt;br&gt;&lt;br&gt;Matt
&lt;br&gt;&lt;br&gt;On Mon, Nov 23, 2009 at 9:42 AM, Bear Giles &amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26482155&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;bgiles@...&lt;/a&gt;&amp;gt; wrote:
&lt;br&gt;&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; A bit more information. &amp;nbsp;If I hit the brower's URL line, not just hit the
&lt;br&gt;&amp;gt; button, I get a generic &amp;quot;permissionDenied&amp;quot; warning but there are absolutely
&lt;br&gt;&amp;gt; no details.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; On Mon, Nov 23, 2009 at 9:08 AM, Bear Giles &amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26482155&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;bgiles@...&lt;/a&gt;&amp;gt; wrote:
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;gt; I've created an external location for the search-index, themes and
&lt;br&gt;&amp;gt; &amp;gt; uploads. &amp;nbsp;It's owned by the appserver.
&lt;br&gt;&amp;gt; &amp;gt;
&lt;br&gt;&amp;gt; &amp;gt; Since rebooting the appserver I can edit existing entries. &amp;nbsp;I can even
&lt;br&gt;&amp;gt; &amp;gt; delete them.
&lt;br&gt;&amp;gt; &amp;gt;
&lt;br&gt;&amp;gt; &amp;gt; When I try to save new entries I get a 'changes saved' message and even
&lt;br&gt;&amp;gt; see
&lt;br&gt;&amp;gt; &amp;gt; the new buttons on the bottom, but I don't see any log entries and
&lt;br&gt;&amp;gt; there's
&lt;br&gt;&amp;gt; &amp;gt; no indication that the database has been updated. E.g., the content on
&lt;br&gt;&amp;gt; the
&lt;br&gt;&amp;gt; &amp;gt; right bar (e.g., recent drafts) hasn't changed.
&lt;br&gt;&amp;gt; &amp;gt;
&lt;br&gt;&amp;gt; &amp;gt; Ideas?
&lt;br&gt;&amp;gt; &amp;gt;
&lt;br&gt;&amp;gt; &amp;gt; Thanks,
&lt;br&gt;&amp;gt; &amp;gt;
&lt;br&gt;&amp;gt; &amp;gt; Bear
&lt;br&gt;&amp;gt; &amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&lt;/div&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Roller---User-f12278.html&quot; embed=&quot;fixTarget[12278]&quot; target=&quot;_top&quot; &gt;Roller - User&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/unable-to-save-drafts-or-publish-new-entries-tp26480941s12275p26482155.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26481760</id>
	<title>Roller 5.0</title>
	<published>2009-11-23T08:46:25Z</published>
	<updated>2009-11-23T08:46:25Z</updated>
	<author>
		<name>Gregor Schneider</name>
	</author>
	<content type="html">-----BEGIN PGP SIGNED MESSAGE-----
&lt;br&gt;Hash: SHA1
&lt;br&gt;&lt;br&gt;Hi there,
&lt;br&gt;&lt;br&gt;on the Roller website is mentioned that Roller 5.0 will be due in
&lt;br&gt;&amp;quot;fall 2009&amp;quot;, Since fall is almost over, can anybody shed some light on
&lt;br&gt;the release-date?
&lt;br&gt;&lt;br&gt;TIA
&lt;br&gt;&lt;br&gt;Gregor
&lt;br&gt;- --
&lt;br&gt;just because your paranoid, doesn't mean they're not after you...
&lt;br&gt;gpgp-fp: 79A84FA526807026795E4209D3B3FE028B3170B2
&lt;br&gt;gpgp-key available
&lt;br&gt;@ &lt;a href=&quot;http://pgpkeys.pca.dfn.de:11371&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://pgpkeys.pca.dfn.de:11371&lt;/a&gt;&lt;br&gt;@ &lt;a href=&quot;http://pgp.mit.edu:11371/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://pgp.mit.edu:11371/&lt;/a&gt;&lt;br&gt;skype:rc46fi
&lt;br&gt;&lt;br&gt;&lt;br&gt;-----BEGIN PGP SIGNATURE-----
&lt;br&gt;Version: GnuPG v1.4.6 (MingW32)
&lt;br&gt;Comment: Use GnuPG with Firefox : &lt;a href=&quot;http://getfiregpg.org&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://getfiregpg.org&lt;/a&gt;&amp;nbsp;(Version: 0.7.10)
&lt;br&gt;&lt;br&gt;iD8DBQFLCrxj07P+AosxcLIRApOXAJ4oxX6Ht1VhdbiX9HOgBRa9OQH4kQCgm52O
&lt;br&gt;XFw62RS1rwzmgZRAKEICsw4=
&lt;br&gt;=CR9b
&lt;br&gt;-----END PGP SIGNATURE-----
&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Roller---User-f12278.html&quot; embed=&quot;fixTarget[12278]&quot; target=&quot;_top&quot; &gt;Roller - User&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Roller-5.0-tp26481760s12275p26481760.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26481677</id>
	<title>Re: unable to save drafts or publish new entries</title>
	<published>2009-11-23T08:42:43Z</published>
	<updated>2009-11-23T08:42:43Z</updated>
	<author>
		<name>Bear Giles</name>
	</author>
	<content type="html">A bit more information. &amp;nbsp;If I hit the brower's URL line, not just hit the
&lt;br&gt;button, I get a generic &amp;quot;permissionDenied&amp;quot; warning but there are absolutely
&lt;br&gt;no details.
&lt;br&gt;&lt;br&gt;On Mon, Nov 23, 2009 at 9:08 AM, Bear Giles &amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26481677&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;bgiles@...&lt;/a&gt;&amp;gt; wrote:
&lt;br&gt;&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; I've created an external location for the search-index, themes and
&lt;br&gt;&amp;gt; uploads. &amp;nbsp;It's owned by the appserver.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Since rebooting the appserver I can edit existing entries. &amp;nbsp;I can even
&lt;br&gt;&amp;gt; delete them.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; When I try to save new entries I get a 'changes saved' message and even see
&lt;br&gt;&amp;gt; the new buttons on the bottom, but I don't see any log entries and there's
&lt;br&gt;&amp;gt; no indication that the database has been updated. E.g., the content on the
&lt;br&gt;&amp;gt; right bar (e.g., recent drafts) hasn't changed.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Ideas?
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Thanks,
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Bear
&lt;br&gt;&amp;gt;
&lt;br&gt;&lt;/div&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Roller---User-f12278.html&quot; embed=&quot;fixTarget[12278]&quot; target=&quot;_top&quot; &gt;Roller - User&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/unable-to-save-drafts-or-publish-new-entries-tp26480941s12275p26481677.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26480941</id>
	<title>unable to save drafts or publish new entries</title>
	<published>2009-11-23T08:08:33Z</published>
	<updated>2009-11-23T08:08:33Z</updated>
	<author>
		<name>Bear Giles</name>
	</author>
	<content type="html">I've created an external location for the search-index, themes and uploads.
&lt;br&gt;It's owned by the appserver.
&lt;br&gt;&lt;br&gt;Since rebooting the appserver I can edit existing entries. &amp;nbsp;I can even
&lt;br&gt;delete them.
&lt;br&gt;&lt;br&gt;When I try to save new entries I get a 'changes saved' message and even see
&lt;br&gt;the new buttons on the bottom, but I don't see any log entries and there's
&lt;br&gt;no indication that the database has been updated. E.g., the content on the
&lt;br&gt;right bar (e.g., recent drafts) hasn't changed.
&lt;br&gt;&lt;br&gt;Ideas?
&lt;br&gt;&lt;br&gt;Thanks,
&lt;br&gt;&lt;br&gt;Bear
&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Roller---User-f12278.html&quot; embed=&quot;fixTarget[12278]&quot; target=&quot;_top&quot; &gt;Roller - User&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/unable-to-save-drafts-or-publish-new-entries-tp26480941s12275p26480941.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26479428</id>
	<title>Re: trunk error - missing &quot;&gt;&quot;</title>
	<published>2009-11-23T06:50:31Z</published>
	<updated>2009-11-23T06:50:31Z</updated>
	<author>
		<name>Dave-401</name>
	</author>
	<content type="html">Done! Thanks. - Dave
&lt;br&gt;&lt;br&gt;&lt;br&gt;On Sun, Nov 22, 2009 at 8:53 PM, Laszlo Csaba Lorincz
&lt;br&gt;&amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26479428&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;laszlo.cs.lorincz@...&lt;/a&gt;&amp;gt; wrote:
&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; Hi!
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; I have found an error in the trunk:
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Path roller/trunk/apps/weblogger/web/WEB-INF/jsps/editor/MediaFileView.jsp
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; line 464:                    &amp;lt;/li
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Could someone with commit rights fix it?
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Thank You!
&lt;br&gt;&amp;gt; Laszlo
&lt;br&gt;&amp;gt;
&lt;br&gt;&lt;/div&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Roller---Dev-f12277.html&quot; embed=&quot;fixTarget[12277]&quot; target=&quot;_top&quot; &gt;Roller - Dev&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/trunk-error---missing-%22%3E%22-tp26472386s12275p26479428.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26477788</id>
	<title>Re: WeblogCategories II</title>
	<published>2009-11-23T05:11:23Z</published>
	<updated>2009-11-23T05:11:23Z</updated>
	<author>
		<name>Dave-401</name>
	</author>
	<content type="html">On Thu, Nov 19, 2009 at 11:36 AM, Ana Pardo &amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26477788&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;anampardo@...&lt;/a&gt;&amp;gt; wrote:
&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; Hello! I have a problem with customizing the way categories are displayed. I
&lt;br&gt;&amp;gt; want to list each category individually, so the only way i could think to do
&lt;br&gt;&amp;gt; this is:
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;lt;p&amp;gt;#set($rootCategory = $model.weblog.getWeblogCategory(&amp;quot;Noticias&amp;quot;))
&lt;br&gt;&amp;gt;  #showWeblogCategoryLinksList($model.weblog.getWeblogCategory(&amp;quot;Noticias&amp;quot;)
&lt;br&gt;&amp;gt; false true)&amp;lt;/p&amp;gt;
&lt;br&gt;&amp;gt; &amp;lt;p&amp;gt; #set($rootCategory = $model.weblog.getWeblogCategory(&amp;quot;Nuestras Marcas&amp;quot;))
&lt;br&gt;&amp;gt; #showWeblogCategoryLinksList($rootCategory false true)&amp;lt;/p&amp;gt;
&lt;br&gt;&amp;gt; &amp;lt;p&amp;gt;#set($rootCategory = $model.weblog.getWeblogCategory(&amp;quot;Eventos&amp;quot;))
&lt;br&gt;&amp;gt; #showWeblogCategoryLinksList($rootCategory false true)&amp;lt;/p&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; This code gives me two problems:
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; 1) When i select any of those categories the name changes to
&lt;br&gt;&amp;gt; &amp;quot;categoryObject.name&amp;quot;. I don't understand wy it doesn't shows the name of
&lt;br&gt;&amp;gt; the category instead. Is there an easier way to list the category one by
&lt;br&gt;&amp;gt; one? Or is there something else i have to add to my code?
&lt;/div&gt;&lt;br&gt;That is probably because $model.weblog.getWeblogCategory(&amp;quot;Noticias&amp;quot;)
&lt;br&gt;or some other call to getWeblogCategory() is failing and returning
&lt;br&gt;null. You might need to pass &amp;quot;/Noticias&amp;quot;
&lt;br&gt;&lt;br&gt;&lt;br&gt;&amp;gt; 2) It appends a bullet at the beginning of the category name. I can't find
&lt;br&gt;&amp;gt; the way of deleting that, i have removed the tags &amp;lt;li&amp;gt;&amp;lt;/li&amp;gt;,&amp;lt;ul&amp;gt;&amp;lt;/ul&amp;gt;, and
&lt;br&gt;&amp;gt; any other tag asociated with list in html and it doesn't go away. Is there a
&lt;br&gt;&amp;gt; way of doing this?
&lt;br&gt;&lt;br&gt;If you use #showWeblogCategoryLinksList() then you're gonna get a list
&lt;br&gt;(i.e. with &amp;lt;li&amp;gt; elements). You can use CSS styles to make those go
&lt;br&gt;away.
&lt;br&gt;&lt;br&gt;You don't have to use #showWeblogCategoryLinksList(), you can write
&lt;br&gt;your own Velocity code to display the categories any way you'd like.
&lt;br&gt;&lt;br&gt;Hope that helps...
&lt;br&gt;&lt;br&gt;- Dave
&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Roller---User-f12278.html&quot; embed=&quot;fixTarget[12278]&quot; target=&quot;_top&quot; &gt;Roller - User&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/WeblogCategories-II-tp25588583s12275p26477788.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26472386</id>
	<title>trunk error - missing &quot;&gt;&quot;</title>
	<published>2009-11-22T17:53:25Z</published>
	<updated>2009-11-22T17:53:25Z</updated>
	<author>
		<name>Laszlo Csaba Lorincz</name>
	</author>
	<content type="html">Hi!
&lt;br&gt;&lt;br&gt;I have found an error in the trunk:
&lt;br&gt;&lt;br&gt;Path roller/trunk/apps/weblogger/web/WEB-INF/jsps/editor/MediaFileView.jsp
&lt;br&gt;&lt;br&gt;line 464: &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;lt;/li
&lt;br&gt;&lt;br&gt;Could someone with commit rights fix it?
&lt;br&gt;&lt;br&gt;Thank You!
&lt;br&gt;Laszlo
&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Roller---Dev-f12277.html&quot; embed=&quot;fixTarget[12277]&quot; target=&quot;_top&quot; &gt;Roller - Dev&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/trunk-error---missing-%22%3E%22-tp26472386s12275p26472386.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26450166</id>
	<title>Re: migration from wordpress mu to Roller.</title>
	<published>2009-11-20T10:24:35Z</published>
	<updated>2009-11-20T10:24:35Z</updated>
	<author>
		<name>Angel Vera-2</name>
	</author>
	<content type="html">(resending.. not sure if it got send, since I just my gmail account to
&lt;br&gt;reply, if you received this message twice, my apologies)
&lt;br&gt;Hi Rajiv,
&lt;br&gt;&lt;br&gt;I created a migration framework that you can use, you will need to do some
&lt;br&gt;java coding to create the logic to to connect your wordpress database and
&lt;br&gt;then to do the mapping of the fields. If you have any question you can look
&lt;br&gt;at the sample that I did for migration from Blosom to Roller. I hope that
&lt;br&gt;helps.
&lt;br&gt;&lt;br&gt;Here is a thread discussing, what you would have to do, but if you need more
&lt;br&gt;information let me know:
&lt;br&gt;&lt;a href=&quot;http://www.mail-archive.com/dev@roller.apache.org/msg01053.html&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.mail-archive.com/dev@.../msg01053.html&lt;/a&gt;&lt;br&gt;&lt;br&gt;To download the migration tool, I would recomend using eclipse and
&lt;br&gt;extracting from CVS this project:
&lt;br&gt;(you can find the instructions on how to get the source out from that same
&lt;br&gt;thread above)
&lt;br&gt;&lt;a href=&quot;https://roller.dev.java.net/source/browse/roller/roller_support/tools/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;https://roller.dev.java.net/source/browse/roller/roller_support/tools/&lt;/a&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;On Fri, Nov 20, 2009 at 8:34 AM, Angel Vera &amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26450166&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;gunfus@...&lt;/a&gt;&amp;gt; wrote:
&lt;br&gt;&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; Hi Rajiv,
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; I created a migration framework that you can use, you will need to do some
&lt;br&gt;&amp;gt; java coding to create the logic to to connect your wordpress database and
&lt;br&gt;&amp;gt; then to do the mapping of the fields. If you have any question you can look
&lt;br&gt;&amp;gt; at the sample that I did for migration from Blosom to Roller. I hope that
&lt;br&gt;&amp;gt; helps.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Here is a thread discussing, what you would have to do, but if you need
&lt;br&gt;&amp;gt; more information let me know:
&lt;br&gt;&amp;gt; &lt;a href=&quot;http://www.mail-archive.com/dev@roller.apache.org/msg01053.html&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.mail-archive.com/dev@.../msg01053.html&lt;/a&gt;&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; To download the migration tool, I would recomend using eclipse and
&lt;br&gt;&amp;gt; extracting from CVS this project:
&lt;br&gt;&amp;gt; (you can find the instructions on how to get the source out from that same
&lt;br&gt;&amp;gt; thread above)
&lt;br&gt;&amp;gt; &lt;a href=&quot;https://roller.dev.java.net/source/browse/roller/roller_support/tools/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;https://roller.dev.java.net/source/browse/roller/roller_support/tools/&lt;/a&gt;&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Angel
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; On Thu, Nov 19, 2009 at 1:30 PM, Rajiv Mordani &amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26450166&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;rajiv.mordani@...&lt;/a&gt;&amp;gt;wrote:
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; Hi,
&lt;br&gt;&amp;gt;&amp;gt; &amp;nbsp; I thought I should check with this alias before I embark on doing this
&lt;br&gt;&amp;gt;&amp;gt; myself - has anyone done a migration of blogs from wordpress mu (multi user)
&lt;br&gt;&amp;gt;&amp;gt; to Roller? Is there any script available to do that?
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; Thanks
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; - Rajiv
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&lt;/div&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Roller---Dev-f12277.html&quot; embed=&quot;fixTarget[12277]&quot; target=&quot;_top&quot; &gt;Roller - Dev&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/migration-from-wordpress-mu-to-Roller.-tp26431548s12275p26450166.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26443697</id>
	<title>Re: migration from wordpress mu to Roller.</title>
	<published>2009-11-20T05:34:36Z</published>
	<updated>2009-11-20T05:34:36Z</updated>
	<author>
		<name>Angel Vera-3</name>
	</author>
	<content type="html">Hi Rajiv,
&lt;br&gt;&lt;br&gt;I created a migration framework that you can use, you will need to do some
&lt;br&gt;java coding to create the logic to to connect your wordpress database and
&lt;br&gt;then to do the mapping of the fields. If you have any question you can look
&lt;br&gt;at the sample that I did for migration from Blosom to Roller. I hope that
&lt;br&gt;helps.
&lt;br&gt;&lt;br&gt;Here is a thread discussing, what you would have to do, but if you need more
&lt;br&gt;information let me know:
&lt;br&gt;&lt;a href=&quot;http://www.mail-archive.com/dev@roller.apache.org/msg01053.html&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.mail-archive.com/dev@.../msg01053.html&lt;/a&gt;&lt;br&gt;&lt;br&gt;To download the migration tool, I would recomend using eclipse and
&lt;br&gt;extracting from CVS this project:
&lt;br&gt;(you can find the instructions on how to get the source out from that same
&lt;br&gt;thread above)
&lt;br&gt;&lt;a href=&quot;https://roller.dev.java.net/source/browse/roller/roller_support/tools/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;https://roller.dev.java.net/source/browse/roller/roller_support/tools/&lt;/a&gt;&lt;br&gt;&lt;br&gt;Angel
&lt;br&gt;&lt;br&gt;On Thu, Nov 19, 2009 at 1:30 PM, Rajiv Mordani &amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26443697&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;rajiv.mordani@...&lt;/a&gt;&amp;gt;wrote:
&lt;br&gt;&lt;br&gt;&amp;gt; Hi,
&lt;br&gt;&amp;gt; &amp;nbsp; I thought I should check with this alias before I embark on doing this
&lt;br&gt;&amp;gt; myself - has anyone done a migration of blogs from wordpress mu (multi user)
&lt;br&gt;&amp;gt; to Roller? Is there any script available to do that?
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Thanks
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; - Rajiv
&lt;br&gt;&amp;gt;
&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Roller---Dev-f12277.html&quot; embed=&quot;fixTarget[12277]&quot; target=&quot;_top&quot; &gt;Roller - Dev&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/migration-from-wordpress-mu-to-Roller.-tp26431548s12275p26443697.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26439047</id>
	<title>Re: changed webapp, now get 'server not bootstrapped' error</title>
	<published>2009-11-19T22:44:55Z</published>
	<updated>2009-11-19T22:44:55Z</updated>
	<author>
		<name>Horatia</name>
	</author>
	<content type="html">&lt;br&gt;1. no database connection
&lt;br&gt;2. tomcat has not the ownership of all files
&lt;br&gt;&lt;br&gt;Horatia
&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Roller---User-f12278.html&quot; embed=&quot;fixTarget[12278]&quot; target=&quot;_top&quot; &gt;Roller - User&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/changed-webapp%2C-now-get-%27server-not-bootstrapped%27-error-tp26438157s12275p26439047.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26438157</id>
	<title>changed webapp, now get 'server not bootstrapped' error</title>
	<published>2009-11-19T20:14:33Z</published>
	<updated>2009-11-19T20:14:33Z</updated>
	<author>
		<name>Bear Giles</name>
	</author>
	<content type="html">We're upgrading our server and our copy of roller has been moved from jetty
&lt;br&gt;to the tomcat server.
&lt;br&gt;&lt;br&gt;The app is starting but I get &amp;quot; javax.servlet.ServletException:
&lt;br&gt;java.lang.IllegalStateException: Roller Weblogger has not been bootstrapped
&lt;br&gt;yet&amp;quot;. &amp;nbsp;I've double-checked that I've copied over the necessary files and set
&lt;br&gt;up JNDI properly to point to the existing database.
&lt;br&gt;&lt;br&gt;Ideas?
&lt;br&gt;&lt;br&gt;Thanks,
&lt;br&gt;&lt;br&gt;Bear
&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Roller---User-f12278.html&quot; embed=&quot;fixTarget[12278]&quot; target=&quot;_top&quot; &gt;Roller - User&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/changed-webapp%2C-now-get-%27server-not-bootstrapped%27-error-tp26438157s12275p26438157.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26435364</id>
	<title>Re: Links always going to &quot;localhost&quot;</title>
	<published>2009-11-19T14:36:54Z</published>
	<updated>2009-11-19T14:36:54Z</updated>
	<author>
		<name>John Pritchard-Williams-3</name>
	</author>
	<content type="html">Hi Vishwajit,
&lt;br&gt;&lt;br&gt;This might be your Tomcat configuration - check the
&lt;br&gt;&amp;lt;tomcat&amp;gt;\conf\server.xml file and see whether the virtual host is set
&lt;br&gt;to 'localhost'.
&lt;br&gt;&lt;br&gt;Here's an example with host set to 'myhost':
&lt;br&gt;&lt;br&gt;&amp;nbsp;&amp;lt;Host name=&amp;quot;myhost&amp;quot; &amp;nbsp;appBase=&amp;quot;webapps&amp;quot;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; unpackWARs=&amp;quot;true&amp;quot; autoDeploy=&amp;quot;true&amp;quot;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; xmlValidation=&amp;quot;false&amp;quot; xmlNamespaceAware=&amp;quot;false&amp;quot;&amp;gt;
&lt;br&gt;&lt;br&gt;&lt;br&gt;I took this from Tomcat6, you are using 5 so double-check the docs in
&lt;br&gt;case this has changed between releases.
&lt;br&gt;&lt;br&gt;Cheers
&lt;br&gt;&lt;br&gt;John
&lt;br&gt;&lt;br&gt;&lt;br&gt;On Thu, Nov 19, 2009 at 1:45 PM, Madan, Vishwajit
&lt;br&gt;&amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26435364&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;vishwajit.madan@...&lt;/a&gt;&amp;gt; wrote:
&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; Hi,
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; I have installed Roller 4.0.1 under Tomcat 5.5 and MySQL 5 and created
&lt;br&gt;&amp;gt; one sample web blog.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; The things are working fine but on the sample page displayed most of
&lt;br&gt;&amp;gt; links like &amp;quot;comments&amp;quot; etc are pointing to &amp;quot;localhost&amp;quot;.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Due to this issue I am unable to access all features of blog from other
&lt;br&gt;&amp;gt; machine (except hosting machine/localhost).
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Currently I am using &amp;quot;Brushed Metal&amp;quot; theme. Please help me in fixing the
&lt;br&gt;&amp;gt; issue.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Thanks in advance!!
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Regards,
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Vishwajit
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Please help Logica to respect the environment by not printing this email  / Pour contribuer comme Logica au respect de l'environnement, merci de ne pas imprimer ce mail /  Bitte drucken Sie diese Nachricht nicht aus und helfen Sie so Logica dabei, die Umwelt zu schützen. /  Por favor ajude a Logica a respeitar o ambiente nao imprimindo este correio electronico.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; This e-mail and any attachment is for authorised use by the intended recipient(s) only. It may contain proprietary material, confidential information and/or be subject to legal privilege. It should not be copied, disclosed to, retained or used by, any other party. If you are not an intended recipient then please promptly delete this e-mail and any attachment and all copies and inform the sender. Thank you.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&lt;/div&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Roller---User-f12278.html&quot; embed=&quot;fixTarget[12278]&quot; target=&quot;_top&quot; &gt;Roller - User&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Links-always-going-to-%22localhost%22-tp26426539s12275p26435364.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26431548</id>
	<title>migration from wordpress mu to Roller.</title>
	<published>2009-11-19T10:30:08Z</published>
	<updated>2009-11-19T10:30:08Z</updated>
	<author>
		<name>Rajiv Mordani</name>
	</author>
	<content type="html">Hi,
&lt;br&gt;&amp;nbsp; &amp;nbsp; I thought I should check with this alias before I embark on doing 
&lt;br&gt;this myself - has anyone done a migration of blogs from wordpress mu 
&lt;br&gt;(multi user) to Roller? Is there any script available to do that?
&lt;br&gt;&lt;br&gt;Thanks
&lt;br&gt;&lt;br&gt;- Rajiv
&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Roller---Dev-f12277.html&quot; embed=&quot;fixTarget[12277]&quot; target=&quot;_top&quot; &gt;Roller - Dev&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/migration-from-wordpress-mu-to-Roller.-tp26431548s12275p26431548.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26431492</id>
	<title>Re: [ANN] AppFuse 2.1.0 Milestone 1 Released</title>
	<published>2009-11-19T10:20:47Z</published>
	<updated>2009-11-19T10:20:47Z</updated>
	<author>
		<name>mraible</name>
	</author>
	<content type="html">Doh! Didn't mean to send this to roller-dev. Sorry about that. (blush)
&lt;br&gt;&lt;br&gt;Let me know if you have any Maven questions, I'd be happy to help.
&lt;br&gt;&lt;br&gt;Matt
&lt;br&gt;&lt;br&gt;On Nov 19, 2009, at 1:04 PM, Dave &amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26431492&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;snoopdave@...&lt;/a&gt;&amp;gt; wrote:
&lt;br&gt;&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; Congrats on the new milestone.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; On Thu, Nov 19, 2009 at 9:57 AM, Matt Raible &amp;nbsp;
&lt;br&gt;&amp;gt; &amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26431492&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;matt@...&lt;/a&gt;&amp;gt; wrote:
&lt;br&gt;&amp;gt;&amp;gt; The AppFuse Team is pleased to announce the first milestone release &amp;nbsp;
&lt;br&gt;&amp;gt;&amp;gt; of
&lt;br&gt;&amp;gt;&amp;gt; ...
&lt;br&gt;&amp;gt;&amp;gt; In addition, AppFuse Light has been converted to
&lt;br&gt;&amp;gt;&amp;gt; Maven&amp;lt;&lt;a href=&quot;http://raibledesigns.com/rd/entry/appfuse_light_converted_to_maven&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://raibledesigns.com/rd/entry/appfuse_light_converted_to_maven&lt;/a&gt;&amp;nbsp;
&lt;br&gt;&amp;gt;&amp;gt; &amp;gt;and
&lt;br&gt;&amp;gt;&amp;gt; has archetypes available too. AppFuse provides archetypes for JSF,
&lt;br&gt;&amp;gt;&amp;gt; Spring MVC, Struts 2 and Tapestry 5. The *light* archetypes are &amp;nbsp;
&lt;br&gt;&amp;gt;&amp;gt; available
&lt;br&gt;&amp;gt;&amp;gt; for these frameworks, as well as for Spring MVC + FreeMarker, &amp;nbsp;
&lt;br&gt;&amp;gt;&amp;gt; Stripes and
&lt;br&gt;&amp;gt;&amp;gt; Wicket.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; BTW, I've been working on converting Roller over to Maven, complete
&lt;br&gt;&amp;gt; with a directory re-organization to match the standard Maven layout. I
&lt;br&gt;&amp;gt; hope to have a patch to share in the next week or so.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; - Dave
&lt;br&gt;&lt;/div&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Roller---Dev-f12277.html&quot; embed=&quot;fixTarget[12277]&quot; target=&quot;_top&quot; &gt;Roller - Dev&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/-ANN--AppFuse-2.1.0-Milestone-1-Released-tp26427726s12275p26431492.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26431341</id>
	<title>Re: Looking for Perforamce Recommendations</title>
	<published>2009-11-19T10:18:40Z</published>
	<updated>2009-11-19T10:18:40Z</updated>
	<author>
		<name>Horatia</name>
	</author>
	<content type="html">Please advice more details:
&lt;br&gt;-hardware
&lt;br&gt;-software
&lt;br&gt;-description of your problem(s); performance and/or ssl?
&lt;br&gt;&lt;br&gt;Horatia
&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Roller---User-f12278.html&quot; embed=&quot;fixTarget[12278]&quot; target=&quot;_top&quot; &gt;Roller - User&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Looking-for-Perforamce-Recommendations-tp26421388s12275p26431341.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26431112</id>
	<title>Re: [ANN] AppFuse 2.1.0 Milestone 1 Released</title>
	<published>2009-11-19T10:04:47Z</published>
	<updated>2009-11-19T10:04:47Z</updated>
	<author>
		<name>Dave-401</name>
	</author>
	<content type="html">Congrats on the new milestone.
&lt;br&gt;&lt;br&gt;&lt;br&gt;On Thu, Nov 19, 2009 at 9:57 AM, Matt Raible &amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26431112&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;matt@...&lt;/a&gt;&amp;gt; wrote:
&lt;br&gt;&amp;gt; The AppFuse Team is pleased to announce the first milestone release of
&lt;br&gt;&amp;gt; ...
&lt;br&gt;&amp;gt; In addition, AppFuse Light has been converted to
&lt;br&gt;&amp;gt; Maven&amp;lt;&lt;a href=&quot;http://raibledesigns.com/rd/entry/appfuse_light_converted_to_maven&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://raibledesigns.com/rd/entry/appfuse_light_converted_to_maven&lt;/a&gt;&amp;gt;and
&lt;br&gt;&amp;gt; has archetypes available too. AppFuse provides archetypes for JSF,
&lt;br&gt;&amp;gt; Spring MVC, Struts 2 and Tapestry 5. The *light* archetypes are available
&lt;br&gt;&amp;gt; for these frameworks, as well as for Spring MVC + FreeMarker, Stripes and
&lt;br&gt;&amp;gt; Wicket.
&lt;br&gt;&lt;br&gt;&lt;br&gt;BTW, I've been working on converting Roller over to Maven, complete
&lt;br&gt;with a directory re-organization to match the standard Maven layout. I
&lt;br&gt;hope to have a patch to share in the next week or so.
&lt;br&gt;&lt;br&gt;- Dave
&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Roller---Dev-f12277.html&quot; embed=&quot;fixTarget[12277]&quot; target=&quot;_top&quot; &gt;Roller - Dev&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/-ANN--AppFuse-2.1.0-Milestone-1-Released-tp26427726s12275p26431112.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26421388</id>
	<title>Looking for Perforamce Recommendations</title>
	<published>2009-11-19T08:54:12Z</published>
	<updated>2009-11-19T08:54:12Z</updated>
	<author>
		<name>dbrunkow</name>
	</author>
	<content type="html">Can anyone point me to any good Roller performance tuning doc. I've googled but haven't found anything I'm happy with. We're fighting with getting SSL to work only for login for one, but I wondered if there was any doc that could help us improve performance other than reducing use of SSL.&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Roller---User-f12278.html&quot; embed=&quot;fixTarget[12278]&quot; target=&quot;_top&quot; &gt;Roller - User&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Looking-for-Perforamce-Recommendations-tp26421388s12275p26421388.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26421385</id>
	<title>Re: WeblogCategories II</title>
	<published>2009-11-19T08:36:14Z</published>
	<updated>2009-11-19T08:36:14Z</updated>
	<author>
		<name>Ana Pardo</name>
	</author>
	<content type="html">Hello! I have a problem with customizing the way categories are displayed. I want to list each category individually, so the only way i could think to do this is:
&lt;br&gt;&lt;br&gt;&amp;lt;p&amp;gt;#set($rootCategory = $model.weblog.getWeblogCategory(&amp;quot;Noticias&amp;quot;))
&lt;br&gt;&amp;nbsp;#showWeblogCategoryLinksList($model.weblog.getWeblogCategory(&amp;quot;Noticias&amp;quot;) false true)&amp;lt;/p&amp;gt;
&lt;br&gt;&amp;lt;p&amp;gt; #set($rootCategory = $model.weblog.getWeblogCategory(&amp;quot;Nuestras Marcas&amp;quot;))
&lt;br&gt;#showWeblogCategoryLinksList($rootCategory false true)&amp;lt;/p&amp;gt;
&lt;br&gt;&amp;lt;p&amp;gt;#set($rootCategory = $model.weblog.getWeblogCategory(&amp;quot;Eventos&amp;quot;))
&lt;br&gt;#showWeblogCategoryLinksList($rootCategory false true)&amp;lt;/p&amp;gt; 
&lt;br&gt;&lt;br&gt;This code gives me two problems:
&lt;br&gt;&lt;br&gt;1) When i select any of those categories the name changes to &amp;quot;categoryObject.name&amp;quot;. I don't understand wy it doesn't shows the name of the category instead. Is there an easier way to list the category one by one? Or is there something else i have to add to my code?
&lt;br&gt;&lt;br&gt;2) It appends a bullet at the beginning of the category name. I can't find the way of deleting that, i have removed the tags &amp;lt;li&amp;gt;&amp;lt;/li&amp;gt;,&amp;lt;ul&amp;gt;&amp;lt;/ul&amp;gt;, and any other tag asociated with list in html and it doesn't go away. Is there a way of doing this?
&lt;br&gt;&lt;br&gt;&lt;blockquote class=&quot;quote light-black dark-border-color&quot;&gt;&lt;div class=&quot;quote light-border-color&quot;&gt;
&lt;div class=&quot;quote-author&quot; style=&quot;font-weight: bold;&quot;&gt;Horatia wrote:&lt;/div&gt;
&lt;div class=&quot;quote-message shrinkable-quote&quot;&gt;Hello!
&lt;br&gt;&lt;br&gt;Is there a way to hide one category of
&lt;br&gt;categories &amp;nbsp;displayed; e.g. from:
&lt;br&gt;&lt;br&gt;All &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; All
&lt;br&gt;Music &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; General
&lt;br&gt;General &amp;nbsp; &amp;nbsp; &amp;nbsp;to &amp;nbsp; &amp;nbsp; &amp;nbsp; Java 
&lt;br&gt;Java &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;
&lt;br&gt;&lt;br&gt;Thank you.
&lt;br&gt;&lt;br&gt;Horatia
&lt;/div&gt;
&lt;/div&gt;&lt;/blockquote&gt;
&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Roller---User-f12278.html&quot; embed=&quot;fixTarget[12278]&quot; target=&quot;_top&quot; &gt;Roller - User&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/WeblogCategories-II-tp25588583s12275p26421385.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26428875</id>
	<title>Re: Links always going to &quot;localhost&quot;</title>
	<published>2009-11-19T08:01:13Z</published>
	<updated>2009-11-19T08:01:13Z</updated>
	<author>
		<name>Anil Gangolli</name>
	</author>
	<content type="html">&lt;br&gt;When logged in as a site administrator, navigate to Main Menu -&amp;gt; Server 
&lt;br&gt;Administration -&amp;gt; Server Admin tab. &amp;nbsp;
&lt;br&gt;&lt;br&gt;Fill in the field labeled &amp;quot;Absolute URL to site (if required)&amp;quot; with 
&lt;br&gt;publicly exposed prefix that leads to the roller webapp. &amp;nbsp; &amp;nbsp;For example, 
&lt;br&gt;&amp;quot;&lt;a href=&quot;http://blogs.example.com/roller&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://blogs.example.com/roller&lt;/a&gt;&amp;quot; or if running as the ROOT webapp in 
&lt;br&gt;Tomcat, &amp;quot;&lt;a href=&quot;http://blogs.example.com/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://blogs.example.com/&lt;/a&gt;&amp;quot;. 
&lt;br&gt;&lt;br&gt;--a.
&lt;br&gt;&lt;br&gt;&lt;br&gt;Madan, Vishwajit wrote:
&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; Hi,
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; I have installed Roller 4.0.1 under Tomcat 5.5 and MySQL 5 and created
&lt;br&gt;&amp;gt; one sample web blog.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; The things are working fine but on the sample page displayed most of
&lt;br&gt;&amp;gt; links like &amp;quot;comments&amp;quot; etc are pointing to &amp;quot;localhost&amp;quot;.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Due to this issue I am unable to access all features of blog from other
&lt;br&gt;&amp;gt; machine (except hosting machine/localhost).
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Currently I am using &amp;quot;Brushed Metal&amp;quot; theme. Please help me in fixing the
&lt;br&gt;&amp;gt; issue.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Thanks in advance!!
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Regards,
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Vishwajit
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Please help Logica to respect the environment by not printing this email &amp;nbsp;/ Pour contribuer comme Logica au respect de l'environnement, merci de ne pas imprimer ce mail / &amp;nbsp;Bitte drucken Sie diese Nachricht nicht aus und helfen Sie so Logica dabei, die Umwelt zu schützen. / &amp;nbsp;Por favor ajude a Logica a respeitar o ambiente nao imprimindo este correio electronico.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; This e-mail and any attachment is for authorised use by the intended recipient(s) only. It may contain proprietary material, confidential information and/or be subject to legal privilege. It should not be copied, disclosed to, retained or used by, any other party. If you are not an intended recipient then please promptly delete this e-mail and any attachment and all copies and inform the sender. Thank you.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; 
&lt;/div&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Roller---User-f12278.html&quot; embed=&quot;fixTarget[12278]&quot; target=&quot;_top&quot; &gt;Roller - User&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Links-always-going-to-%22localhost%22-tp26426539s12275p26428875.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26427726</id>
	<title>[ANN] AppFuse 2.1.0 Milestone 1 Released</title>
	<published>2009-11-19T06:57:39Z</published>
	<updated>2009-11-19T06:57:39Z</updated>
	<author>
		<name>mraible</name>
	</author>
	<content type="html">The AppFuse Team is pleased to announce the first milestone release of
&lt;br&gt;AppFuse 2.1. This release includes upgrades to all dependencies to bring
&lt;br&gt;them up-to-date with their latest releases. Most notable are
&lt;br&gt;Hibernate&amp;lt;&lt;a href=&quot;http://raibledesigns.com/rd/entry/upgrading_hibernate_to_3_4&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://raibledesigns.com/rd/entry/upgrading_hibernate_to_3_4&lt;/a&gt;&amp;gt;,
&lt;br&gt;Spring &amp;lt;&lt;a href=&quot;http://raibledesigns.com/rd/entry/moving_from_spring_s_xml&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://raibledesigns.com/rd/entry/moving_from_spring_s_xml&lt;/a&gt;&amp;gt; and
&lt;br&gt;Tapestry 5.
&lt;br&gt;&lt;br&gt;Archetypes &amp;lt;&lt;a href=&quot;http://static.appfuse.org/archetypes.html&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://static.appfuse.org/archetypes.html&lt;/a&gt;&amp;gt; now include all the
&lt;br&gt;source for the web modules so using jetty:run and your IDE will work much
&lt;br&gt;smoother now. The backend is still embedded in JARs, enabling you to choose
&lt;br&gt;with persistence framework (Hibernate, iBATIS or JPA) you'd like to use. If
&lt;br&gt;you want to modify the source for that, add the core classes to your
&lt;br&gt;project&amp;lt;&lt;a href=&quot;http://appfuse.org/display/APF/AppFuse+Core+Classes&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://appfuse.org/display/APF/AppFuse+Core+Classes&lt;/a&gt;&amp;gt;or run
&lt;br&gt;&amp;quot;appfuse:full-source&amp;quot;.
&lt;br&gt;&lt;br&gt;In addition, AppFuse Light has been converted to
&lt;br&gt;Maven&amp;lt;&lt;a href=&quot;http://raibledesigns.com/rd/entry/appfuse_light_converted_to_maven&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://raibledesigns.com/rd/entry/appfuse_light_converted_to_maven&lt;/a&gt;&amp;gt;and
&lt;br&gt;has archetypes available too. AppFuse provides archetypes for JSF,
&lt;br&gt;Spring MVC, Struts 2 and Tapestry 5. The *light* archetypes are available
&lt;br&gt;for these frameworks, as well as for Spring MVC + FreeMarker, Stripes and
&lt;br&gt;Wicket.
&lt;br&gt;&lt;br&gt;Other notable improvements:
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp;- Added Compass support &amp;lt;&lt;a href=&quot;http://issues.appfuse.org/browse/APF-267&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://issues.appfuse.org/browse/APF-267&lt;/a&gt;&amp;gt; thanks
&lt;br&gt;&amp;nbsp; &amp;nbsp;to a patch from Shay Banon &amp;lt;&lt;a href=&quot;http://www.kimchy.org/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.kimchy.org/&lt;/a&gt;&amp;gt;.
&lt;br&gt;&amp;nbsp; &amp;nbsp;- Upgraded from XFire to CXF
&lt;br&gt;&amp;lt;&lt;a href=&quot;http://issues.appfuse.org/browse/APF-1125&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://issues.appfuse.org/browse/APF-1125&lt;/a&gt;&amp;gt;for Web Services.
&lt;br&gt;&amp;nbsp; &amp;nbsp;- Moved Maven repository to Sonatype's OSS Repository
&lt;br&gt;Hosting&amp;lt;&lt;a href=&quot;https://docs.sonatype.com/display/NX/OSS+Repository+Hosting&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;https://docs.sonatype.com/display/NX/OSS+Repository+Hosting&lt;/a&gt;&amp;gt;for
&lt;br&gt;snapshots and releasing to Maven Central. There are no longer any
&lt;br&gt;&amp;nbsp; &amp;nbsp;AppFuse-specific artifacts, all are available in central. Thanks to
&lt;br&gt;&amp;nbsp; &amp;nbsp;Sonatype &amp;lt;&lt;a href=&quot;http://sonatype.com/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://sonatype.com/&lt;/a&gt;&amp;gt; for this great service and its excellent
&lt;br&gt;&amp;nbsp; &amp;nbsp;repository manager&amp;lt;&lt;a href=&quot;http://raibledesigns.com/rd/entry/nexus_is_a_kick_ass&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://raibledesigns.com/rd/entry/nexus_is_a_kick_ass&lt;/a&gt;&amp;gt;
&lt;br&gt;&amp;nbsp; &amp;nbsp;.
&lt;br&gt;&amp;nbsp; &amp;nbsp;- Upgraded to Canoo WebTest 3.0. *Now if we could just get its Maven
&lt;br&gt;&amp;nbsp; &amp;nbsp;Plugin&amp;lt;&lt;a href=&quot;http://people.apache.org/%7Esgoeschl/download/maven-plugins/webtest-maven-plugin/site/index.html&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://people.apache.org/%7Esgoeschl/download/maven-plugins/webtest-maven-plugin/site/index.html&lt;/a&gt;&amp;gt;moved
&lt;br&gt;to Codehaus.
&lt;br&gt;&amp;nbsp; &amp;nbsp;*
&lt;br&gt;&amp;nbsp; &amp;nbsp;- Added Ajaxified Body
&lt;br&gt;&amp;lt;&lt;a href=&quot;http://raibledesigns.com/rd/entry/ajaxified_body&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://raibledesigns.com/rd/entry/ajaxified_body&lt;/a&gt;&amp;gt;to AppFuse Light
&lt;br&gt;archetypes.
&lt;br&gt;&amp;nbsp; &amp;nbsp;- Infrastructure upgrades, including JIRA 4 &amp;lt;&lt;a href=&quot;http://issues.appfuse.org/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://issues.appfuse.org/&lt;/a&gt;&amp;gt;,
&lt;br&gt;&amp;nbsp; &amp;nbsp;Confluence 3 &amp;lt;&lt;a href=&quot;http://appfuse.org/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://appfuse.org/&lt;/a&gt;&amp;gt;, FishEye 2&amp;lt;&lt;a href=&quot;http://source.appfuse.org/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://source.appfuse.org/&lt;/a&gt;&amp;gt;,
&lt;br&gt;&amp;nbsp; &amp;nbsp;Bamboo 2 &amp;lt;&lt;a href=&quot;http://builds.appfuse.org/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://builds.appfuse.org/&lt;/a&gt;&amp;gt; and Crowd
&lt;br&gt;1.6&amp;lt;&lt;a href=&quot;http://login.appfuse.org/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://login.appfuse.org/&lt;/a&gt;&amp;gt;.
&lt;br&gt;&amp;nbsp; &amp;nbsp;Many thanks to Atlassian &amp;lt;&lt;a href=&quot;http://www.atlassian.com/c/NPOS/10160&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.atlassian.com/c/NPOS/10160&lt;/a&gt;&amp;gt; and
&lt;br&gt;&amp;nbsp; &amp;nbsp;Contegix &amp;lt;&lt;a href=&quot;http://contegix.com/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://contegix.com/&lt;/a&gt;&amp;gt; for their excellent products and
&lt;br&gt;&amp;nbsp; &amp;nbsp;services.
&lt;br&gt;&amp;nbsp; &amp;nbsp;- For more details on specific changes see the release
&lt;br&gt;notes&amp;lt;&lt;a href=&quot;http://appfuse.org/display/APF/Release+Notes+2.1.0+M1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://appfuse.org/display/APF/Release+Notes+2.1.0+M1&lt;/a&gt;&amp;gt;
&lt;br&gt;&amp;nbsp; &amp;nbsp;.
&lt;br&gt;&lt;br&gt;Please note that this release does not contain updates to the documentation.
&lt;br&gt;Code generation will work, but it's likely that some content in the
&lt;br&gt;tutorials &amp;lt;&lt;a href=&quot;http://appfuse.org/display/APF/Tutorials&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://appfuse.org/display/APF/Tutorials&lt;/a&gt;&amp;gt; won't match. For
&lt;br&gt;example, you can use annotations (vs. XML) for dependency injection and
&lt;br&gt;Tapestry is a whole new framework. I'll be working on documentation over the
&lt;br&gt;next several weeks in preparation for Milestone 2.
&lt;br&gt;&lt;br&gt;AppFuse is available as several Maven archetypes. For information on
&lt;br&gt;creating a new project, please see the QuickStart
&lt;br&gt;Guide&amp;lt;&lt;a href=&quot;http://appfuse.org/display/APF/AppFuse+QuickStart&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://appfuse.org/display/APF/AppFuse+QuickStart&lt;/a&gt;&amp;gt;.
&lt;br&gt;&lt;br&gt;&lt;br&gt;The 2.x series of AppFuse has a minimum requirement of the following
&lt;br&gt;specification versions:
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp;- Java Servlet 2.4 and JSP 2.0 (2.1 for JSF)
&lt;br&gt;&amp;nbsp; &amp;nbsp;- Java 5+
&lt;br&gt;&lt;br&gt;If you find bugs, please create an issue in
&lt;br&gt;JIRA&amp;lt;&lt;a href=&quot;http://issues.appfuse.org/secure/CreateIssue%21default.jspa&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://issues.appfuse.org/secure/CreateIssue%21default.jspa&lt;/a&gt;&amp;gt;
&lt;br&gt;.
&lt;br&gt;&lt;br&gt;Thanks to everyone for their help contributing code, writing documentation,
&lt;br&gt;posting to the mailing lists, and logging issues.
&lt;br&gt;&lt;br&gt;Cheers,
&lt;br&gt;&lt;br&gt;Matt
&lt;br&gt;&lt;br&gt;P.S. Also posted to AppFuse
&lt;br&gt;News&amp;lt;&lt;a href=&quot;http://appfuse.org/display/APF/2009/11/19/AppFuse+2.1.0+Milestone+1+Released&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://appfuse.org/display/APF/2009/11/19/AppFuse+2.1.0+Milestone+1+Released&lt;/a&gt;&amp;gt;and
&lt;br&gt;my
&lt;br&gt;blog &amp;lt;&lt;a href=&quot;http://raibledesigns.com/rd/entry/appfuse_2_1_milestone_1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://raibledesigns.com/rd/entry/appfuse_2_1_milestone_1&lt;/a&gt;&amp;gt;.
&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Roller---Dev-f12277.html&quot; embed=&quot;fixTarget[12277]&quot; target=&quot;_top&quot; &gt;Roller - Dev&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/-ANN--AppFuse-2.1.0-Milestone-1-Released-tp26427726s12275p26427726.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26427058</id>
	<title>AW: theme reloading</title>
	<published>2009-11-19T06:15:12Z</published>
	<updated>2009-11-19T06:15:12Z</updated>
	<author>
		<name>Matthias Schmidt-14</name>
	</author>
	<content type="html">Thanks, Greg!! 
&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;-----Ursprüngliche Nachricht-----
&lt;br&gt;Von: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26427058&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;Greg.Huber@...&lt;/a&gt; [mailto:&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26427058&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;Greg.Huber@...&lt;/a&gt;] 
&lt;br&gt;Gesendet: Donnerstag, 19. November 2009 14:52
&lt;br&gt;An: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26427058&amp;i=2&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;dev@...&lt;/a&gt;
&lt;br&gt;Betreff: Re: theme reloading
&lt;br&gt;&lt;br&gt;Hello,
&lt;br&gt;&lt;br&gt;I have created ROL-1847 with a patch for the trunk.
&lt;br&gt;&lt;br&gt;I also do not have the trunk setup as a project so i have copied the mods and therefore unable to test it, but the source project &amp;nbsp;works OK.
&lt;br&gt;&lt;br&gt;Cheers Greg
&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;Matt Raible &amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26427058&amp;i=3&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;matt@...&lt;/a&gt;&amp;gt;
&lt;br&gt;19/11/2009 12:18
&lt;br&gt;Please respond to
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26427058&amp;i=4&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;dev@...&lt;/a&gt;
&lt;br&gt;&lt;br&gt;&lt;br&gt;To
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26427058&amp;i=5&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;dev@...&lt;/a&gt;
&lt;br&gt;cc
&lt;br&gt;&lt;br&gt;Subject
&lt;br&gt;Re: theme reloading
&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;Any chance you could provide this as a patch? I believe this would be
&lt;br&gt;a nice feature to have in Roller's core.
&lt;br&gt;&lt;br&gt;Thanks,
&lt;br&gt;&lt;br&gt;Matt
&lt;br&gt;&lt;br&gt;On Thu, Nov 19, 2009 at 6:43 AM, &amp;nbsp;&amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26427058&amp;i=6&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;Greg.Huber@...&lt;/a&gt;&amp;gt; wrote:
&lt;br&gt;&amp;gt; Hello,
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Remembered a while back someone asked if it was possible to reload a 
&lt;br&gt;theme
&lt;br&gt;&amp;gt; rather than restarting the container for development purposes.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Rather than upgrading my laptop I decided to see if it was possible.
&lt;br&gt;&amp;gt; Roller needs a few mods, but seems to work, also does not seem to be 
&lt;br&gt;much
&lt;br&gt;&amp;gt; of an overhead either.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Add a method to theme manager
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;/**
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; * This is a development only method which reloads theme data 
&lt;br&gt;from
&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; themes
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; * stored on the filesystem in the webapp /themes/ directory.
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; *
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; * @param reloadTheme
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; * &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;the reload theme
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; *
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; * @return true, if theme was reloaded from disk
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; */
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;public boolean reLoadThemeFromDisk(String reloadTheme);
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; also impl:
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;/**
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; * @see ThemeManager#reLoadThemeFromDisk(String)
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; */
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;public boolean reLoadThemeFromDisk(String reloadTheme) {
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;boolean reloaded = false;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;try {
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;Theme theme = new 
&lt;/div&gt;SharedThemeFromDir(this.themeDir
&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; + File.separator
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;+ reloadTheme);
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;if (theme != null) {
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;Theme loadedTheme = (Theme)
&lt;br&gt;&amp;gt; themes.get(theme.getId());
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;if (loadedTheme != null
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;&amp; 
&lt;/div&gt;theme.getLastModified()
&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; &amp;nbsp;.after(loadedTheme.getLastModified())) {
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;themes.remove(theme.getId());
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;themes.put(theme.getId(), theme);
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;reloaded = true;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;}
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;}
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;} catch (Throwable unexpected) {
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;log.error(&amp;quot;Problem reloading theme &amp;quot; +
&lt;br&gt;&amp;gt; reloadTheme, unexpected);
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;}
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;return reloaded;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;}
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Modify SharedThemeFromDir to update the last modified in SharedTheme: 
&lt;/div&gt;&amp;nbsp;see
&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; **** Set Last Modified *****
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;/**
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; * Load all the elements of this theme from disk and cache them.
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; */
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;private void loadThemeFromDisk() throws
&lt;br&gt;&amp;gt; ThemeInitializationException {
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;log.debug(&amp;quot;Parsing theme descriptor for &amp;quot; +
&lt;br&gt;&amp;gt; this.themeDir);
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;ThemeMetadata themeMetadata = null;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;try {
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;// lookup theme descriptor and parse it
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;ThemeMetadataParser parser = new
&lt;br&gt;&amp;gt; ThemeMetadataParser();
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;InputStream is = new 
&lt;/div&gt;FileInputStream(this.themeDir
&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; + File.separator
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;+ &amp;quot;theme.xml&amp;quot;);
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;themeMetadata = parser.unmarshall(is);
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;} catch (Exception ex) {
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;throw new ThemeInitializationException(
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;quot;Unable to parse theme descriptor
&lt;br&gt;&amp;gt; for theme &amp;quot;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;+ this.themeDir,
&lt;br&gt;&amp;gt; ex);
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;}
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;log.debug(&amp;quot;Loading Theme &amp;quot; + themeMetadata.getName());
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;// use parsed theme descriptor to load Theme data
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;setId(themeMetadata.getId());
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;setName(themeMetadata.getName());
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;setDescription(themeMetadata.getName());
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;setAuthor(themeMetadata.getAuthor());
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; **** Set Last Modified *****
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;// setLastModified(new Date());
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;setEnabled(true);
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;// load resource representing preview image
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;File previewFile = new File(this.themeDir + 
&lt;/div&gt;File.separator
&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;+ themeMetadata.getPreviewImage());
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;if (!previewFile.exists() || !previewFile.canRead()) {
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;log.warn(&amp;quot;Couldn't read theme [&amp;quot; + this.getName()
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;+ &amp;quot;] preview image file [&amp;quot;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;+ themeMetadata.getPreviewImage()
&lt;br&gt;&amp;gt; + &amp;quot;]&amp;quot;);
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;} else {
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;this.previewImage = new
&lt;br&gt;&amp;gt; SharedThemeResourceFromDir(themeMetadata
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;.getPreviewImage(), previewFile);
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;}
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;// load stylesheet if possible
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;if (themeMetadata.getStylesheet() != null) {
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;ThemeMetadataTemplate stylesheetTmpl =
&lt;br&gt;&amp;gt; themeMetadata
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;.getStylesheet();
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;// construct File object from path
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;File templateFile = new File(this.themeDir +
&lt;br&gt;&amp;gt; File.separator
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;+
&lt;br&gt;&amp;gt; stylesheetTmpl.getContentsFile());
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;// read stylesheet contents
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;String contents = loadTemplateFile(templateFile);
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;if (contents == null) {
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;// if we don't have any contents then 
&lt;/div&gt;skip
&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; this one
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;log.error(&amp;quot;Couldn't load stylesheet theme
&lt;br&gt;&amp;gt; [&amp;quot; + this.getName()
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;+ &amp;quot;] template file [&amp;quot; +
&lt;br&gt;&amp;gt; templateFile + &amp;quot;]&amp;quot;);
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;} else {
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;// construct ThemeTemplate representing
&lt;br&gt;&amp;gt; this file
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;SharedThemeTemplate theme_template = new
&lt;br&gt;&amp;gt; SharedThemeTemplate(
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;this,
&lt;br&gt;&amp;gt; themeMetadata.getId() + &amp;quot;:&amp;quot;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;+
&lt;br&gt;&amp;gt; stylesheetTmpl.getName(),
&lt;br&gt;&amp;gt; &amp;nbsp;WebsiteTemplate.ACTION_CUSTOM,
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;stylesheetTmpl.getName(),
&lt;br&gt;&amp;gt; stylesheetTmpl
&lt;br&gt;&amp;gt; &amp;nbsp;.getDescription(), contents, stylesheetTmpl
&lt;br&gt;&amp;gt; &amp;nbsp;.getLink(), new Date(templateFile
&lt;br&gt;&amp;gt; &amp;nbsp;.lastModified()), stylesheetTmpl
&lt;br&gt;&amp;gt; &amp;nbsp;.getTemplateLanguage(), false, false);
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;// store it
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;this.stylesheet = theme_template;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;// add it to templates list
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;addTemplate(theme_template);
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;}
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;// **** Set Last Modified *****
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;setLastModified(new
&lt;br&gt;&amp;gt; Date(templateFile.lastModified()));
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;}
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;// go through static resources and add them to the theme
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;String resourcePath = null;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;Iterator resourcesIter =
&lt;br&gt;&amp;gt; themeMetadata.getResources().iterator();
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;while (resourcesIter.hasNext()) {
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;resourcePath = (String) resourcesIter.next();
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;// construct ThemeResource object from resource
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;File resourceFile = new File(this.themeDir +
&lt;br&gt;&amp;gt; File.separator
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;+ resourcePath);
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;// Continue reading theme even if problem
&lt;br&gt;&amp;gt; encountered with one file
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;if (!resourceFile.exists() ||
&lt;br&gt;&amp;gt; !resourceFile.canRead()) {
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;log.warn(&amp;quot;Couldn't read &amp;nbsp;theme [&amp;quot; +
&lt;br&gt;&amp;gt; this.getName()
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;+ &amp;quot;] resource file [&amp;quot; +
&lt;br&gt;&amp;gt; resourcePath + &amp;quot;]&amp;quot;);
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;continue;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;}
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;// add it to the theme
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;setResource(resourcePath, new
&lt;br&gt;&amp;gt; SharedThemeResourceFromDir(
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;resourcePath, resourceFile));
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;// **** Set Last Modified *****
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;Date lstModified = new
&lt;br&gt;&amp;gt; Date(resourceFile.lastModified());
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;if (getLastModified() == null
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;||
&lt;br&gt;&amp;gt; lstModified.after(getLastModified())) {
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;setLastModified(lstModified);
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;}
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;}
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;// go through templates and read in contents to a
&lt;br&gt;&amp;gt; ThemeTemplate
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;ThemeTemplate theme_template = null;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;ThemeMetadataTemplate templateMetadata = null;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;Iterator templatesIter =
&lt;br&gt;&amp;gt; themeMetadata.getTemplates().iterator();
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;while (templatesIter.hasNext()) {
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;templateMetadata = (ThemeMetadataTemplate)
&lt;br&gt;&amp;gt; templatesIter.next();
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;// construct File object from path
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;File templateFile = new File(this.themeDir +
&lt;br&gt;&amp;gt; File.separator
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;+
&lt;br&gt;&amp;gt; templateMetadata.getContentsFile());
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;String contents = loadTemplateFile(templateFile);
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;if (contents == null) {
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;// if we don't have any contents then 
&lt;/div&gt;skip
&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; this one
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;throw new
&lt;br&gt;&amp;gt; ThemeInitializationException(&amp;quot;Couldn't load theme [&amp;quot;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;+ this.getName() + &amp;quot;]
&lt;br&gt;&amp;gt; template file [&amp;quot; + templateFile
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;+ &amp;quot;]&amp;quot;);
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;}
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;// construct ThemeTemplate representing this file
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;theme_template = new SharedThemeTemplate(this,
&lt;br&gt;&amp;gt; themeMetadata
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;.getId()
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;+ &amp;quot;:&amp;quot; +
&lt;br&gt;&amp;gt; templateMetadata.getName(), templateMetadata
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;.getAction(),
&lt;br&gt;&amp;gt; templateMetadata.getName(), templateMetadata
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;.getDescription(), contents,
&lt;br&gt;&amp;gt; templateMetadata.getLink(),
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;new
&lt;br&gt;&amp;gt; Date(templateFile.lastModified()), templateMetadata
&lt;br&gt;&amp;gt; &amp;nbsp;.getTemplateLanguage(),
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;templateMetadata.isHidden(),
&lt;br&gt;&amp;gt; templateMetadata.isNavbar());
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;// add it to the theme
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;addTemplate(theme_template);
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;// &amp;nbsp;**** Set Last Modified *****
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;Date lstModified = new
&lt;br&gt;&amp;gt; Date(templateFile.lastModified());
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;if (getLastModified() == null
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;||
&lt;br&gt;&amp;gt; lstModified.after(getLastModified())) {
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;setLastModified(lstModified);
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;}
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;}
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;}
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Then in PageServlet reload the theme and then clear the caches
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; // generate cache key
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;String cacheKey = null;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;if (isSiteWide) {
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;cacheKey = siteWideCache.generateKey(pageRequest);
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;} else {
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;cacheKey = weblogPageCache.generateKey(pageRequest);
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;}
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; // **** Development only. Reload if theme has been modified &amp;nbsp;***
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;if
&lt;br&gt;&amp;gt; (WebloggerConfig.getBooleanProperty(&amp;quot;site.themeReloadMode&amp;quot;)) {
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;try {
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;ThemeManager manager = null;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;manager =
&lt;br&gt;&amp;gt; WebloggerFactory.getWeblogger().getThemeManager();
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;boolean reloaded =
&lt;br&gt;&amp;gt; manager.reLoadThemeFromDisk(website.getEditorTheme());
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;if (reloaded) {
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;if (isSiteWide) {
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;siteWideCache.clear();
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;} else {
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;websitePageCache.clear();
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;}
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;}
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;} catch (Exception e1) {
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;// ignored
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;}
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;}
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp;// cached content checking
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;if ((!this.excludeOwnerPages || !pageRequest.isLoggedIn()) &amp;&amp;
&lt;br&gt;&amp;gt; request.getAttribute(&amp;quot;skipCache&amp;quot;) == null) {
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Cheers Greg
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Share our environment commitment - conserve resources and contribute to 
&lt;/div&gt;the reduction of CO2 emissions by not printing the email unless absolutely 
&lt;br&gt;necessary to do so.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Any opinions expressed are those of the author, not Ricoh UK Ltd. This 
&lt;br&gt;communication does not constitute either offer or acceptance of any 
&lt;br&gt;contractually binding agreement. Such offer or acceptance must be 
&lt;br&gt;communicated in writing. It is the responsibility of the recipient to 
&lt;br&gt;ensure this email and attachments are free from computer viruses before 
&lt;br&gt;use and the sender accepts no responsibility or liability for any such 
&lt;br&gt;computer viruses.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Ricoh UK Ltd. may monitor the content of emails sent and received via 
&lt;br&gt;its network for the purpose of ensuring compliance with its policies and 
&lt;br&gt;procedures. This communication contains information, which may be 
&lt;br&gt;confidential or privileged. The information is intended solely for the use 
&lt;br&gt;of the individual or entity named above. If you are not the intended 
&lt;br&gt;recipient, be aware that any disclosure, copying, distribution or use of 
&lt;br&gt;the contents of this information is prohibited. If you have received this 
&lt;br&gt;communication in error, please notify the sender immediately by return 
&lt;br&gt;email with a copy to &amp;nbsp;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26427058&amp;i=7&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;postmaster@...&lt;/a&gt; . Please contact us on +44 
&lt;br&gt;(0) 208 261 4000 if you need assistance.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Registered in England No: 473236
&lt;br&gt;&amp;gt; VAT No: GB524161280
&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;Share our environment commitment - conserve resources and contribute to the reduction of CO2 emissions by not printing the email unless absolutely necessary to do so. 
&lt;br&gt;&lt;br&gt;Any opinions expressed are those of the author, not Ricoh UK Ltd. This communication does not constitute either offer or acceptance of any contractually binding agreement. Such offer or acceptance must be communicated in writing. It is the responsibility of the recipient to ensure this email and attachments are free from computer viruses before use and the sender accepts no responsibility or liability for any such computer viruses. 
&lt;br&gt;&lt;br&gt;Ricoh UK Ltd. may monitor the content of emails sent and received via its network for the purpose of ensuring compliance with its policies and procedures. This communication contains information, which may be confidential or privileged. The information is intended solely for the use of the individual or entity named above. If you are not the intended recipient, be aware that any disclosure, copying, distribution or use of the contents of this information is prohibited. If you have received this communication in error, please notify the sender immediately by return email with a copy to &amp;nbsp;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26427058&amp;i=8&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;postmaster@...&lt;/a&gt; . Please contact us on +44 (0) 208 261 4000 if you need assistance. 
&lt;br&gt;&lt;br&gt;Registered in England No: 473236 
&lt;br&gt;VAT No: GB524161280 &amp;nbsp;
&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Roller---Dev-f12277.html&quot; embed=&quot;fixTarget[12277]&quot; target=&quot;_top&quot; &gt;Roller - Dev&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Adding-line-breaks-to-inbound-comments-tp26410105s12275p26427058.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26426949</id>
	<title>Re: Links always going to &quot;localhost&quot;</title>
	<published>2009-11-19T06:08:15Z</published>
	<updated>2009-11-19T06:08:15Z</updated>
	<author>
		<name>Christopher Blasnik</name>
	</author>
	<content type="html">Hi Vishwajit,
&lt;br&gt;&lt;br&gt;I just faced the same problem. By default all links in Roller are 
&lt;br&gt;absolute, which is especially bad in a multi-blog environment where you 
&lt;br&gt;want to access the same resources from different domains.
&lt;br&gt;&lt;br&gt;In order to tackle the problem you will have to change:
&lt;br&gt;- the theme you use (velocity) to use relative urls
&lt;br&gt;- some of the Model methods OR add some model methods to use relative 
&lt;br&gt;urls (which are used in the velocity templates)
&lt;br&gt;- the MediaFileImageChooser
&lt;br&gt;&lt;br&gt;However, places where you don't want relative urls are feeds, for instance.
&lt;br&gt;&lt;br&gt;If you only use one domain, this might be done via your web container's 
&lt;br&gt;configuration or apache.
&lt;br&gt;&lt;br&gt;regards,
&lt;br&gt;&lt;br&gt;- Chris
&lt;br&gt;&lt;br&gt;-- 
&lt;br&gt;Christopher Blasnik
&lt;br&gt;UCS - unique computing solutions gmbh
&lt;br&gt;Löwengasse 2/8
&lt;br&gt;A-1030 Vienna, Austria
&lt;br&gt;&lt;a href=&quot;http://www.ucs.at/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.ucs.at/&lt;/a&gt;&lt;br&gt;mailto:&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26426949&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;c.blasnik@...&lt;/a&gt;
&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;Madan, Vishwajit wrote:
&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; Hi,
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; I have installed Roller 4.0.1 under Tomcat 5.5 and MySQL 5 and created
&lt;br&gt;&amp;gt; one sample web blog.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; The things are working fine but on the sample page displayed most of
&lt;br&gt;&amp;gt; links like &amp;quot;comments&amp;quot; etc are pointing to &amp;quot;localhost&amp;quot;.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Due to this issue I am unable to access all features of blog from other
&lt;br&gt;&amp;gt; machine (except hosting machine/localhost).
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Currently I am using &amp;quot;Brushed Metal&amp;quot; theme. Please help me in fixing the
&lt;br&gt;&amp;gt; issue.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Thanks in advance!!
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Regards,
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Vishwajit
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Please help Logica to respect the environment by not printing this email &amp;nbsp;/ Pour contribuer comme Logica au respect de l'environnement, merci de ne pas imprimer ce mail / &amp;nbsp;Bitte drucken Sie diese Nachricht nicht aus und helfen Sie so Logica dabei, die Umwelt zu schützen. / &amp;nbsp;Por favor ajude a Logica a respeitar o ambiente nao imprimindo este correio electronico.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; This e-mail and any attachment is for authorised use by the intended recipient(s) only. It may contain proprietary material, confidential information and/or be subject to legal privilege. It should not be copied, disclosed to, retained or used by, any other party. If you are not an intended recipient then please promptly delete this e-mail and any attachment and all copies and inform the sender. Thank you.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; 
&lt;/div&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Roller---User-f12278.html&quot; embed=&quot;fixTarget[12278]&quot; target=&quot;_top&quot; &gt;Roller - User&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Links-always-going-to-%22localhost%22-tp26426539s12275p26426949.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26426735</id>
	<title>RE: Links always going to &quot;localhost&quot;</title>
	<published>2009-11-19T05:56:37Z</published>
	<updated>2009-11-19T05:56:37Z</updated>
	<author>
		<name>Williams, David A.</name>
	</author>
	<content type="html">Vishwajit,
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; If you are proxying back to tomcat, you may need to set proxyName in your server.xml file for tomcat to something like: 
&lt;br&gt;&lt;br&gt;proxyName=&amp;quot;blog.yourdomain.com&amp;quot;
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; -David
&lt;br&gt;&lt;br&gt;-----Original Message-----
&lt;br&gt;From: Madan, Vishwajit [mailto:&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26426735&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;vishwajit.madan@...&lt;/a&gt;] 
&lt;br&gt;Sent: Thursday, November 19, 2009 8:46 AM
&lt;br&gt;To: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26426735&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;user@...&lt;/a&gt;
&lt;br&gt;Cc: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26426735&amp;i=2&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;user-help@...&lt;/a&gt;; &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26426735&amp;i=3&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;user-owner@...&lt;/a&gt;
&lt;br&gt;Subject: Links always going to &amp;quot;localhost&amp;quot;
&lt;br&gt;&lt;br&gt;Hi,
&lt;br&gt;&lt;br&gt;&amp;nbsp;
&lt;br&gt;&lt;br&gt;I have installed Roller 4.0.1 under Tomcat 5.5 and MySQL 5 and created
&lt;br&gt;one sample web blog.
&lt;br&gt;&lt;br&gt;The things are working fine but on the sample page displayed most of
&lt;br&gt;links like &amp;quot;comments&amp;quot; etc are pointing to &amp;quot;localhost&amp;quot;.
&lt;br&gt;&lt;br&gt;Due to this issue I am unable to access all features of blog from other
&lt;br&gt;machine (except hosting machine/localhost).
&lt;br&gt;&lt;br&gt;&amp;nbsp;
&lt;br&gt;&lt;br&gt;Currently I am using &amp;quot;Brushed Metal&amp;quot; theme. Please help me in fixing the
&lt;br&gt;issue.
&lt;br&gt;&lt;br&gt;&amp;nbsp;
&lt;br&gt;&lt;br&gt;Thanks in advance!!
&lt;br&gt;&lt;br&gt;&amp;nbsp;
&lt;br&gt;&lt;br&gt;Regards,
&lt;br&gt;&lt;br&gt;Vishwajit
&lt;br&gt;&lt;br&gt;&amp;nbsp;
&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;Please help Logica to respect the environment by not printing this email &amp;nbsp;/ Pour contribuer comme Logica au respect de l'environnement, merci de ne pas imprimer ce mail / &amp;nbsp;Bitte drucken Sie diese Nachricht nicht aus und helfen Sie so Logica dabei, die Umwelt zu sch?tzen. / &amp;nbsp;Por favor ajude a Logica a respeitar o ambiente nao imprimindo este correio electronico.
&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;This e-mail and any attachment is for authorised use by the intended recipient(s) only. It may contain proprietary material, confidential information and/or be subject to legal privilege. It should not be copied, disclosed to, retained or used by, any other party. If you are not an intended recipient then please promptly delete this e-mail and any attachment and all copies and inform the sender. Thank you.
&lt;br&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Roller---User-f12278.html&quot; embed=&quot;fixTarget[12278]&quot; target=&quot;_top&quot; &gt;Roller - User&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Links-always-going-to-%22localhost%22-tp26426539s12275p26426735.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26426648</id>
	<title>Re: theme reloading</title>
	<published>2009-11-19T05:51:34Z</published>
	<updated>2009-11-19T05:51:34Z</updated>
	<author>
		<name>Greg.Huber</name>
	</author>
	<content type="html">Hello,
&lt;br&gt;&lt;br&gt;I have created ROL-1847 with a patch for the trunk.
&lt;br&gt;&lt;br&gt;I also do not have the trunk setup as a project so i have copied the mods 
&lt;br&gt;and therefore unable to test it, but the source project &amp;nbsp;works OK.
&lt;br&gt;&lt;br&gt;Cheers Greg
&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;Matt Raible &amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26426648&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;matt@...&lt;/a&gt;&amp;gt; 
&lt;br&gt;19/11/2009 12:18
&lt;br&gt;Please respond to
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26426648&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;dev@...&lt;/a&gt;
&lt;br&gt;&lt;br&gt;&lt;br&gt;To
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26426648&amp;i=2&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;dev@...&lt;/a&gt;
&lt;br&gt;cc
&lt;br&gt;&lt;br&gt;Subject
&lt;br&gt;Re: theme reloading
&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;Any chance you could provide this as a patch? I believe this would be
&lt;br&gt;a nice feature to have in Roller's core.
&lt;br&gt;&lt;br&gt;Thanks,
&lt;br&gt;&lt;br&gt;Matt
&lt;br&gt;&lt;br&gt;On Thu, Nov 19, 2009 at 6:43 AM, &amp;nbsp;&amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26426648&amp;i=3&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;Greg.Huber@...&lt;/a&gt;&amp;gt; wrote:
&lt;br&gt;&amp;gt; Hello,
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Remembered a while back someone asked if it was possible to reload a 
&lt;br&gt;theme
&lt;br&gt;&amp;gt; rather than restarting the container for development purposes.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Rather than upgrading my laptop I decided to see if it was possible.
&lt;br&gt;&amp;gt; Roller needs a few mods, but seems to work, also does not seem to be 
&lt;br&gt;much
&lt;br&gt;&amp;gt; of an overhead either.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Add a method to theme manager
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;/**
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; * This is a development only method which reloads theme data 
&lt;br&gt;from
&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; themes
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; * stored on the filesystem in the webapp /themes/ directory.
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; *
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; * @param reloadTheme
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; * &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;the reload theme
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; *
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; * @return true, if theme was reloaded from disk
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; */
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;public boolean reLoadThemeFromDisk(String reloadTheme);
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; also impl:
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;/**
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; * @see ThemeManager#reLoadThemeFromDisk(String)
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; */
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;public boolean reLoadThemeFromDisk(String reloadTheme) {
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;boolean reloaded = false;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;try {
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;Theme theme = new 
&lt;/div&gt;SharedThemeFromDir(this.themeDir
&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; + File.separator
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;+ reloadTheme);
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;if (theme != null) {
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;Theme loadedTheme = (Theme)
&lt;br&gt;&amp;gt; themes.get(theme.getId());
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;if (loadedTheme != null
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;&amp; 
&lt;/div&gt;theme.getLastModified()
&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; &amp;nbsp;.after(loadedTheme.getLastModified())) {
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;themes.remove(theme.getId());
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;themes.put(theme.getId(), theme);
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;reloaded = true;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;}
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;}
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;} catch (Throwable unexpected) {
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;log.error(&amp;quot;Problem reloading theme &amp;quot; +
&lt;br&gt;&amp;gt; reloadTheme, unexpected);
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;}
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;return reloaded;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;}
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Modify SharedThemeFromDir to update the last modified in SharedTheme: 
&lt;/div&gt;&amp;nbsp;see
&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; **** Set Last Modified *****
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;/**
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; * Load all the elements of this theme from disk and cache them.
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; */
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;private void loadThemeFromDisk() throws
&lt;br&gt;&amp;gt; ThemeInitializationException {
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;log.debug(&amp;quot;Parsing theme descriptor for &amp;quot; +
&lt;br&gt;&amp;gt; this.themeDir);
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;ThemeMetadata themeMetadata = null;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;try {
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;// lookup theme descriptor and parse it
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;ThemeMetadataParser parser = new
&lt;br&gt;&amp;gt; ThemeMetadataParser();
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;InputStream is = new 
&lt;/div&gt;FileInputStream(this.themeDir
&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; + File.separator
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;+ &amp;quot;theme.xml&amp;quot;);
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;themeMetadata = parser.unmarshall(is);
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;} catch (Exception ex) {
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;throw new ThemeInitializationException(
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;quot;Unable to parse theme descriptor
&lt;br&gt;&amp;gt; for theme &amp;quot;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;+ this.themeDir,
&lt;br&gt;&amp;gt; ex);
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;}
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;log.debug(&amp;quot;Loading Theme &amp;quot; + themeMetadata.getName());
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;// use parsed theme descriptor to load Theme data
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;setId(themeMetadata.getId());
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;setName(themeMetadata.getName());
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;setDescription(themeMetadata.getName());
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;setAuthor(themeMetadata.getAuthor());
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; **** Set Last Modified *****
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;// setLastModified(new Date());
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;setEnabled(true);
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;// load resource representing preview image
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;File previewFile = new File(this.themeDir + 
&lt;/div&gt;File.separator
&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;+ themeMetadata.getPreviewImage());
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;if (!previewFile.exists() || !previewFile.canRead()) {
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;log.warn(&amp;quot;Couldn't read theme [&amp;quot; + this.getName()
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;+ &amp;quot;] preview image file [&amp;quot;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;+ themeMetadata.getPreviewImage()
&lt;br&gt;&amp;gt; + &amp;quot;]&amp;quot;);
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;} else {
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;this.previewImage = new
&lt;br&gt;&amp;gt; SharedThemeResourceFromDir(themeMetadata
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;.getPreviewImage(), previewFile);
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;}
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;// load stylesheet if possible
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;if (themeMetadata.getStylesheet() != null) {
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;ThemeMetadataTemplate stylesheetTmpl =
&lt;br&gt;&amp;gt; themeMetadata
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;.getStylesheet();
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;// construct File object from path
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;File templateFile = new File(this.themeDir +
&lt;br&gt;&amp;gt; File.separator
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;+
&lt;br&gt;&amp;gt; stylesheetTmpl.getContentsFile());
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;// read stylesheet contents
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;String contents = loadTemplateFile(templateFile);
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;if (contents == null) {
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;// if we don't have any contents then 
&lt;/div&gt;skip
&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; this one
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;log.error(&amp;quot;Couldn't load stylesheet theme
&lt;br&gt;&amp;gt; [&amp;quot; + this.getName()
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;+ &amp;quot;] template file [&amp;quot; +
&lt;br&gt;&amp;gt; templateFile + &amp;quot;]&amp;quot;);
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;} else {
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;// construct ThemeTemplate representing
&lt;br&gt;&amp;gt; this file
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;SharedThemeTemplate theme_template = new
&lt;br&gt;&amp;gt; SharedThemeTemplate(
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;this,
&lt;br&gt;&amp;gt; themeMetadata.getId() + &amp;quot;:&amp;quot;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;+
&lt;br&gt;&amp;gt; stylesheetTmpl.getName(),
&lt;br&gt;&amp;gt; &amp;nbsp;WebsiteTemplate.ACTION_CUSTOM,
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;stylesheetTmpl.getName(),
&lt;br&gt;&amp;gt; stylesheetTmpl
&lt;br&gt;&amp;gt; &amp;nbsp;.getDescription(), contents, stylesheetTmpl
&lt;br&gt;&amp;gt; &amp;nbsp;.getLink(), new Date(templateFile
&lt;br&gt;&amp;gt; &amp;nbsp;.lastModified()), stylesheetTmpl
&lt;br&gt;&amp;gt; &amp;nbsp;.getTemplateLanguage(), false, false);
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;// store it
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;this.stylesheet = theme_template;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;// add it to templates list
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;addTemplate(theme_template);
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;}
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;// **** Set Last Modified *****
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;setLastModified(new
&lt;br&gt;&amp;gt; Date(templateFile.lastModified()));
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;}
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;// go through static resources and add them to the theme
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;String resourcePath = null;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;Iterator resourcesIter =
&lt;br&gt;&amp;gt; themeMetadata.getResources().iterator();
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;while (resourcesIter.hasNext()) {
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;resourcePath = (String) resourcesIter.next();
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;// construct ThemeResource object from resource
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;File resourceFile = new File(this.themeDir +
&lt;br&gt;&amp;gt; File.separator
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;+ resourcePath);
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;// Continue reading theme even if problem
&lt;br&gt;&amp;gt; encountered with one file
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;if (!resourceFile.exists() ||
&lt;br&gt;&amp;gt; !resourceFile.canRead()) {
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;log.warn(&amp;quot;Couldn't read &amp;nbsp;theme [&amp;quot; +
&lt;br&gt;&amp;gt; this.getName()
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;+ &amp;quot;] resource file [&amp;quot; +
&lt;br&gt;&amp;gt; resourcePath + &amp;quot;]&amp;quot;);
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;continue;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;}
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;// add it to the theme
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;setResource(resourcePath, new
&lt;br&gt;&amp;gt; SharedThemeResourceFromDir(
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;resourcePath, resourceFile));
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;// **** Set Last Modified *****
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;Date lstModified = new
&lt;br&gt;&amp;gt; Date(resourceFile.lastModified());
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;if (getLastModified() == null
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;||
&lt;br&gt;&amp;gt; lstModified.after(getLastModified())) {
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;setLastModified(lstModified);
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;}
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;}
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;// go through templates and read in contents to a
&lt;br&gt;&amp;gt; ThemeTemplate
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;ThemeTemplate theme_template = null;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;ThemeMetadataTemplate templateMetadata = null;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;Iterator templatesIter =
&lt;br&gt;&amp;gt; themeMetadata.getTemplates().iterator();
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;while (templatesIter.hasNext()) {
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;templateMetadata = (ThemeMetadataTemplate)
&lt;br&gt;&amp;gt; templatesIter.next();
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;// construct File object from path
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;File templateFile = new File(this.themeDir +
&lt;br&gt;&amp;gt; File.separator
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;+
&lt;br&gt;&amp;gt; templateMetadata.getContentsFile());
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;String contents = loadTemplateFile(templateFile);
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;if (contents == null) {
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;// if we don't have any contents then 
&lt;/div&gt;skip
&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; this one
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;throw new
&lt;br&gt;&amp;gt; ThemeInitializationException(&amp;quot;Couldn't load theme [&amp;quot;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;+ this.getName() + &amp;quot;]
&lt;br&gt;&amp;gt; template file [&amp;quot; + templateFile
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;+ &amp;quot;]&amp;quot;);
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;}
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;// construct ThemeTemplate representing this file
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;theme_template = new SharedThemeTemplate(this,
&lt;br&gt;&amp;gt; themeMetadata
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;.getId()
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;+ &amp;quot;:&amp;quot; +
&lt;br&gt;&amp;gt; templateMetadata.getName(), templateMetadata
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;.getAction(),
&lt;br&gt;&amp;gt; templateMetadata.getName(), templateMetadata
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;.getDescription(), contents,
&lt;br&gt;&amp;gt; templateMetadata.getLink(),
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;new
&lt;br&gt;&amp;gt; Date(templateFile.lastModified()), templateMetadata
&lt;br&gt;&amp;gt; &amp;nbsp;.getTemplateLanguage(),
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;templateMetadata.isHidden(),
&lt;br&gt;&amp;gt; templateMetadata.isNavbar());
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;// add it to the theme
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;addTemplate(theme_template);
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;// &amp;nbsp;**** Set Last Modified *****
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;Date lstModified = new
&lt;br&gt;&amp;gt; Date(templateFile.lastModified());
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;if (getLastModified() == null
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;||
&lt;br&gt;&amp;gt; lstModified.after(getLastModified())) {
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;setLastModified(lstModified);
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;}
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;}
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;}
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Then in PageServlet reload the theme and then clear the caches
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; // generate cache key
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;String cacheKey = null;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;if (isSiteWide) {
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;cacheKey = siteWideCache.generateKey(pageRequest);
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;} else {
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;cacheKey = weblogPageCache.generateKey(pageRequest);
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;}
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; // **** Development only. Reload if theme has been modified &amp;nbsp;***
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;if
&lt;br&gt;&amp;gt; (WebloggerConfig.getBooleanProperty(&amp;quot;site.themeReloadMode&amp;quot;)) {
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;try {
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;ThemeManager manager = null;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;manager =
&lt;br&gt;&amp;gt; WebloggerFactory.getWeblogger().getThemeManager();
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;boolean reloaded =
&lt;br&gt;&amp;gt; manager.reLoadThemeFromDisk(website.getEditorTheme());
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;if (reloaded) {
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;if (isSiteWide) {
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;siteWideCache.clear();
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;} else {
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;websitePageCache.clear();
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;}
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;}
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;} catch (Exception e1) {
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;// ignored
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;}
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;}
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp;// cached content checking
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;if ((!this.excludeOwnerPages || !pageRequest.isLoggedIn()) &amp;&amp;
&lt;br&gt;&amp;gt; request.getAttribute(&amp;quot;skipCache&amp;quot;) == null) {
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Cheers Greg
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Share our environment commitment - conserve resources and contribute to 
&lt;/div&gt;the reduction of CO2 emissions by not printing the email unless absolutely 
&lt;br&gt;necessary to do so.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Any opinions expressed are those of the author, not Ricoh UK Ltd. This 
&lt;br&gt;communication does not constitute either offer or acceptance of any 
&lt;br&gt;contractually binding agreement. Such offer or acceptance must be 
&lt;br&gt;communicated in writing. It is the responsibility of the recipient to 
&lt;br&gt;ensure this email and attachments are free from computer viruses before 
&lt;br&gt;use and the sender accepts no responsibility or liability for any such 
&lt;br&gt;computer viruses.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Ricoh UK Ltd. may monitor the content of emails sent and received via 
&lt;br&gt;its network for the purpose of ensuring compliance with its policies and 
&lt;br&gt;procedures. This communication contains information, which may be 
&lt;br&gt;confidential or privileged. The information is intended solely for the use 
&lt;br&gt;of the individual or entity named above. If you are not the intended 
&lt;br&gt;recipient, be aware that any disclosure, copying, distribution or use of 
&lt;br&gt;the contents of this information is prohibited. If you have received this 
&lt;br&gt;communication in error, please notify the sender immediately by return 
&lt;br&gt;email with a copy to &amp;nbsp;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26426648&amp;i=4&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;postmaster@...&lt;/a&gt; . Please contact us on +44 
&lt;br&gt;(0) 208 261 4000 if you need assistance.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Registered in England No: 473236
&lt;br&gt;&amp;gt; VAT No: GB524161280
&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;Share our environment commitment - conserve resources and contribute to the reduction of CO2 emissions by not printing the email unless absolutely necessary to do so. 
&lt;br&gt;&lt;br&gt;Any opinions expressed are those of the author, not Ricoh UK Ltd. This communication does not constitute either offer or acceptance of any contractually binding agreement. Such offer or acceptance must be communicated in writing. It is the responsibility of the recipient to ensure this email and attachments are free from computer viruses before use and the sender accepts no responsibility or liability for any such computer viruses. 
&lt;br&gt;&lt;br&gt;Ricoh UK Ltd. may monitor the content of emails sent and received via its network for the purpose of ensuring compliance with its policies and procedures. This communication contains information, which may be confidential or privileged. The information is intended solely for the use of the individual or entity named above. If you are not the intended recipient, be aware that any disclosure, copying, distribution or use of the contents of this information is prohibited. If you have received this communication in error, please notify the sender immediately by return email with a copy to &amp;nbsp;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26426648&amp;i=5&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;postmaster@...&lt;/a&gt; . Please contact us on +44 (0) 208 261 4000 if you need assistance. 
&lt;br&gt;&lt;br&gt;Registered in England No: 473236 
&lt;br&gt;VAT No: GB524161280 &amp;nbsp;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Roller---Dev-f12277.html&quot; embed=&quot;fixTarget[12277]&quot; target=&quot;_top&quot; &gt;Roller - Dev&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Adding-line-breaks-to-inbound-comments-tp26410105s12275p26426648.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26426539</id>
	<title>Links always going to &quot;localhost&quot;</title>
	<published>2009-11-19T05:45:58Z</published>
	<updated>2009-11-19T05:45:58Z</updated>
	<author>
		<name>Madan, Vishwajit</name>
	</author>
	<content type="html">Hi,
&lt;br&gt;&lt;br&gt;&amp;nbsp;
&lt;br&gt;&lt;br&gt;I have installed Roller 4.0.1 under Tomcat 5.5 and MySQL 5 and created
&lt;br&gt;one sample web blog.
&lt;br&gt;&lt;br&gt;The things are working fine but on the sample page displayed most of
&lt;br&gt;links like &amp;quot;comments&amp;quot; etc are pointing to &amp;quot;localhost&amp;quot;.
&lt;br&gt;&lt;br&gt;Due to this issue I am unable to access all features of blog from other
&lt;br&gt;machine (except hosting machine/localhost).
&lt;br&gt;&lt;br&gt;&amp;nbsp;
&lt;br&gt;&lt;br&gt;Currently I am using &amp;quot;Brushed Metal&amp;quot; theme. Please help me in fixing the
&lt;br&gt;issue.
&lt;br&gt;&lt;br&gt;&amp;nbsp;
&lt;br&gt;&lt;br&gt;Thanks in advance!!
&lt;br&gt;&lt;br&gt;&amp;nbsp;
&lt;br&gt;&lt;br&gt;Regards,
&lt;br&gt;&lt;br&gt;Vishwajit
&lt;br&gt;&lt;br&gt;&amp;nbsp;
&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;Please help Logica to respect the environment by not printing this email &amp;nbsp;/ Pour contribuer comme Logica au respect de l'environnement, merci de ne pas imprimer ce mail / &amp;nbsp;Bitte drucken Sie diese Nachricht nicht aus und helfen Sie so Logica dabei, die Umwelt zu schützen. / &amp;nbsp;Por favor ajude a Logica a respeitar o ambiente nao imprimindo este correio electronico.
&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;This e-mail and any attachment is for authorised use by the intended recipient(s) only. It may contain proprietary material, confidential information and/or be subject to legal privilege. It should not be copied, disclosed to, retained or used by, any other party. If you are not an intended recipient then please promptly delete this e-mail and any attachment and all copies and inform the sender. Thank you.
&lt;br&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Roller---User-f12278.html&quot; embed=&quot;fixTarget[12278]&quot; target=&quot;_top&quot; &gt;Roller - User&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Links-always-going-to-%22localhost%22-tp26426539s12275p26426539.html" />
</entry>

</feed>
