Component Composite com atributo opcional

Galera,

eu tenho um component composition que por sua vez tem um inputText. Em uma determinada situação eu preciso colocar um valueChangeListener. Para isso eu criei o código abaixo:

<cc:attribute name="valueChangeListener" method-signature="void listener(javax.faces.event.ValueChangeEvent)"/> ... <h:inputText ... valueChangeListener="#{cc.attrs.valueChangeListener}" />
Blz, funciona normalmente quando eu passo o valueChangeListener, Porém o atributo é “opcional” então quando eu não preciso dele, eu não passo o valueChangeListener. Nesse case da erro dizendo que o atributo valueChangeListener não pode ficar em branco. Exemplo:

[code]<cc:meuComponente valueChangeListener="#{teste.metodoListener}"/> // FUNCIONA

<cc:meuComponente /> // NÃO-FUNCIONA pois é como se eu fizesse: <h:inputText valueChangeListener=""/>
[/code]
Tem algum jeito de eu fazer com que esse atributo se não informado não seja colocado no componente? Eu resolvi fazendo uma “gambiarra”, coloquei dois componentes <h:inputText> dentro do componente composite um com o valueChangeListener e outro sem daí eu renderizo de acordo com o que o cara passou ou não. Porém eu só citei o exemplo de um de atributo mas no caso eu tenho um componente que são 3 atributos opcionais que ocorrem esse problema, por exemplo action, actionListener e outros. Daí não da pra solucionar usando rendered porque eu tenho que criar componentes com todas as possibilidades e aí começa a ficar inviável.

Alguém tem alguma proposta de solução?