Action do Bean não está sendo chamado - JSF2 + Facelets

Pessoal… to com um problema que não consigo resolver, ao meu ver deveria estar funcionando.

eu tenho uma aplicação usando facelets, e tem uma tela template… que tem uma parte assim:

<h:body>
	<h:form>
		<table>
			<thead>
				<tr>
					<td class="cabecalho"><ui:insert name="header_">
						</ui:insert></td>
				</tr>
			</thead>
			<tbody>
				<tr>
					<td class="conteudo"><ui:insert name="body_">
						</ui:insert></td>
				</tr>
			</tbody>
			<tfoot>
				<tr>
					<td class="rodape"><ui:insert name="footer_">
						</ui:insert></td>
				</tr>
			</tfoot>
		</table>
	</h:form>
</h:body>

e dentro dela existe outro template com uma parte assim:

<ui:define name="body_">
// outros inserts
    <ui:insert name="conteudo">conteudo</ui:insert>
</ui:define>

e eu tenho a minha própria tela (que é a que será incluída)… e nela faço assim:

<ui:define name="desktop">
// minha tela
</ui:define>

tudo funciona bem… mas nessa tela eu preciso fazer um upload de arquivo… e por isso fiz esse form:

<h:form id="formUpload" enctype="multipart/form-data" >
    <t:inputFileUpload id="fileUpload" value="#{meuBean.arquivo}" />
    <h:commandButton id="btnUpload" action="#{meuBean.processarArquivo}" 
        value="Processar Arquivo" />
</h:form>

esse form não consegue chamar a ação do bean, a ação existe e tudo mais, todos os atributos estão certos…

olhando com o FireBug, eu vi que o arquivo está dentro do Post, então creio que o form está sendo submetido (talvez não esteja).

Alguém tem alguma idéia ?

Ola Rodrigo

Quando voce diz “nao consegue”, qual é o problema? Nao ocorre nada ao clicar? Sai uma stacktrace? Qual stacktrace? O campo vem vazio?

abracos

o post é montado (eu vi isso no firebug, ele monta toda a estrutura) e a tela é recarregada (como se um form estivesse sendo submetido)

porém a action definida por mim no botão não é chamada por algum motivo. não sei se é por ter um form dentro do outro,

talvez eu tenha que adicionar algum parâmetro ao form interior.

Oi Rodrigo!

Posta pra gente a saida em debugmode do rich/primefaces, acho que vai ficar claro qual action ele esta acionando, se houve algum problema de validacao (tem h:messages em algum lugar?), etc.


    <h:body>  
        <h:form>   // tira este form
            <table>  
                <thead>  
                    <tr>  
                        <td class="cabecalho"><ui:insert name="header_">  
                            </ui:insert></td>  
                    </tr>  
                </thead>  
                <tbody>  
                    <tr>  
                        <td class="conteudo"><ui:insert name="body_">  
                            </ui:insert></td>  
                    </tr>  
                </tbody>  
                <tfoot>  
                    <tr>  
                        <td class="rodape"><ui:insert name="footer_">  
                            </ui:insert></td>  
                    </tr>  
                </tfoot>  
            </table>  
        </h:form>  // tira este form
    </h:body> 

Tenta testar sem os forms da tela de layout, tempos atrás tive este tipo de problema e resolvi desta forma!