Personal tools

Views

Talk:Cairngorm

From Adobe Labs

Table of contents
[edit]

Welcome!

Welcome to the Cairngorm discussion page on Adobe Labs. Please enter your comments regarding this technology here. To help identify the author of comments, please create a new section and use ~~~~ at the end of your talk entries to automatically create a signature. Click Edit above to see the source of this comment for an example.

Comments should be added in list format, but feel free to add your comment under an existing comment to follow a thread structure. If you are responding to a thread, please use the H3 style for your subject (=== TEXT ===) so that the page is easier to read.

Daniel T 12:46, 28 Jun 2006 (PDT)

[edit]

Adding Cairngorm to a Project

via Simon Barber:

Ben
bclinkinbeard 08:43, 29 Jun 2006 (PDT)

[edit]

Useful Examples

Alex Uhlmann has posted some great examples on his blog.

ChivertonT 01:40, 7 Aug 2006 (PDT)

[edit]

Would you like to see content added to the wiki ?

If there is any content that you would like to see us add to the Wiki, you have edit rights on this discussion section - we will continually review the content that you all add here, and promote it into the main Wiki on a regular basis.

steven_webster 03:04, 7 Aug 2006 (PDT)

- I'd like to see a discussion of how to UnitTest a Cairngorm application. I think it'd be worthwhile, since most of the methods return void.

(PS: I hope I'm doing this right...)

matt_grande 16:39, 5 Jun 2007 (EST)

[edit]

IModelLocator?

Should the interface com.adobe.cairngorm.model.ModelLocator be com.adobe.cairngorm.model.IModelLocator (with an I ) to be consistent with the new naming conventions in Flex 2?

sparky1962 15:33, 23 Aug 2006 (PDT)

The history of Cairngorm is that it originated from the time when our coding standards did not prefix all interfaces with an I. eg, Command rather than ICommand. This pre-dates the public existance of Flex. Going forward, we may consider making the Cairngorm framework consistent with the Flex Framework, as far as class naming standards go, but we have to be aware of backward compatability.

Alistair McLeod 10:53, 29 Aug 2006 (PDT)

Alistair, I agree on backward compatibilty but what about new applications? Can't we deprecate this for now, similar to Command interface and introduce new interface IModelLocator for future applications. I think now is the correct time to rename this instead of waiting and correct this in future release.

--Nischal 23:30, 30 Nov 2006 (PST)

[edit]

Application Structure

Hello

I am one of many developers (it seems) who have been discussing the use of Cairngorm in modular Flex applications. ie: Using multiple library components to store precompiled parts of an application, whilst still using the Cairngorm framework. As in this thread: http://tech.groups.yahoo.com/group/flexcoders/message/51523

Are there any plans to release a definitive example/documentation on how to structure these applications?

Keep up the good work!

Russell Munro
lownlazy00 3:03, 12 Oct 2006 (PDT)

Hi Russell,

We hear these questions, and this is on our list as examples we'd like to put out there. There are community ideas behind this too, so keep checking FlexCoders for ideas.

Alistair McLeod 10:56, 13 Oct 2006 (PDT)

[edit]

Questions about links

In the Cairngorm article numerous links are made to the iterationtwo.com site. All my attempts over a long period of time have shown that site to be down/closed or something. Are there alternate places we can view this info at?

Christopher
HendersonChristopher 21:58, 25 Oct 2006 (PDT)

[edit]

Correction/Addition for Installation Instructions

Hi,

It appears that the installation instructions are incomplete or, rather, don't work for an FDS compile-on-server project.

I refer to the instructions found here:

http://labs.adobe.com/wiki/index.php/Cairngorm#Installation_Instructions

When I go to Properties | Flex Build Path all the buttons are grayed out, including the Add SWC button.

I'm guessing that this is because this is a compile-on-server project and you actually want me to put the .swc into /WEB-INF/flex/libs/. At least that's what I've done, and it works.

If that is the correct route it would be helpful to add it to the Wiki.

If not, I'd love some feedback on what it is that I don't understand.

BTW, overall, great work! It's nice to have some architectural guidance.

Thanks,

Douglas McCarroll 20:57, 3 Nov 2006 (PDT)

[edit]

WebService invocations not working and Unable to resolve a class for ResourceBundle: CairngormMessages and

Hi,

I am trying to import Cairngorm 2.1 to my workspace, and receive an error: "Unable to resolve a class for ResourceBundle: CairngormMessages".

Also, the reason for me importing Cairngorm is to modify the ServiceLocator to work properly with Web services. Because service locator is not calling loadWSDL(), operations are not invoked. Below is the modification, but I haven't been able to test it because I can't recompile the SWC.

Thanks to Ben Clinkinbeard for brining to my attention that loadWSDL will be called more than once, so I'll prevent that with a dictionary.

  . . .
  private var loadedWSDL: Dictionary;
  . . .
  public function getWebService( serviceId : String ) : WebService
  {
  
     var webService:WebService = 
              WebService( getServiceForId( serviceId ) );
  
     if(loadedWSDL[serviceId] != true)
     { 
        webService.loadWSDL();
        // You may opt to move the line below
        //  to a LOAD event handler
        loadedWSDL[serviceId] = true;  
     }
  
     return webService;
  
  }


If you could please shed some light into why I am getting the Resource Bundle error, I would appreciate it.


Thanks,

Bruce Leggett 17:48, 6 Nov 2006 (CDT)

Douglas,

Did you ever find a solution to the Resource Bundle error? I got everything to compile by importing the Cairngorm , but now I keep getting the same Resource Bundle error.

Thank you, Sean Sawka

ssawka 04:16, 27 Nov 2006 (PDT)

I would also love to hear more about why this error occurs, but the error went away for me by using the Cairngorm swc instead adding the Cairngorm files to your project in their source form.

Regards, Chris

---=---=---=---=---=---=---=---=

Regarding the ResourceBundle error for CG 2.1, this is usually caused by the compiler not being able to find the locale/en_US/ CairngormMessages.properties file. First, make sure that the 'locale' directory is at the root of your project and then that you have the Project > Properties > Flex Compiler > compiler arguments set so that it can find it.

ex: -source-path+=locale/{locale} -locale=en_US

Hope that helps,

Patrick Keating - Bluefire Productions


---=---=---=---=---=---=---=---=

Bruce's suggested change, listed later on this page, fixed the very same CairngormMessages.properties file error I was having without explicitly adding the file properties file to my source path or project.

Jeffry Houser DotComIt



I solved the CairngormMessages error by including the following in the "additional compiler arguments" field in the Flex project properties:

-locale en_US -source-path=locale/{locale} -allow-source-path-overlap=true

This is from the following page in Flex Builder 3 Beta 2 help: http://livedocs.adobe.com/labs/flex3/html/l10n_03.html

[edit]

ServiceLocator xml namespace must change

Just FYI, the Services.mxml file containing the services for you applicaiton (HTTPService, RemoteObject, WebService, etc) needs to have the xmlns:cairngorm="http://www.adobe.com/2006/cairngorm" changed to xmlns="com.adobe.cairngorm.business.*". Basically, it needs to reference the package now since ServiceLocator is no longer a component. This is a *breaking* change from version 2.0 to 2.1.

Kind Regards,

Bruce Leggett 16:00, 8 Nov 2006 (CDT)

[edit]

A simple Cairngorm Store with no Flex Data Services/Java

hi,

If you are having hard times installing the Cairngorm Store I have developed a Modified Cairngorm Store with Business Delegate Mockups that doesn't require any backend. This is an easy to download and easy to install example with a readme file that walks you through the installation (very simple).

you can download it from here : [1]

Enjoy,

Chen Bekor [2]

Software Architect Eyeblaster

[edit]

Cairngorm SWC Build files

Hello,

I would like to make my own custom Cairngorm SWC to use as an RSL. Is it possible for you to document the compc.exe and Cairngorm Linker files so I can compile it myself?

Also, if I use the SWC that is distributed with Cairngorm 2.1 as an RSL, I get a debug error with the debug version of flash player (Flex 2.01), but not with the end user version.

Thanks,

Todd Anderson

[edit]

Good Resources

For those who aren't aware, there's a wonderful site dedicated to documenting Cairngorm and providing examples:

http://www.cairngormdocs.org/

Check the blog for links to lots of examples posted by folks around the community. There's also an associated mailing list:

http://tech.groups.yahoo.com/group/cairngorm-documentation/

The list gets a reasonable amount of traffic. Quite a bit of it is actually requests for Cairngorm help, which is a bit off-topic for that list (which should just focus on documentation and examples). Personally I'd like to see those issues posted on the list specifically devoted to Cairngorm development:

[http://tech.groups.yahoo.com/group/cairngorm-devel/

(Actually this list, judging by the description, was originally intended for people developing the framework back when it was open source, but it's really always been a forum for people implementing Cairngorm in their own projects.)

[edit]

using cairngorm.swc 2.2 with flexbuilder 3 beta 2 disables the flexProperies panel

using cairngorm.swc 2.2 with flexbuilder 3 beta 2 disables the flexProperies panel. I think this is because it was compiled with the old sdk for flex 2.

[edit]

Working with several contexts in large applications

I had to develop a big application with several modules. In this application, I use several times the same "component" in different modules. To be able to handle this, I had to create the notion of "context" in Cairngorm, so a component is instantiated in a particular context. It means that my events,commands, servicelocator and modellocator are attached to a specific context. The CairngormEventDispatcher is aware of the context, then an event dispatched in a context is only listened by components/commands of the same context. I also have an instance of the FrontController per context. In my main.mxml, I change the context when I change the module (the notion of context is then only visible in the main.mxml, not in the module/components, so you conitnue programming a module/component in a normal way). It would be good to have this notion of context by default in Cairngorm (I only had to replace some code in the CairgormEventDispatcher class).


[edit]

Cairngorm.swc 2.2.1 with flexbuilder 3 Module Integration Question

Has the Module integration been dealt with in the released version or is there a specific thread to follow for implementation of CG and Modules?

There are several flavors of "fixes" out there, just wanting to follow the most specific Cairngorm path. Thanks

Retrieved from "http://labs.adobe.com/wiki/index.php/Talk:Cairngorm"