On 16 dec 2010, at 22:24, Ramsey Gurley wrote: > Hi Johan! > > It looks like you really don't need the D2WCustomComponent bit. You can > simply create a dummy property key and use that. For instance, you my have > displayPropertyKeys like: > > 100: qualifier => displayPropertyKeys = (attr1, attr2, myDummyKey, rel1) > > or some such. Then for your custom component, just use > > 100: propertyKey = 'myDummyKey' => componentName = "MyCustomJavascriptThing" > > That should put your component on the page. If the component is > synchronizing, you'll need to implement getter/setter methods for whatever > the repetition passes to your custom component, but beyond that, you're done. > If you want to base your calculations on the entity, you should be able to > get that directly from the d2wContext that the repetition passes in to your > custom component. >
The thing is, these are about 20 properties that have to be calculated per entity and then displayed. I thought it would be handier to use something I already had, and is known not to have errors, instead of creating extra calculation methods with the risk of extra errors, as every extra line of code creatse more errros. I suppose I should be looking at your WOWODC2010 presentations, but unfortunately these are still not available... > Ramsey > > On Dec 16, 2010, at 3:04 PM, Johan Henselmans wrote: > >> >> Here's the idea: >> >> I have a custom component page from somewhere else with javascript that does >> a whole bunch of calculations based on values of an EO. >> >> No problem, I thought, according to the D2W Rules References I follow rule 7: >> >> (http://wiki.objectstyle.org/confluence/display/WO/D2W+Rules+Reference+-+Cookbook+-+FAQ) >> >> 7. How do I easily use my own custom component in a Direct to Web page? >> >> Step 1: >> >> Add the following rules to your rule file: >> >> 100: pageConfiguration = "ListTheEntity" and propertyKey = "theProperty" => >> componentName = "D2WCustomComponent" >> 100: pageConfiguration = "ListTheEntity" and propertyKey = "theProperty" => >> customComponentName = "MyThePropertyComponent" >> >> >> Step 2: >> >> Create a component in your project named 'MyThePropertyComponent' and give >> it an 'object' and 'key' binding. The object will receive the current >> object, and the key will receive the current propertyKey (as a string) from >> DirectToWeb. Do with them what you will. >> >> public >> EOEnterpriseObject object() { >> >> return (EOEnterpriseObject) valueForBinding("object" >> ); >> } >> >> >> public String >> key() { >> >> return (String) valueForBinding("key" >> ); >> } >> >> >> So I add these methods, but removed this propertyKey thingy because I want >> my the entity to be used as the object. >> >> Im my situatiion: >> >> 100: pageConfiguration = "InspectTheEntity" => componentName = >> "D2WCustomComponent" >> 100: pageConfiguration = "InspectTheEntity" => customComponentName = >> "MyNiceJavascriptAndAllPage" >> >> first I had to add some extra methods to this page, because WebObjects >> complained it could not set object and key values, so I added: >> >> public void setObject(EOEnterpriseObject anObject) { >> currentObject = anObject; >> } >> >> public void setKey(String aKey) { >> currentkey = aKey; >> } >> >> But then it displayed the page. >> >> 20 times. >> >> I get a display of my custom page for all the components in the page. So >> component 1 displays a complete empty page, component 2 etc. None of my >> EOEnterprise values are displayed from the EOObject that I selected. >> >> I must be missing something. I understood that the object would pass through >> the current select enterprise object, and I could use that to fill in the >> values in my custom page. Apparently, that is not the case. I tried to find >> some customcomponent in the d2wmodels of BugTracker or ERMoviesDemo, but did >> not find anything over there. >> >> Can someone enlighten me? >> >> Johan Henselmans >> jo...@netsense.nl >> >> >> >> _______________________________________________ >> Do not post admin requests to the list. They will be ignored. >> Webobjects-dev mailing list (Webobjects-dev@lists.apple.com) >> Help/Unsubscribe/Update your Subscription: >> http://lists.apple.com/mailman/options/webobjects-dev/ramsey%40xeotech.com >> >> This email sent to ram...@xeotech.com >> > Johan Henselmans jo...@netsense.nl _______________________________________________ Do not post admin requests to the list. They will be ignored. Webobjects-dev mailing list (Webobjects-dev@lists.apple.com) Help/Unsubscribe/Update your Subscription: http://lists.apple.com/mailman/options/webobjects-dev/archive%40mail-archive.com This email sent to arch...@mail-archive.com