Ola, pessoal
Estou desenvolvendo uma cadastro de DOCUMENTO com parâmetros como Material, Nome e outros dados. E como vai funcionar, realizo antes um cadastro normal de PRODUTO com parâmetros de Material e Nome e na tela de cadastro do DOCUMENTO quero abrir um combo como esse codigo “Material” e escolhendo ele, será jogado automaticamente o nome no campo inputText DE NOME.
Eu criei o combo e consigo selecionar.
Como realizar essa função, algo do JSF, JavaScript? Me falaram do valueChanceListener, mas tmb não sei como seria?
Tela:
::Entidade PRODUTO
@Audited
@Entity
@Table(name = "produto")
public class Produto implements Serializable{
private static final long serialVersionUID = 1L;
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Long id;
@Column(name = "material", unique = true, length = 5, nullable = false)
private int material;
@IdentificaCampoPesquisa(descricaoCampo = "Nome", campoConsulta = "nome", principal = 1)
@Column(name = "nome", nullable = false, length = 50)
private String nome;
::Entidade DOCUMENTO
@Audited
@Entity
@Table(name = "documento")
public class Documento implements Serializable{
private static final long serialVersionUID = 1L;
@IdentificaCampoPesquisa(descricaoCampo = "Código", campoConsulta = "id")
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Long id;
@Column(name = "material", length = 5, nullable = false)
private int material;
@IdentificaCampoPesquisa(descricaoCampo = "Nome", campoConsulta = "nome", principal = 1)
@Column(name = "nome", nullable = false, length = 50)
private String nome;
::TELA E SELECTONEMENU
<p:panel id="painelCadastro" header="Cadastro de documentação">
<h:panelGrid id="gridDocCabecalho" columns="14">
<p:outputLabel for="material" value="Material " />
<p:selectOneMenu id="material" filter="true"
value="#{documentoBeanView.objetoSelecionado.material}"
converter="omnifaces.SelectItemsConverter" required="true"
requiredMessage="Faltou selecionar o campo obrigatório 'Material'!!">
<f:selectItem noSelectionOption="true" itemLabel="Selecione material" />
<f:selectItems value="#{produtoBeanView.produtos}" var="cursor"
itemLabel="#{cursor.material}" itemValue="#{cursor.material}"
actionListener="documentoBeanView.teste()"/>
</p:selectOneMenu>
::Entidade ProdutoBeanView
@Controller
@Scope(value="session")
@ManagedBean(name="produtoBeanView")
public class ProdutoBeanView extends BeanManagerViewAbstract {
private static final long serialVersionUID = 1L;
private String url = "/cadastro/cad_produto.jsf?faces-redirect=true";
private String urlFind = "/cadastro/busca/find_produto.jsf?faces-redirect=true";
private Produto objetoSelecionado = new Produto();
private List<Produto> produtos = new ArrayList<Produto>();
@Autowired
private ProdutoController produtoController;
public List<SelectItem> getProduto() throws Exception{
return produtoController.getListProdutoController();
}