Formulario + Datatable JSF

Bom dia pessoal.
seguinte, estou desenvolvendo uma aplicação basica de controle de atendimentos.
tenho a página “cadastraratendimento.jsf” onde possui o formulario para que seja feita a entrada de dados. segue o formulario:


<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
	xmlns:f="http://java.sun.com/jsf/core"
	xmlns:h="http://java.sun.com/jsf/html"
	xmlns:p="http://primefaces.prime.com.tr/ui">
<h:head>
</h:head>
<body>
<center><h:form>
		<h:inputText value="#{atendimentoBean.atendimento.idcliente}" />
	<h:inputText value="#{atendimentoBean.atendimento.idfuncionario}" />
	<p:panel header="Dados do Atendimento">
		<h:panelGrid columns="3">
			<h:outputText value="*Nome do Funcionário:" />
			<h:inputText size="40" maxlength="100"
				value="#{funcionarioBean.funcionario.nome}" />
			<a href="pesquisafuncionario.jsf"><img src="Imagens/lupa.png" /></a>			
			<h:outputText value="*Razão Social :" />
			<h:inputText size="40" maxlength="100"
				value="#{clienteBean.cliente.razaosocial}" />
			<a href="pesquisarcliente.jsf"><img src="Imagens/lupa.png" /></a>
			</h:panelGrid>
			</p:panel>
			<p:panel header="Detalhes do Atendimento" footer="*Campos Obrigatórios">
			<h:panelGrid columns="2">
			<h:outputText value="*Data de Início :" />
			<p:calendar pattern="dd/MM/yyyy" locale="PT_br" size="37"
				showOn="button" value="#{atendimentoBean.atendimento.datainicio}"/>
			<h:outputText value="*Data do Fim :" />
			<p:calendar pattern="dd/MM/yyyy" locale="PT_br" size="37"
				showOn="button" value="#{atendimentoBean.atendimento.datafim}" />
			<h:outputText value="*Atendimento Finalizado? :" />
			<h:selectOneMenu value="#{atendimentoBean.atendimento.finalizado}" required="true" requiredMessage="Campo obrigatorio">
				<f:selectItem itemValue=""/>
				<f:selectItem itemValue="Sim"/>
				<f:selectItem itemValue="Não"/>
			</h:selectOneMenu>
			<h:outputText value="*Observações :" />
			<h:inputTextarea value="#{atendimentoBean.atendimento.observacao}"  cols="40"/>			
		</h:panelGrid>
		<p:commandButton value="Gravar" action="#{atendimentoBean.inserir}"/>
		<p:commandButton type="reset" value="Limpar" />

	</p:panel>
	<p:themeSwitcher initialText="Escolha o tema aqui."
		buttonPreText="Aparência: " />
</h:form></center>
</body>
</html>

a ideia é a seguinte, o usuario ira clicar no botao de pesquisar que existe ao lado de cada campo relacionado a cliente e a funcionario para poder pesquisar ambos, ja fiz o datatable trazer os resultados, porém a duvida é a seguinte, como retornar o valor deste datatable para a pagina do formulario.

EX: Pesquisei um funcionario, no meu formulario preciso apenas do nome do funcionario e do id para completar a tabela com a chave estrangeira do mesmo, na minha datatable ele tras todos os dados do funcionario. ao clicar em retornar na minha pagina de pesquisa, a pagina do formulario recebe o nome e o id em seus respectivos lugares.
alguem poderia me dar uma força? lembrando que utilizei o datatable do prime faces

segue a minha pagina com o datatable.


<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
	xmlns:f="http://java.sun.com/jsf/core"
	xmlns:h="http://java.sun.com/jsf/html"
	xmlns:p="http://primefaces.prime.com.tr/ui">
<h:head>
</h:head>
<body>
<center><h:form>
	<p:dataTable var="func" value="#{funcionarioBean.lista()}" id="lista" selectionMode="single">
		<f:facet name="header">
           Funcionários
        </f:facet>
		<p:column>
			<f:facet name="header">
				<h:outputText value="Código" />	
				</f:facet>	
				<h:outputText value="#{func.id}" />		
		</p:column>
		<p:column>
			<f:facet name="header">
				<h:outputText value="Nome" />	
				</f:facet>	
				<h:outputText value="#{func.nome}" />		
		</p:column>
		<p:column>
			<f:facet name="header">
				<h:outputText value="E-Mail" />	
				</f:facet>	
				<h:outputText value="#{func.email}" />		
		</p:column>
		<p:column>
			<f:facet name="header">
				<h:outputText value="Data de Cadastro" />	
				</f:facet>	
				<h:outputText value="#{func.datacadastro}" />		
		</p:column>
		<p:column>
			<f:facet name="header">
				<h:outputText value="Telefone" />	
				</f:facet>	
				<h:outputText value="#{func.telefone}" />		
		</p:column>
		<f:facet name="footer">
				<p:commandButton value="Retornar" />	
		</f:facet>			
	</p:dataTable>
	<p:themeSwitcher initialText="Escolha o tema aqui."
		buttonPreText="Aparência: " />
</h:form></center>
</body>
</html>

Agora irei colocar a minha classe funcionariobean e a funcionariomodel respectivamente.


package br.com.jatendimento.bean;

import java.io.IOException;
import java.sql.Connection;
import java.sql.Date;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;

import javax.faces.bean.RequestScoped;
import javax.faces.component.UIParameter;
import javax.faces.context.ExternalContext;
import javax.faces.context.FacesContext;

import javax.faces.event.ActionEvent;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;

import com.mysql.jdbc.Util;

import br.com.jatendimento.ConnectionFactory;
import br.com.jatendimento.model.Funcionario;

@RequestScoped
public class FuncionarioBean {

	Funcionario funcionario = new Funcionario();
	Connection con;
	List<Funcionario> listafunc = new ArrayList<Funcionario>();

	public FuncionarioBean() {
		con = new ConnectionFactory().getConnection();

	}

	public boolean inserir() throws SQLException {

		PreparedStatement stmt = con
				.prepareStatement("insert into funcionario(nomefuncionario, email, datacadastro, telefone, login, senha) values(?,?,?,?,?,?)");
		stmt.setString(1, funcionario.getNome());
		stmt.setString(2, funcionario.getEmail());
		Date data = new java.sql.Date(funcionario.getDatacadastro().getTime());
		stmt.setDate(3, data);
		stmt.setString(4, funcionario.getTelefone());
		stmt.setString(5, funcionario.getLogin());
		stmt.setString(6, funcionario.getSenha());

		try {
			stmt.execute();
			stmt.close();
			System.out.println("deu certo");
			// FacesContext.getCurrentInstance().addMessage(null, new
			// FacesMessage(FacesMessage.SEVERITY_INFO,"Sucesso!","Funcionário incluído com sucesso!"));
			return true;
		} catch (Exception e) {
			// TODO Auto-generated catch block
			System.out.println("deu errado " + e);
			return false;
		}

	}

	public List<Funcionario> lista() throws SQLException {
		PreparedStatement stmt;
		stmt = con.prepareStatement("Select * from funcionario");
		ResultSet rs = stmt.executeQuery();
		while (rs.next()) {
			listafunc.add(new Funcionario(rs.getInt("idfuncionario"), rs
					.getString("nomefuncionario"), rs.getString("email"), rs
					.getDate("datacadastro"), rs.getString("telefone"), rs
					.getString("login"), rs.getString("senha")));
		}
		rs.close();
		stmt.close();
		return listafunc;
	}
                public Funcionario getFuncionario() {
		return funcionario;
	}

	public void setFuncionario(Funcionario funcionario) {
		this.funcionario = funcionario;
	}

	public List<Funcionario> getListafunc() {
		return listafunc;
	}

	public void setListafunc(List<Funcionario> listafunc) {
		this.listafunc = listafunc;
	}

}

package br.com.jatendimento.model;

import java.util.Date;

public class Funcionario {

	private int id;
	private String nome;
	private String email;
	private Date datacadastro;
	private String telefone;
	private String login;
	private String senha;
	
	public Funcionario(int id, String nome, String email, Date datacadastro,
			String telefone, String login, String senha) {
		super();
		this.id = id;
		this.nome = nome;
		this.email = email;
		this.datacadastro = datacadastro;
		this.telefone = telefone;
		this.login = login;
		this.senha = senha;
	}
	
	public Funcionario() {
		// TODO Auto-generated constructor stub
	}

	public int getId() {
		return id;
	}

	public void setId(int id) {
		this.id = id;
	}

	public String getNome() {
		return nome;
	}

	public void setNome(String nome) {
		this.nome = nome;
	}

	public String getEmail() {
		return email;
	}

	public void setEmail(String email) {
		this.email = email;
	}

	public Date getDatacadastro() {
		return datacadastro;
	}

	public void setDatacadastro(Date datacadastro) {
		this.datacadastro = datacadastro;
	}

	public String getTelefone() {
		return telefone;
	}

	public void setTelefone(String telefone) {
		this.telefone = telefone;
	}

	public String getLogin() {
		return login;
	}

	public void setLogin(String login) {
		this.login = login;
	}

	public String getSenha() {
		return senha;
	}

	public void setSenha(String senha) {
		this.senha = senha;
	}

	
}

Desde já muito obrigado.