You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tapestry.apache.org by "Andr? (JIRA)" <ta...@jakarta.apache.org> on 2006/03/19 19:02:02 UTC

[jira] Commented: (TAPESTRY-889) Components and pages cannot be overriden with ease (contrary to documentation)

    [ http://issues.apache.org/jira/browse/TAPESTRY-889?page=comments#action_12370997 ] 

André commented on TAPESTRY-889:
--------------------------------

Description of the problem with a current workaround:

Given that component A includes component B includes component C.

I only want to change C. It seems that I have to create my own B that includes my own C and then of course I have to modify A to include my new B. If this containment hierarchy is very deep you'll have to change them all - right?

> Components and pages cannot be overriden with ease (contrary to documentation)
> ------------------------------------------------------------------------------
>
>          Key: TAPESTRY-889
>          URL: http://issues.apache.org/jira/browse/TAPESTRY-889
>      Project: Tapestry
>         Type: Bug
>     Reporter: André

>
> In http://jakarta.apache.org/tapestry/UsersGuide/components.html#components.libraries.namespace it is stated that components (from framework) can be overriden.
> "In fact, it is possible to override both pages and components provided by the framework. This is frequently used to change the look and feel of the default StateSession or Exception page. In theory, it is even possible to override fundamental components such as Insert or Foreach!"
> Why is it then not possible to override components within other namespaces? It is, for example, not possible just to override the contrib:TablePages component, while not touching the rest of contrib. There are several inelegant workarounds where you have to copy more or less of the component specs and templates.
> If Insert is overrideable, why not "namespace:Insert" for instance? This sound illogical to me and results in copy&paste'ing.
> Is this functionality important? To my opinion yes
> 1) It reduces code & configuration to maintain
> 2) It allows upgrading of single components within components without the need to touch the whole thing 
> To solve this, it would be sufficient to allow overriding components in subsequent <library>ies.
> <library id="contrib" specification-path="/org/apache/tapestry/contrib/Contrib.library"/>
> <library id="contrib" specification-path="/org/my/own/tablePages/component/x.library"/>
> This currently results in an error message. "namespace already existent"

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira


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