If you are reading this, you probably already know about BlogCFC. It's great. This blog is using it. The link is at the bottom of the page and here as well. BlogCFC.
To install BlogCFC on Railo running on BlueOnyx....
Open the client folder and place the contents under /web/
Delete Application.cfc from /web/ which was created when Railo was deployed. BlobCFC uses Application.cfm.
The Application.cfc error was:
key [ISCOLDFUSIONMX7] doesn't exist in struct (keys:applicationname)
The next was:
Table 'scrumhalfdb.tblBlogEntries' doesn't exist
This is because Linux & MySQL is case sensitive. The file blog.cfc around line 1000, function get Archives has tblBlogEntries camel cased when it should be all lowercase. Edit /web/org/Camden/blog/blog.cfc to correct this, convert tblBlogEntries to tblblogentries as the /install/mysql.sql creates the tables.
The blog now works and shows no blog entries.
We have to change the BlogCFC Admin directory because it conflicts with the BlueOnyx Admin. I decided to change my folder name to blogadmin.
Change the admin directory to something else, like blogadmin
A command find and replace /admin/ to /blogadmin/ of just the files in the newly named /blogadmin/ folder, formerly named /admin/.
But when we go to the blogadmin/folder, we get no login, just the body of the initial admin page:
This was because on line 42 of /web/blogadmin/Application.cfm:
1<cfif findNoCase("/admin", cgi.script_name) and not isLoggedIn() and not findNoCase("/blogadmin/notify.cfm", cgi.script_name)>
needs to be
This was missed on the command find and replace because we had a trailing slash (/).
But wait, there's more...
Next you'll find that you cannot edit settings in BlogCFC admin settings. When changing settings in admin/settings.cfm you get an error with Script Name: /blogadmin/settings.cfm?
1Message: /home/.sites/<site #>/site<ID>/web/org/camden/blog/blog.ini.cfm (Permission denied)
This is because of Linux permissions.
/home/.sites/siteNumber/siteID/web/org/ is owned by the site admin and needs to be owned by Tomcat. Change ownership to tomcat:
1chown -R tomcat.site<ID> /home/.sites/<site #>/site<ID>/web/org/
Now you will be able to save settings for BlogCFC.
Next issue to deal with is SES URLs in Tomcat. Because BlogCFC takes advantage of SES URLs adjustments need to be made within Tomcat's web.xml.
Another way around is to disable the SES coding in the BlogCFC code. In this link, http://www.coldfusionjedi.com/forums/messages.cfm?threadid=BB778077-E1D7-BD85-E2A147C3B0F4ECBA , Ray tells us to edit makeCategoryLink which is for categories. makeLink for entries. Those are both in blogcfc. You would also need to edit the categories pod.
Otherwise we can edit Tomcat's web.xml by adding the following:
We have to add the wildcards for both page.cfm and index.cfm. If you add pages to your blog site they are referenced by page.cfm and will fail otherwise.
If you make a mistake here or over experiment with the servlet mappings and url patterns, your site's Tomcat instance will fail to start correctly or even at all.
You will have to restart Tomcat in order for the changes to take effect.
Stopping and starting Tomcat through the BlueOnyx Server Management Tomcat Host Manager Interface results in an error.
HTTP Status 503 - This application is not currently available
type Status report
message This application is not currently available
description The requested service (This application is not currently available) is not currently available.
Therefore, we must Restart Tomcat from the command line for the whole server:
1/sbin/service tomcat5 restart
Don't be too anxious, the shell command line will report Tomcat has started but Railo and everything else has to load too. Wait a couple of more seconds and then test the site.