<p:commandLink> atributo "action" não chama o método do bean

minha página:

<ui:define name="conteudo">
		<f:metadata>
			<f:event listener="#{facesContext.externalContext.invalidateSession}" type="preRenderView" />
		</f:metadata>
		
		<h:form id="listarNotas" prependId="false">
		
			<p:dialog header="Nota Fiscal Eletrônica" modal="true" id="idNovaNota" widgetVar="novaNota" draggable="false" 
					styleClass="position:absolute; margin:auto; left:0; right:0; top:0; bottom:0;">
				<h:panelGroup layout="block" >
		           <h:outputLabel value="Srs. Clientes, " /><br/><br/>
				   &#160;&#160;&#160;
				   <h:outputLabel value="Em virtude da implantação do novo sistema de nota fiscal eletrônica, disponibilizado pela SEFIN-Fortaleza, "/><br/> 
				   <h:outputLabel value="informamos que o acesso às suas notas fiscais deverá ser realizado através do link abaixo. " /><br/><br/>
				   <h:outputLabel value="Utilize os dados apresentados para consulta ao seu documento de cobrança: " /><br/>
				   <h:outputLabel value="- Número da NFS-e*:" />&#160;<h:panelGroup id="numNota" /><br/>
				   <h:outputLabel value="- Código de Verificação*:" />&#160;<h:panelGroup id="codVerificacao" /><br/>
				   <h:outputLabel value="- CNPJ do Prestador*: 63554067-0001/98 " /><br/>
				   <h:outputLabel value="- Link: " /> <a target="_blank" href="https://iss.fortaleza.ce.gov.br"> https://iss.fortaleza.ce.gov.br/</a><br/>
				</h:panelGroup>
				
				<h:panelGroup layout="block" style="text-align: center; margin-top: 10px;">
					<p:commandButton value="OK" onclick="PF('novaNota').hide()" />
				</h:panelGroup>
			</p:dialog>
			
			<h:panelGroup layout="block"
				style="border: 0 none; color: rgb(53, 130, 111); font-family: Verdana,Arial,Helvetica,sans-serif; font-size: 18px; margin: 0; padding:0;">
				<em>Nota Fiscal</em>
			</h:panelGroup>

			<p:ajaxStatus onstart="PF('loading').show()" onsuccess="PF('loading').hide()" />

			<p:dialog modal="true" widgetVar="loading" showHeader="false"
				draggable="false" closable="false" style="text-align: center;">
				<img src="#{request.contextPath}/resources/images/ajax-loader.gif" />
				<br />
				<br />Carregando...
			</p:dialog>
										
			<p:tabView id="tabs" dynamic="true">
				<p:tab id="tabs-1" title="NOTAS FISCAIS">
					<p:panel id="tab1">
						<h:panelGroup id="panel" style="margin: 10px 0 10px 0;" layout="block">
							<h:panelGrid id="panell" columns="2" columnClasses="column1,column2" style="width: 100%;">
								<table id="table">
									<tr>
										<td align="center">CONTRATO</td>
										<td align="center">PESSOA/RAZÃO</td>
										<td align="center">BOLETO</td>
										<td align="center">VENCIMENTO</td>
										<td align="center">VALOR</td>
										<td align="center">CARTA DESCONTO</td>
									</tr>
									
									<ui:repeat value="#{autenticar.notas}" var="nota">
										<tr>
											<td align="right">
												<p:commandLink value="#{nota.contrato}" update=":listarNotas:idNovaNota"
													oncomplete="setarCamposDialog(#{nota.numNota}, #{nota.codVerificacao}); PF('novaNota').show();" 
													rendered="#{(nota.NFSE) and (nota.DTLIMITE)}"/>
												
												<h:outputLink value="http://nfse.issfortaleza.com.br/birt/frameset" rendered="#{(nota.NFSE) and (!nota.DTLIMITE)}" target="_blank">
													<f:param name="__report" value="nfs_ver4.rptdesign"/>
													<f:param name="cdVerificacao" value="#{nota.codVerificacao}"/>
													<f:param name="numNota" value="#{nota.numNFSE}"/>
													<h:outputText value="#{nota.contrato}" />
												</h:outputLink>
												
												<p:commandLink value="#{nota.contrato}" oncomplete="#{autenticar.emitirNota(nota)}" rendered="#{!nota.NFSE}" />
											</td>
											<!-- <td align="center">
												<p:commandLink value="#{nota.razaoSocial}" update=":listarNotas:idNovaNota" 
													oncomplete="setarCamposDialog(#{nota.numNota}, #{nota.codVerificacao}); PF('novaNota').show();" 
													rendered="#{(nota.NFSE) and (nota.DTLIMITE)}" />
													
												<h:outputLink value="http://nfse.issfortaleza.com.br/birt/frameset" rendered="#{(nota.NFSE) and (!nota.DTLIMITE)}" target="_blank">
													<f:param name="__report" value="nfs_ver4.rptdesign"/>
													<f:param name="cdVerificacao" value="#{nota.codVerificacao}"/>
													<f:param name="numNota" value="#{nota.numNFSE}"/>
													<h:outputText value="#{nota.razaoSocial}" />
												</h:outputLink>
												
												<p:commandLink value="#{nota.razaoSocial}" action="#{autenticar.emitirNota(nota)}" rendered="#{!nota.NFSE}" />
											</td>
											<td align="right">
												<p:commandLink value="#{nota.boleto}" update=":listarNotas:idNovaNota" 
													oncomplete="setarCamposDialog(#{nota.numNota}, #{nota.codVerificacao}); PF('novaNota').show();"
													rendered="#{(nota.NFSE) and (nota.DTLIMITE)}" />
													
												<h:outputLink value="http://nfse.issfortaleza.com.br/birt/frameset" rendered="#{(nota.NFSE) and (!nota.DTLIMITE)}" target="_blank">
													<f:param name="__report" value="nfs_ver4.rptdesign"/>
													<f:param name="cdVerificacao" value="#{nota.codVerificacao}"/>
													<f:param name="numNota" value="#{nota.numNFSE}"/>
													<h:outputText value="#{nota.boleto}" />
												</h:outputLink>
												
												<p:commandLink value="#{nota.boleto}" action="#{autenticar.emitirNota(nota)}" rendered="#{!nota.NFSE}" />
											</td>
											<td align="center">
												<p:commandLink update=":listarNotas:idNovaNota" 
													oncomplete="setarCamposDialog(#{nota.numNota}, #{nota.codVerificacao}); PF('novaNota').show();"
													rendered="#{(nota.NFSE) and (nota.DTLIMITE)}" >
													<h:outputText value="#{nota.dtVencimento}">
														<f:convertDateTime pattern="dd/MM/yyyy" timeZone="#{autenticar.timeZone}" />
													</h:outputText>
												</p:commandLink>
												
												<h:outputLink value="http://nfse.issfortaleza.com.br/birt/frameset" rendered="#{(nota.NFSE) and (!nota.DTLIMITE)}" target="_blank">
													<f:param name="__report" value="nfs_ver4.rptdesign"/>
													<f:param name="cdVerificacao" value="#{nota.codVerificacao}"/>
													<f:param name="numNota" value="#{nota.numNFSE}"/>
													<h:outputText value="#{nota.dtVencimento}">
														<f:convertDateTime pattern="dd/MM/yyyy" timeZone="#{autenticar.timeZone}" />
													</h:outputText>
												</h:outputLink>
												
												<p:commandLink action="#{autenticar.emitirNota(nota)}" rendered="#{!nota.NFSE}" >
													<h:outputText value="#{nota.dtVencimento}">
														<f:convertDateTime pattern="dd/MM/yyyy" timeZone="#{autenticar.timeZone}" />
													</h:outputText>
												</p:commandLink>
											</td>
											<td align="right">
												<p:commandLink update=":listarNotas:idNovaNota"  
													oncomplete="setarCamposDialog(#{nota.numNota}, #{nota.codVerificacao}); PF('novaNota').show();"
													rendered="#{(nota.NFSE) and (nota.DTLIMITE)}" >
													<h:outputFormat value="#{nota.valor}">
														<f:convertNumber pattern="0.00"/>
													</h:outputFormat>
												</p:commandLink>
												
												<h:outputLink value="http://nfse.issfortaleza.com.br/birt/frameset" rendered="#{(nota.NFSE) and (!nota.DTLIMITE)}" target="_blank">
													<f:param name="__report" value="nfs_ver4.rptdesign"/>
													<f:param name="cdVerificacao" value="#{nota.codVerificacao}"/>
													<f:param name="numNota" value="#{nota.numNFSE}"/>
													<h:outputFormat value="#{nota.valor}">
														<f:convertNumber pattern="0.00"/>
													</h:outputFormat>
												</h:outputLink>
												
												<p:commandLink action="#{autenticar.emitirNota(nota)}" rendered="#{!nota.NFSE}" >
													<h:outputFormat value="#{nota.valor}">
														<f:convertNumber pattern="0.00"/>
													</h:outputFormat>
												</p:commandLink>
											</td>
											<td align="center">
												<p:commandLink value="( #{nota.qtCartas} )" action="#{autenticar.prepararCartas(nota)}" rendered="#{!nota.emptyCartas}" />
											</td> -->
										</tr>
									</ui:repeat>
								</table>
							</h:panelGrid>
						</h:panelGroup>

						<h:panelGroup style="text-align: left;">
							<h:messages id="mensagemEmail" styleClass="message-chat"
								style="margin-bottom: 20px;" globalOnly="true" />
						</h:panelGroup>
					</p:panel>
				</p:tab>
			</p:tabView>
		</h:form>
	</ui:define>

os métodos que não estão sendo chamados:

public String emitirNota(NotaFiscalVO nota) {
		try{
			if (nota == null) {
				facesUtils.adicionaMensagemDeInformacao("Não há uma nota selecionada.");
				return null;
			} else
				setNotaEmitir(empresaService.emitirNota(nota.getCdObrigacao()));
			return "emitir-nota";
		} catch (Exception e) {
			logger.error("Erro no método emitirNota", e);
			facesUtils.adicionaMensagemDeErro("Aconteceu algo inesperado com o sistema. Por favor, tente novamente em alguns instantes.");
		}
		return null;
	}
	
	public String prepararCartas(NotaFiscalVO nota) {
		try {
			if(!nota.isEmptyCartas() && nota.getQtCartas() > 1){
				setNotaEmitir(nota);
				return "listar-cartas";
			} else if(!nota.isEmptyCartas() && nota.getQtCartas() == 1){
				return emitirCarta(nota.getCartas().get(1)); 
			} else 
				return null;
		} catch (Exception e) {
			logger.error("Erro no método preparaCarta", e);
			facesUtils.adicionaMensagemDeErro("Aconteceu algo inesperado com o sistema. Por favor, tente novamente em alguns instantes.");
		}
		return null;
	}

Segure control e clique no na chamada do método para ver se tem ligação.

Está sim cara.
Todos os dois.

Dentro do ui:repeat eu tenho a estrutura da


em cada
eu tenho os meus 3 links que estão sento renderizados corretamente de acordo com as condições especificadas no “rendered”

Somente o 3º link de cada

que chama um método na “action”, que é o método “emitirNota”, e na ultima tem somente um link que chama o método “prepararCartas”.

Eu ponho os breakpoints mas o debug não para la durante a execução.

Certo, seu código está muito grande. Coloque a parte onde está dando o erro, fica melhor pra gente te ajudar. Tenta com actionlister