You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@struts.apache.org by Manfred Klug <ma...@web.de> on 2005/05/16 20:53:06 UTC

[Shale] Questions and suggestion to Clay

Some questions and suggestions that may need further discussion:

- Is there a reason why validators and converters (actionListeners and
  valueChangeListeners too?) are not inherited by elements and extending
  components?

- There is a problem with properties. A component is possibly based on the
  generic attribute map and has no setter for a property. e.g. functionName
  property in ValidatorScript.

  At the moment Clay has no knowledge about such attributes and it's impossible
  to do a type conversion. I think something like this is needed:

  <component jsfid="validatorScript" componentType="org.apache.shale.ValidatorScript"/>
    <properties>
	    <property name="functionName" type="String"/>
    </properties>
    ...
  </component>

  Which could be optional if a setter exists.

- I think something like namespaces is needed for the jsfid attribut to avoid
  name collisions between components of different sources.

- I think that it would be a nice possibility to have a component without
  componentType to define components without common parent.
  Something like this:

  <component jsfid="aField"/>
    <element jsfid="outputLabel">
      <attributes>
        <set name="value" value="#{messages["components.fieldName"]}" />
        <set name="for"   value="inputField"/>
      </attributes>	
    </element>
	
    <element jsfid="emptyOutputText"/>
	
    <element jsfid="panelGroup">
      <element id="inputField" jsfid="inputText">
        <attributes>
          <set name="value" value="#{managed-bean-name.value}" />
        </attributes>
      </element>
      <element jsfid="errorMessage">
        <attributes>
          <set name="for" value="inputField"/>
        </attributes>	
      </element>
    </element>
  </component>

  <component jsfid="aPanel" extends="panelGrid">
    <element jsfid="aField"/>
  </component>

  Whereby the elements from aField are directly added to the panelGrid.


Comments welcome.

Manfred

______________________________________________________________
Verschicken Sie romantische, coole und witzige Bilder per SMS!
Jetzt bei WEB.DE FreeMail: http://f.web.de/?mc=021193


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
For additional commands, e-mail: dev-help@struts.apache.org