but of course in this case, session.theReportKeys is an NSDictionary or NSSet, no? Something that has keys, and values. Not just a string
Ted On Jun 25, 2013, at 11:19 AM, James Cicenia <[email protected]> wrote: > > I don't know but this worked for me: > > 100 : pageConfiguration like 'List*' => displayPropertyKeys = > "session.theReportKeys" [ERDDelayedKeyValueAssignment] > > On Jun 25, 2013, at 10:07 AM, Markus Ruggiero <[email protected]> > wrote: > >> >> On 25.06.2013, at 09:37, Theodore Petrosky <[email protected]> wrote: >> >>> You are trying to override the propertyKeys that the context has for list >>> or edit page? >>> >> >> Yes, that's exactly what I want. >> Background: >> On a D2WQueryPage I have one custom query property. The user can create >> quite a complex query based on (almost) random selection of query criteria. >> I have everything working, query does what it should do and finds the >> correct resulting objects. Then these are displayed with a standard >> D2WListPage. The customer wants the displayPropertyKeys to reflect the query >> criteria. There are way too many combinations so I cannot just have a couple >> of rule based ready-made displayPropertyKey arrays. So my idea was to build >> the array dynamically inside the custom property level component, because >> that is the only place where I know exactly what properties should be in the >> resulting list page. Of course I could create my own custom ListPage and >> build the list in code, but I always think D2W and the computer are being >> "payed" to work thus they should do the work, not me! >> >> Thanks for any help >> ---markus--- >> >> >>> Ted >>> >>> On Jun 25, 2013, at 7:57 AM, Markus Ruggiero <[email protected]> >>> wrote: >>> >>>> Folks, >>>> >>>> I need to have a dynamically populated displayPropertyKeys for a list >>>> page. I was trying a couple things and eventually got the following tip. >>>> Unfortunately it seems not to work >>>> >>>> In Session.java >>>> >>>> private NSArray<String> listElectronicDocumentDisplayPropertyKeys; >>>> >>>> public void setListElectronicDocumentDisplayPropertyKeys(NSArray<String> >>>> keyArray) { >>>> listElectronicDocumentDisplayPropertyKeys = keyArray >>>> } >>>> >>>> public NSArray<String> listElectronicDocumentDisplayPropertyKeys() { >>>> return listElectronicDocumentDisplayPropertyKeys; >>>> } >>>> >>>> >>>> With the following rule: >>>> >>>> 100 : pageConfiguration = 'ListElectronicDocument' => displayPropertyKeys >>>> = session.listElectronicDocumentDisplayPropertyKeys >>>> [com.webobjects.directtoweb.DelayedKeyValueAssignment] >>>> >>>> All I get is a nice crash :-( >>>> >>>> Jun 25 10:21:46 ec_admin[12000] DEBUG NSLog - ****** fire : 100 : >>>> (pageConfiguration = 'ListElectronicDocument') => displayPropertyKeys = >>>> session.listElectronicDocumentDisplayPropertyKeys >>>> [com.webobjects.directtoweb.DelayedKeyValueAssignment] (100501) >>>> Jun 25 10:21:46 ec_admin[12000] WARN NSLog - >>>> <er.extensions.appserver.ERXComponentRequestHandler>: Exception occurred >>>> while handling request: >>>> java.lang.ClassCastException: java.lang.String cannot be cast to >>>> com.webobjects.foundation.NSArray >>>> [2013-6-25 10:21:46 CEST] <WorkerThread12> java.lang.ClassCastException: >>>> java.lang.String cannot be cast to com.webobjects.foundation.NSArray >>>> at >>>> er.directtoweb.pages.ERD2WListPage.sortOrderings(ERD2WListPage.java:432) >>>> at er.directtoweb.pages.ERD2WListPage.setupPhase(ERD2WListPage.java:563) >>>> at >>>> er.directtoweb.pages.ERD2WListPage.appendToResponse(ERD2WListPage.java:498) >>>> at >>>> com.webobjects.appserver.WOSession.appendToResponse(WOSession.java:1385) >>>> at >>>> er.extensions.appserver.ERXSession.appendToResponse(ERXSession.java:571) >>>> at >>>> com.webobjects.appserver.WOApplication.appendToResponse(WOApplication.java:1794) >>>> at >>>> er.extensions.appserver.ERXApplication.appendToResponse(ERXApplication.java:2005) >>>> at >>>> er.extensions.appserver.ERXComponentRequestHandler._dispatchWithPreparedPage(ERXComponentRequestHandler.java:190) >>>> at >>>> er.extensions.appserver.ERXComponentRequestHandler._dispatchWithPreparedSession(ERXComponentRequestHandler.java:235) >>>> at >>>> er.extensions.appserver.ERXComponentRequestHandler._dispatchWithPreparedApplication(ERXComponentRequestHandler.java:268) >>>> at >>>> er.extensions.appserver.ERXComponentRequestHandler._handleRequest(ERXComponentRequestHandler.java:302) >>>> at >>>> er.extensions.appserver.ERXComponentRequestHandler.handleRequest(ERXComponentRequestHandler.java:375) >>>> at >>>> com.webobjects.appserver.WOApplication.dispatchRequest(WOApplication.java:1687) >>>> at >>>> er.extensions.appserver.ERXApplication.dispatchRequestImmediately(ERXApplication.java:2109) >>>> at >>>> er.extensions.appserver.ERXApplication.dispatchRequest(ERXApplication.java:2074) >>>> at com.dsm.ec_admin.Application.dispatchRequest(Application.java:271) >>>> at >>>> com.webobjects.appserver._private.WOWorkerThread.runOnce(WOWorkerThread.java:144) >>>> at >>>> com.webobjects.appserver._private.WOWorkerThread.run(WOWorkerThread.java:226) >>>> at java.lang.Thread.run(Thread.java:680) >>>> >>>> I can sort of understand what is going on: D2W thinks that >>>> session.listElectronicDocumentDisplayPropertyKeys is a string instead of >>>> evaluating it. But isn't the rule system supposed to recursively resolve >>>> this? >>>> >>>> Any other idea? Or would I have to meddle with ER2DWListPage.java? >>>> >>>> Thanks for any quick answer >>>> >>>> ---markus--- >>>> >>>> >>>> >>>> >>>> Markus Ruggiero >>>> [email protected] >>>> Check out the new book about Project Wonder and WebObjects on >>>> http://learningthewonders.com/ >>>> >>>> >>>> >>>> >>>> >>>> >>>> _______________________________________________ >>>> Do not post admin requests to the list. They will be ignored. >>>> Webobjects-dev mailing list ([email protected]) >>>> Help/Unsubscribe/Update your Subscription: >>>> https://lists.apple.com/mailman/options/webobjects-dev/tedpet5%40yahoo.com >>>> >>>> This email sent to [email protected] >>> >> >> _______________________________________________ >> Do not post admin requests to the list. They will be ignored. >> Webobjects-dev mailing list ([email protected]) >> Help/Unsubscribe/Update your Subscription: >> https://lists.apple.com/mailman/options/webobjects-dev/james%40jimijon.com >> >> This email sent to [email protected] > > _______________________________________________ > Do not post admin requests to the list. They will be ignored. > Webobjects-dev mailing list ([email protected]) > Help/Unsubscribe/Update your Subscription: > https://lists.apple.com/mailman/options/webobjects-dev/tedpet5%40yahoo.com > > This email sent to [email protected]
_______________________________________________ Do not post admin requests to the list. They will be ignored. Webobjects-dev mailing list ([email protected]) Help/Unsubscribe/Update your Subscription: https://lists.apple.com/mailman/options/webobjects-dev/archive%40mail-archive.com This email sent to [email protected]
