Hello everybody,
I have a simple `component id generator` that implements
`NSKeyValueCodingAdditions`. Something like this:
public class ComponentIDGenerator implements NSKeyValueCodingAdditions {
private String idBase;
public ComponentIDGenerator(
WOComponent component) {
idBase = "_" + component.context().elementID().replace('.', '_');
}
public Object valueForKeyPath(String keypath) {
return get(keypath);
}
public String get(String keypath) {
String suffix = keypath.replace('.', '_');
return idBase + "_" + suffix;
}
...
}
I pasted it because it is really simple to understand.
When initializing a component (in the appendToResponse() method) the
generator is called like this:
`String idFor = new ComponentIDGenerator(this);`
In the wod, when I try to access keys like:
`idFor.foo` or `idFor.bar` i get WO Template errors from WOLips:
"there is no key foo for the keypath idFor".
It's useless to say that at runtime everything runs fine.
I found two ways to workaround this issues:
1) use WOGNL _expression_ in the wod. So i use ~idFor.foo
2) foreach key create a getKey method. For example: getFoo()
return idFor.valueForKey("foo").toString();
I don't like those two ways:
the first because it is not our purpose to use WOGNL framework in the
application,
the second because the work load becomes very huge.
Maybe there is a third way:
put // VALID next to the wod defecting property-value pair, like
id = idFor.foo; // VALID
I want to know if is there a correct way to remove this kind of errors
between those i mentioned before, or maybe something better.
Thank you for reading.
Regards,
Filippo Lauria
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Help/Unsubscribe/Update your Subscription: