I just noticed a problem with my value binding under myface. My value binding works the way that it is coded with JSF 1.1.01, but doesn't work with myfaces 1.0.7. I was wondering if anyone could tell me the right way to code this for myfaces?
Here is my code that works for JSF 1.1.01. I got it right out of the Core JavaServerFaces book:
public void setProperties(UIComponent component) {
super.setProperties(component);
setString(component, "rowSpan", rowSpan);
}
public void setString(UIComponent component, String attributeName, String attributeValue) {
if (attributeValue == null) {
return;
} else {
if (isValueReference(attributeValue)) {
setValueBinding(component, attributeName, attributeValue);
} else {
component.getAttributes().put(attributeName, attributeValue);
}
}
}
public void setValueBinding(UIComponent component, String attributeName, String attributeValue) {
FacesContext context = FacesContext.getCurrentInstance();
Application app = context.getApplication();
ValueBinding vb = app.createValueBinding(attributeValue);
component.setValueBinding(attributeName, vb);
}
Then in the renderer for this tag I have:
String rowSpan = (String) rptTableCol.getAttributes().get("rowSpan");
this always returns null. But the attributeValue in the tag has the right code in it. So I don't understand why this works with JSF 1.1.01 and not myfaces 1.0.7. Was this a bug in the version of the RI that myfaces 1.0.7 is using?
Any typos are because I typed it in. I can't cut and paste my code into this pc (long story lol). The value
Thanks,
Ray
Do you Yahoo!?
Yahoo! Mail - Helps protect you from nasty viruses.

