Compound Theory

v2.0

Categories

  1. Transfer
  2. ColdFusion
  3. JRuby
  4. Java
  5. ColdSpring
  6. Squabble
  7. JavaLoader
  8. ColdDoc
  9. 2ddu
  10. AsyncHTTP
  11. OO Analysis and Design
  12. Flex
  13. Railo
  14. XML / XSL
  15. Hibernate
  16. ColdFusion Builder
  17. Fall
  18. Ubuntu
  19. XHTML / CSS
  20. Eclipse
  21. Git
  22. Oracle Database
  23. Usability / UI Design
  24. webDU
  25. cf.Objective()
  26. LWJGL
  27. cf.Objective(ANZ)
  28. Captcha
  29. MAX
  30. Melbourne CFUG
  31. Martial Arts
  32. Random Things
  33. Conduit

Recent Posts

Projects

Recent Comments

11 December 2006 12:35 PM 2 Comments

Speaking at WebDU

Now my name is officially on the list of speakers , I can happily announce that I am talking at the 2007 WebDU conference in Sydney, Australia .

I'm very excited about this, as this is my first time presenting at a conference, and I think this is going to be lots of fun.

Un-surprisingly, I will be presenting on Developing Applictions with Transfer ORM , so please come down and hear me speak, I think you will find it interesting.

But even if you don't hear me speak, come down to the conference.  I've been in previous years, and it's always a great time.

Hope to see you there! 

 WebDU Banner

 

05 December 2006 03:06 PM 2 Comments

Transfer 0.6 Released

After a bit of time in a release candidate, version 0.6 of Transfer is ready to be released.

There is nothing very exciting to report, other than the fact that release candidate saw some critical fixes , so I'm very happy with the choice to do that, and we will see a release pattern much like that in the future.

See the Release Candidate post and full changelog for the new features found in 0.6.

Transfer 0.6 Download

Next on the road map is:

Much thanks to all of those that tested out the Release Candidate, it was very much appreciated!!!

Please remember, there is a mailing list , and a forum , so if you have any feedback, please don't hesitate to send it in. 

01 December 2006 04:37 PM 10 Comments

JavaLoader – The Order in which Libraries are Loaded.

I realised something today, I've been telling something about the JavaLoader that isn't true.

By default, JavaLoader loads the ColdFusion class path as its parent when loading in custom Java libraries.

This means that if JavaLoader can't find a class that you are loading through it via the Jars that you have loaded, it will look to what ColdFusion has loaded to see if it can find it there.

I had always assumed that if you loaded something, say for example, the newer version of log4j with JavaLoader, for the Jars loaded with JavaLoader, they would see the newer version, rather than the older version of log4j with ColdFusion.

This is actually, completely and utterly false. I apologise for all the frustration I probably incurred on people for making this statement.

Reading the Java docs it explicitly says : 'When requested to find a class or resource, a ClassLoader instance will delegate the search for the class or resource to its parent class loader before attempting to find the class or resource itself.'

So this means that when looking for log4j - the one in ColdFusion actually takes precedence!

This makes sense in the Java world, as it allows for less confusion from the Java engine to be able to resolve classes - but from a ColdFusion perspective it makes life very difficult as we don't have the ability to modify what is loaded at application startup as we would if we had written a Java application from scratch.

A workaround for this is to pass Java null into the JavaLoader as a second variable like so:

loader = createObject("component", "JavaLoader").init(paths, JavaCast("null", ""));

This will create a JavaLoader that is not set with ColdFusion as the parent.

I am currently working on JavaLoader 0.3, that will make the precedence on the loaded classes that will solve this problem all up, as well as some parameters to avoid loading the ColdFusion classpath altogether, but I thought I would give people a heads up now to avoid frustration down the road.