Galleon and Lighthouse Pro updates

This post is more than 2 years old.

Two quick updates I want to share with my readers. Galleon now includes a private messaging feature. This allows users to send messages to each other. It's pretty simple now, but I'm open to suggestions on how to make it nicer. The second change was a pretty dramatic performance change for large Galleon installs. I hadn't realized how slow Galleon got when the number of messages and threads grew to a large size. This was only evident in the Admin but it was pretty darn bad when it occurred.

The changes to LighthousePro were pretty minor. Clicking on the 'view issue' link in emails was not working correctly. Also, if you hit the bug tracker with an expired session, the application wouldn't send you to the proper URL after authentication.

Enjoy. These releases were brought to you by the number 6 and the letter Y.

Raymond Camden's Picture

About Raymond Camden

Raymond is a senior developer evangelist for Adobe. He focuses on document services, JavaScript, and enterprise cat demos. If you like this article, please consider visiting my Amazon Wishlist or donating via PayPal to show your support. You can even buy me a coffee!

Lafayette, LA https://www.raymondcamden.com

Archived Comments

Comment 1 by MCM posted on 4/21/2010 at 11:44 AM

we've been looking for a forum system for our site for some time and have had quite the trouble finding a solid, simple system with clean url support, built in ColdFusion.

is there a way to empliment clean url support in Galleon within the coldfusion code or at the server level (although that is not ideal except in the case of .cfm removal) and how?

our plan is to replace our site's comments system with the forum system linking each article with a "seeding" of comments from the forum (for that same article entry) with the latest 5 forum comments at the bottom of the article.

clean urls are very important.

Comment 2 by Raymond Camden posted on 4/21/2010 at 10:34 PM

It could be done - but it isn't supported right now.

Comment 3 by Adam Rifat posted on 5/13/2010 at 1:00 AM

Hi,

I have installed LigthousePro but I'm having a few problems with the email setup and config. Is there any documentation or official support forums?

Looks spot on if I can get these features working.

Thanks,

Adam

Comment 4 by Raymond Camden posted on 5/13/2010 at 1:49 AM

Look in the install folder. There should be both a Word doc and a PDF in there. While there isn't a support forum, you can log bugs for it at http://lighthousepro.riafor....

Comment 5 by Adam Rifat posted on 5/13/2010 at 2:19 AM

I see the docs in the install folder.

Basically, any email generated by LHP is not being sent by SMTP on IIS. They all just end up in the Drop folder and just sit there. We're using Railo and the other emails from other websites get through.

Not sure why this might be...

Comment 6 by Raymond Camden posted on 5/13/2010 at 5:28 AM

Does your mail server require authentication?

Comment 7 by Adam Rifat posted on 5/13/2010 at 1:25 PM

Not that I'm aware of. It's just the basic IIS SMTP service with authentication set to anonymous access with no password required. As far as I can see it's set the same as the other sites which do send out email.

LHP is installed on a subdomain not sure if that makes a difference.

I'm not really sure if this is an IIS or a LHP problem...

Comment 8 by Raymond Camden posted on 5/13/2010 at 3:55 PM

Let's remove LHP from the equation. Make a new CFM with a cfmail tag on it and see if you can get mail to yourself.

Comment 9 by Adam Rifat posted on 5/13/2010 at 4:18 PM

I added a test_email.cfm file to the root of my subdomain where LHP is installed and it works fine.

The file consists of a cftry/catch block with a cfmail tag in the try section. I use this to test the emails now and again. As I say seems to work fine from the LHP directory.

I've not got anything in config.xml.cfm for email settings. Would that be a problem?

Comment 10 by Raymond Camden posted on 5/13/2010 at 4:20 PM

No, it shouldn't be. Um, well, I guess I'd say look at the mail logs. CF has good logging for mail issues. You may want to go into the admin and turn on a higher level debugging for the logs as well.

Comment 11 by Adam Rifat posted on 5/13/2010 at 4:28 PM

The only thing that this is running under Railo and not CF.

Can't see anything in the raw server logs. Weird thing is the emails appear in the Drop folder. Not an IIS guru by any stretch so not sure what's going on.

Thanks for your help.

Comment 12 by Adam Rifat posted on 5/13/2010 at 7:35 PM

I got it working by changing the email address. It seems as though the server doesn't like sending out emails for a particular domain. I guess this is an IIS/server issue. Probably need to point the domain at the server or something.

It's all working as it should now though. Thanks!

Comment 13 by Raymond Camden posted on 5/13/2010 at 9:29 PM

Ok, glad you got it!

Comment 14 by Jax posted on 5/20/2010 at 4:19 PM

Hi Ray,

My lighthouse installation only sends out an email to the one who enters a new issue (and/or the one who it's assigned too. How can I get it to send a notification to all users in the project?

Comment 15 by Raymond Camden posted on 5/20/2010 at 10:36 PM

As an admin you can edit the users and set their "Email Projects". THese are projects that they are subscribed too. Users can set this themselves as well.

Comment 16 by jax posted on 5/22/2010 at 12:39 AM

Yeah, that's what I thought as well. However, *only* the reporter of an issue receives an email. The 'assigned to' person as well, if choosen. But that's all.. Any idea's ? Using CF8

Comment 17 by Raymond Camden posted on 5/22/2010 at 12:44 AM

Right - that is by design. The user _must_ choose to get emails (or the admin must set it for him). My thinking is - if I choose to NOT get emails, I don't want any emails - period - issue updated or not. :)

Comment 18 by Randy L Smith posted on 5/27/2014 at 9:47 PM

I wish there was a help forum...

I installed LHP successfully a few years ago and used it for quite a while.

At a new contract now and we decided to load it here to use, but not having the same success.

ModelGlue and ColdSpring are hurting me. Not a big fan of these frameworks, love the KISS method for development.

Here's my error details. Any clues would be greatly appreciated!
The BEANFACTORY argument passed to the init function is not of type coldspring.beans.BeanFactory.
If the component name is specified as a type of this argument, it is possible that either a definition file for the component cannot be found or is not accessible.

The error occurred in D:/inetpub/wwwroot/lighthousepro/coldspring/beans/BeanDefinition.cfc: line 76
Called from D:/inetpub/wwwroot/lighthousepro/coldspring/beans/DefaultXmlBeanFactory.cfc: line 467
Called from D:/inetpub/wwwroot/lighthousepro/coldspring/beans/DefaultXmlBeanFactory.cfc: line 404
Called from D:/inetpub/wwwroot/lighthousepro/coldspring/beans/DefaultXmlBeanFactory.cfc: line 211
Called from D:/inetpub/wwwroot/lighthousepro/coldspring/beans/DefaultXmlBeanFactory.cfc: line 46
Called from D:/inetpub/wwwroot/lighthousepro/ModelGlue/gesture/loading/ColdSpringBootstrapper.cfc: line 78
Called from D:/inetpub/wwwroot/lighthousepro/ModelGlue/gesture/loading/ColdSpringBootstrapper.cfc: line 123
Called from D:/inetpub/wwwroot/lighthousepro/ModelGlue/gesture/loading/ColdSpringBootstrapper.cfc: line 135
Called from D:/inetpub/wwwroot/lighthousepro/ModelGlue/gesture/ModelGlue.cfm: line 72
Called from D:/inetpub/wwwroot/lighthousepro/index.cfm: line 51
74 :
75 :
76 : <cffunction name="init" returntype="coldspring.beans.BeanDefinition" output="false"
77 : hint="Constructor. Creates a new Bean Definition.">
78 : <cfargument name="beanFactory" type="coldspring.beans.BeanFactory" required="true"

Comment 19 by Raymond Camden posted on 5/27/2014 at 9:56 PM

Randy, I moved LHP to github last week and posted a small update. Please be sure you are using that version and if you still have an error, please post the issue there.

https://github.com/cfjedima...

Comment 20 by Randy L Smith posted on 5/27/2014 at 10:26 PM

Wow, you are on top of things! Thanks for the quick reply.

Found https://github.com/almindor... but received a 404 error. Do you have a better URL?

RLS

Comment 21 by Randy L Smith posted on 5/27/2014 at 10:27 PM

Oops! Never mind. Found https://github.com/almindor...

Comment 22 by Randy L Smith posted on 5/27/2014 at 10:29 PM

Sigh. Moving too fast. That last one was not you.

THIS appears to be right, though. Sorry for all the comments and any emails they spawned.

https://github.com/cfjedima...

Comment 23 by Raymond Camden posted on 5/27/2014 at 10:35 PM

You did see I included the link in my comment, right? ;)

Comment 24 by Randy L Smith posted on 5/27/2014 at 11:33 PM

Ray,

No, I did not see the link. Still moving too fast. :-( Typical for me, though. I usually have to do everything 2 or 3 times these days. I usually have to do everything 2 or 3 times these days.

Got much further -- to the login screen. Upon login attempt, received "Invalid Object name 'lh_filters'".

I had loaded the SQL for the "old" version in, then just re-ran your new script over the top of it. The following is the output from doing so. Should I just kill the entire database and start fresh?

(tried using pastebin, it wouldn't send me my authentication email)

Msg 447, Level 16, State 1, Line 2
Expression type tinyint is invalid for COLLATE clause.
Msg 4902, Level 16, State 1, Line 2
Cannot find the object "dbo.lh_issues" because it does not exist or you do not have permissions.

(1 row(s) affected)

(1 row(s) affected)

(1 row(s) affected)

(1 row(s) affected)

(1 row(s) affected)

(1 row(s) affected)

(1 row(s) affected)

(1 row(s) affected)

(1 row(s) affected)

(1 row(s) affected)

(1 row(s) affected)

(1 row(s) affected)

(1 row(s) affected)

(1 row(s) affected)

(1 row(s) affected)

(1 row(s) affected)

(1 row(s) affected)
Msg 2714, Level 16, State 6, Line 26
There is already an object named 'lh_milestones' in the database.
Msg 447, Level 16, State 1, Line 2
Expression type tinyint is invalid for COLLATE clause.
Msg 4902, Level 16, State 1, Line 2
Cannot find the object "dbo.lh_filters" because it does not exist or you do not have permissions.

Comment 25 by Raymond Camden posted on 5/27/2014 at 11:54 PM

I'd start fresh with a new db.

Comment 26 by Randy L Smith posted on 5/28/2014 at 12:56 AM

Ray,

It was balking on creating the collate with tinyint in the lh_filters.archived column, so I removed the collate information from there, figuring the "tinyint" was going to be more important than the collate conversion.

Next round it gave me this (error message below), indicating a problem with parameter 3. Turns out it was a double-whammy due to (1) the same error regarding collate in the lh_issues table caused lh_issues to not be created, and (2) this clause in IssueGateway.cfc ('or i.archived is <cfqueryparam cfsqltype="cf_sql_bit" null=true>') didn't evaluate to "IS NULL" well. I changed the latter to a hard-coded "or i.archived is NULL" and the system is now working fine and dandy.

Thanks for your help!
RLS

**** error message mentioned above ****

Message Error Executing Database Query.
Detail [Macromedia][SQLServer JDBC Driver][SQLServer]Incorrect syntax near '@P3'.
Extended Info
Tag Context D:\inetpub\wwwroot\lighthousepro\model\IssueGateway.cfc (158)
D:\inetpub\wwwroot\lighthousepro\model\IssueService.cfc (35)
D:\inetpub\wwwroot\lighthousepro\controller\IssueController.cfc (470)
D:\inetpub\wwwroot\lighthousepro\modelglue\ModelGlue\gesture\eventrequest\EventContext.cfc (326)
D:\inetpub\wwwroot\lighthousepro\modelglue\ModelGlue\gesture\eventrequest\EventContext.cfc (253)
D:\inetpub\wwwroot\lighthousepro\modelglue\ModelGlue\gesture\eventrequest\phase\Invocation.cfc (91)
D:\inetpub\wwwroot\lighthousepro\modelglue\ModelGlue\gesture\eventrequest\EventContext.cfc (180)
D:\inetpub\wwwroot\lighthousepro\modelglue\ModelGlue\gesture\ModelGlue.cfc (243)
D:\inetpub\wwwroot\lighthousepro\modelglue\ModelGlue\gesture\ModelGlue.cfm (83)
D:\inetpub\wwwroot\lighthousepro\index.cfm (51)

Comment 27 by Raymond Camden posted on 5/28/2014 at 1:00 AM

Ok, glad you got it working!

Comment 28 by Randy L Smith posted on 5/29/2014 at 6:35 PM

Ray, my client would like to add some columns to the form and database to track more information on which customer put in a request, etc, so that we can get back to them when the issue is resolved.

Before I dive in and do this myself, I'm just checking to see if you have something already built in to do customization like that. I'm guessing not, but every time I need a solution, you surprise me by having been there 5 or 10 years before me, so I thought I'd check.

Thanks! RLS

Comment 29 by Raymond Camden posted on 5/29/2014 at 6:37 PM

Nope, those properties do not exist in LHP. I could see "Requested By" being a good addition, and would love to see someone submit that mod. As for the other ones, it would depend of course.

Comment 30 by Randy L Smith posted on 5/29/2014 at 6:59 PM

I have not been an active "open source" contributor anywhere, mostly heads-down custom stuff for private companies.

When I do this for us, where/how do I submit such a modification? Probably just need the URL.

Comment 31 by Raymond Camden posted on 5/29/2014 at 7:04 PM

You would need to fork the repo and submit a PR. Repo url is in the comments above.

Comment 32 by Randy L Smith posted on 5/29/2014 at 7:17 PM

Beautomous, thanks. I'll grab that right away.

Comment 33 by Raymond Camden posted on 5/29/2014 at 7:21 PM

I'd recommend going slow. As I said, that one prop sounded like a good idea. If you have 5 in mind, it may be best to add one, do the PR, let me approve, then consider what to do next. Ie, I'd have to reject your PR if you added 5 props and one doesn't make sense to me.

You should probably file these as bug reports. Ie, one bug report per field. Then I can give you my opinion. And to be clear, you are free to add ANYTHING you want of course - that's how OS works. But if you want to contribute back, filing the Issues may help track/organize/etc/etc.

Comment 34 by Randy L Smith posted on 5/29/2014 at 7:36 PM

Noted, thanks. I have forked it and downloaded the source. It may be a week or three before I begin working on this (priorities), but I'm loaded for bear and ready to roll when the time comes.

Comment 35 by UpstateWeb posted on 7/16/2014 at 3:06 AM

Randy L. Smith,

I am getting the same error as you noted in this blog:

Message Error Executing Database Query.
Detail [Macromedia][SQLServer JDBC Driver][SQLServer]Incorrect syntax near '@P3'.

I was wondering if you found a solution. I am using MSSQL.