Jun 14 2006

Model-Glue:Unity Public Beta 1 is Available

Posted by Joe Rinehart at 10:13 PM
27 comments
- Categories: Model-Glue

I'm proud to announce that I've applied the "Public Beta 1" label to revision 161 of Model-Glue:Unity. It is available for download at http://www.model-glue.com/downloads.cfm. This version introduces automatically generated Models, codeless data access, and scaffolding. It is still very easy to learn and use. Documentation

The longest delay in releasing the framework publicly has been documentation. The XML and CFC APIs of the framework are now fully documented, the Quickstart has been rewritten, and a series of friendly "How-To" guides for common tasks are underway. The new, souped-up documentation is available at http://docs.model-glue.com/.

Keeping with tradition, they still start with "Don't Panic!" Seriously, don't. The new stuff is super easy to learn.

Bug Reporting

There is now an official site at which to report framework issues. Please report any and all problems to http://trac.model-glue.com - even installation issues. If something is hard, I want to hear about it. Model-Glue is the ColdFusion framework for everyday ColdFusion programmers, and it should be easy to use.

Upgrading

One goal of the beta is to insure that upgrades are seamless. You should be able to run an existing 1.x application without modification, simply by changing your Model-Glue mapping to the new version (or overwriting your old copy of Model-Glue).

However, I'm sure something is broken, somewhere - it's just that none of the alpha testers or myself are able to find it.

Naming

Up to this point, "Unity" has been the code name for "2.0," but the term has stuck. The term "Model-Glue:Unity" will refer to the 2.0 core that incorporates ColdSpring and native object-relational mapping capabilities.

Reactor

As is, Reactor is bundled with the download, and is the default Object Relational Mapping framework for Model-Glue:Unity. It is possible to support others, but would require creating a custom adapter, DataController, and scaffold .XSL files.

Next Steps

In between presenting (I have seven presentations in the next two weeks, four of them on Model-Glue:Unity), I'll be working on a new Model-Glue.com, finding bugs, and fixing them as soon as they pop up.

Comments

Rob Gonda

Rob Gonda wrote on 06/14/06 10:37 PM

This is amazing! The ColdFusion community owes you.

Cheers.

~Rob
Edward T

Edward T wrote on 06/15/06 12:22 AM

I second that - Joe, THANK YOU!!
All the best.
Callum

Callum wrote on 06/15/06 12:46 AM

Woo Hoo !!

Go you good thing !!
Damon Gentry

Damon Gentry wrote on 06/15/06 1:42 AM

Joe. Thanks for all your hard work on this. You'll have to let me buy you a fermented beverate at CFUNITED.
Lola Lee Beno

Lola Lee Beno wrote on 06/15/06 6:39 AM

Thanks for the hard work! I'm really enjoying this version, and I especially appreciate the documentation. It's helped answer some questions I had about MG.
Scott

Scott wrote on 06/15/06 9:08 AM

Joe, you are my hero. New documentation and everything. Thank you for all the hard work.
Diarmuid King

Diarmuid King wrote on 06/15/06 9:31 AM

Model-Glue in general, and especially the 2.0 version look great. Thanks for all your hard work and generosity Joe.

Diarmuid
Danny Jung

Danny Jung wrote on 06/15/06 10:40 AM

Great stuff Joe--the CF Community is indebted to you. Do you have a wishlist, or is there simply a standing request for cinderblocks?
Tony Petruzzi

Tony Petruzzi wrote on 06/15/06 2:30 PM

Joe or anyone that can help.

I'm playing with Unity right now, trying to get it setup. I'm getting a ColdSpring error that I can't get around. I've download the stable realease of ColdSpring and I read in a forum somewhere that you need the bleeding edge version in order to get it to work with Reactor.

By any chance could you just please add the ColdSpring and Reactor files to Unity so we don't have to site here and hunt around for these files. I have no idea how to connect to CVS and I'm sure that most people don't either (I use subversion).

This is really going to hinder poeple seeing the power of Unity.
Brian

Brian wrote on 06/15/06 3:07 PM

I agree -- I just pulled down the app, and no ColdSpring...Unity?
Sami Hoda

Sami Hoda wrote on 06/15/06 3:09 PM

*thud*
Tony Petruzzi

Tony Petruzzi wrote on 06/15/06 4:17 PM

I actually found the place to download the RC candidate:

http://www.coldspringframework.org/index.cfm?objectid=95AAEC53-BC65-5B97-1706F209899047DA

Got that installed to get pass the error I was getting and STILL it saids:

Not using an ORM adapter. You will not be able to do automatic database functions.

This is SO fustrating. I understand that this is BETA but as it is right now, this realease isn't selling me. I've been at this for the last 3 hours. All I want to do is to point Unity at my database and have to scafold a table so I can jump up and down like a school girl. At this point it doesn't look like this will ever happen.
Az

Az wrote on 06/15/06 4:34 PM

Tony,

It sounds like the framework isn't able to access the Reactor framework.

This framework is bundled in the download package.

You should copy the contents of /Reactor/reactor folder inside the zip file to the location that ColdFusion will see as /Reactor so the objects can be instantiated properly. You may need to add a mapping through the ColdFusion administrator for this to function properly in some instances.

Hope that helps...
cb

cb wrote on 06/16/06 12:24 AM

Tony,

I was having a similar problem earlier today, but found that there must have been some leftover reference to 'modelglueapplicationtemplate' in the default files. Try doing a find/replace for 'modelglueapplicationtemplate' and replace with your app name. This worked for me.

On another note, Joe, i seemed to find today that MG:Unity w/ Reactor and ColdSpring doesn't play nice w/ ColdFusion MX6.1. Gave me the old *You have attempted to dereference a scalar variable of type class [Ljava.lang.Object; as a structure with members* error on two different servers, but worked fine on CFMX7.

Great job on this framework. Especially the quickstart. It's the best i've seen in 10 years. It even got this old crusty old-school programmer (coming back to CF after a long absence) quickly into the framework! Keep up the great work!
Benoit Hediard

Benoit Hediard wrote on 06/16/06 5:10 AM

Just installed this beta and tried to run our app.
I've got the following error:
Bean creation exception during init() of ModelGlue.unity.eventhandler.EventHandlerFactory
The method 'getBean' could not be found in component D:ApplicationswwwrootColdSpringmodelglueModelGlueBeanFactoryAdapter.cfc.

The error occurred in D:ApplicationswwwrootColdSpringeansDefaultXmlBeanFactory.cfc: line 539

Indeed, there is no getBean() method current ColdSpring Release Candidate?

FYI, we are manually loading the several ColdSpring config files and then manually defining the MG Bean factory :
<cfset mgAdapterFactory = createObject("component","coldspring.modelglue.ModelGlueBeanFactoryAdapter").init()/>
   <cfset mgAdapterFactory.setBeanFactory(application.beanFactory) />
   <cfset arguments.modelGlue.setBeanFactory(mgAdapterFactory) />
   
Joe Rinehart

Joe Rinehart wrote on 06/16/06 7:16 AM

Hey CB, all,

First, thanks for all the good comments.

Second, I'll be hunting down a 6.1 install this weekend. I've had a tester successfully use it w/o Reactor, but I haven't done a full scaffolding test on 6.1, which I really should.

If anyone has the install .exe laying around, could you let me know? It'll save me a lot of searching.
David Betz

David Betz wrote on 06/16/06 11:41 AM

Joe,

As it happens, I have a 6.1 installer sitting right here on my desktop. If you'd like to send me an email offline, I can give you info to FTP a copy (too big to email, obviously).

BTW, I really enjoyed your Adobe Developer Week presentation.
Joe Rinehart

Joe Rinehart wrote on 06/16/06 12:56 PM

Thanks David.

Someone (gently) pointed out to me that you can still DL 6.1 from Adobe.com - it's happily running in a separate JRun instance right now.
DerekP.

DerekP. wrote on 06/17/06 3:18 PM

amazing work, I just got it running and I have 2 questions.

1. How to I connect a datasource to my model glue app? Is there a proper way to do this?


2. Is it possible to rename the URL variable ?event= to something like ?go= or something?
Jeff

Jeff wrote on 06/18/06 9:35 AM

Joe, You #%@*in ROCK man!
newbie

newbie wrote on 06/18/06 11:18 PM

Bean creation exception during init() of ModelGlue.unity.eventhandler.EventHandlerFactory
Bean creation exception during init() of ModelGlue.unity.orm.ReactorAdapter

The error occurred in C:InetpubwwwrootcoldspringeansDefaultXmlBeanFactory.cfc: line 539
Called from C:InetpubwwwrootcoldspringeansDefaultXmlBeanFactory.cfc: line 332
Called from C:InetpubwwwrootModelGlueunityloaderXmlConfigurationLoader.cfc: line 16
Called from C:InetpubwwwrootModelGlueunityloaderXmlConfigurationLoader.cfc: line 317
Called from C:InetpubwwwrootModelGlueunityloaderXmlConfigurationLoader.cfc: line 47
Called from C:InetpubwwwrootModelGlueunityloaderFrameworkLoader.cfc: line 60
Called from C:InetpubwwwrootModelGlueunityModelGlue.cfm: line 37
Called from F:www.reactorblog.commodelglueapplicationtemplateindex.cfm: line 33

537 :                         <cfthrow type="coldspring.beanCreationException"
538 :                            message="Bean creation exception during init() of #beanDef.getBeanClass()#"
539 :                            detail="#cfcatch.message#">
540 :                      </cfcatch>
541 :                   </cftry>


doug sims

doug sims wrote on 06/19/06 11:34 AM

DerickP:

to change the event name,
change the eventValue field in the MG config section of coldspring.xml:

<property name="eventValue"><value>go</value></property>

Doug
dan

dan wrote on 06/22/06 7:28 PM

Does anyone have any example applications using unity? I am not that famaliar with reactor or coldspring and I am not sure where or how my objects are instantiated or created. Thanks!
Rick

Rick wrote on 07/05/06 2:59 PM

So.... if I'm gonna learn Model Glue, should I just start with Unity, or would it be better for me to start with a nice stable production build?
Jeff

Jeff wrote on 07/05/06 6:36 PM

Rick,

Let me just say, most people recommend that you use stable build for production purposes. I however have been using MG2: Unity since it's first public availability on many of my production apps. Besides, if you're going to be using it to learn, is best if you start learning with the Bleeding Edge release as it is the one you will most likely be working with once you figure it out. Let me just say Unity! Unity! Unity!

~Jeff
Shimju David

Shimju David wrote on 07/08/06 3:56 AM

Hello Joe,

Iam a great fan of MG 1.0 framework and all our latest projects are developed using it. But after reviewing the new automated features of MG2.0 framework, I am bit reluctant to use it (only those) and recommend it to my co-developers. What Iam worrying is that automation will affect the flexibility of code and there by maintaining it later will be nightmare? A fear of ?Loss of Control? on my own coding!
Is there anybody felt the same?
mik

mik wrote on 05/12/07 5:56 PM

Solution: Not using an ORM adapter. You will not be able to do automatic database functions.
I dont know if you got it solved already but I had a wrong mapping on the reactor path, changing it from ModelGlueReactor to ModelGlueReactoreactor let coldspring access the reactorframework.

Write your comment



(it will not be displayed)