Fórum SuggestionBox #408242
04/10/2011
0
Fabiano Barros
Curtir tópico
+ 0Posts
04/10/2011
Fabiano Barros
<a4j:region immediate=true renderRegionOnly=true>
<td><h:outputText value=Nome: styleClass=t1/></td>
<td><h:inputText size=50 value=#{cadclienteprocessomb.participante} id=text styleClass=campo1/></td>
<td><rich:suggestionbox id=suggestionBoxId for=text
suggestionAction=#{cadclienteprocessomb.autocomplete}
fetchValue=#{result.nome} width=500 height=100 var=result>
<h:column>
<h:outputText value=#{result.nome}/>
</h:column>
<a4j:support event=onselect> <f:setPropertyActionListener value=#target=#{cadclienteprocessomb.selecao}/>
</a4j:support>
</rich:suggestionbox></td>
</a4j:region>
Gostei + 0
04/10/2011
Davi Costa
att Davi
Gostei + 0
04/10/2011
Fabiano Barros
04/10/2011 11:43:02 com.sun.faces.lifecycle.ApplyRequestValuesPhase execute
WARNING: javax.el.ELException: /pages/cadastro/cadclienteprocesso.xhtml @86,80 suggestionAction=#{cadclienteprocessomb.autocomplete}: java.lang.NullPointerException
javax.faces.FacesException: javax.el.ELException: /pages/cadastro/cadclienteprocesso.xhtml @86,80 suggestionAction=#{cadclienteprocessomb.autocomplete}: java.lang.NullPointerException
at javax.faces.component.UIData.invokeOnComponent(UIData.java:807)
at javax.faces.component.UIComponent.invokeOnComponent(UIComponent.java:720)
at javax.faces.component.UIComponentBase.invokeOnComponent(UIComponentBase.java:675)
at javax.faces.component.UIComponent.invokeOnComponent(UIComponent.java:720)
at javax.faces.component.UIComponentBase.invokeOnComponent(UIComponentBase.java:675)
Quando eu retiro o setPropertyActionListener funciona normalmente.
Atte.
Fabiano do Souto Barros.
Gostei + 0
04/10/2011
Davi Costa
att Davi
Gostei + 0
04/10/2011
Fabiano Barros
Gostei + 0
04/10/2011
Fabiano Barros
não consegui descobrir o que esta errado no meu bean.
Atte.
Fabiano do Souto Barros.
Gostei + 0
04/10/2011
Robson Teixeira
Gostei + 0
04/10/2011
Fabiano Barros
Atte.
Fabiano do Souto Barros.
public class CadClienteProcessoMB implements Serializable{
/**
*
*/
private static final long serialVersionUID = -3754428558909133377L;
private ArrayList<AutorProcesso> clienteprocessos = null;
private AutorProcesso clienteprocesso=null;
private int scrollerPage=1;
private AutorProcesso currentItem;
private Autor cliente=null;
private int currentRow;
private ArrayList<Autor> clientes;
private ArrayList<Processo> processos = null;
private Processo processo=null;
private String numero=null;
private String ro;
private ClienteProcessoPK clienteprocessopk = null;
private Processo filtroProcesso;
private AutorProcesso filtroClienteProcesso;
private String numeroCliente;
private String numeroRo;
private String tipo;
private String Participante;
private Autor selecao = null;
public Autor getSelecao() {
return selecao;
}
public void setSelecao(Autor selecao) {
this.selecao = selecao;
}
public String getParticipante() {
return Participante;
}
public void setParticipante(String participante) {
Participante = participante;
}
public String getTipo() {
return tipo;
}
public void setTipo(String tipo) {
this.tipo = tipo;
}
private Map<String, Object> itensClientes = null;
public Map<String, Object> getItensClientes(){
itensClientes = new LinkedHashMap<String, Object>();
//this.recuperarDepartamentos();
for (Autor cli : clientes) {
itensClientes.put(cli.getNome(), cli.getId());
}
return itensClientes;
}
public CadClienteProcessoMB(){
this.novo();
clienteprocesso = new AutorProcesso();
clienteprocessos = new ArrayList<AutorProcesso>();
clientes = new ArrayList<Autor>();
cliente = new Autor();
processos = new ArrayList<Processo>();
processo = new Processo();
filtroProcesso = new Processo();
clienteprocessopk = new ClienteProcessoPK();
filtroClienteProcesso = new AutorProcesso();
clienteprocesso.setAutor(cliente);
clienteprocesso.setProcesso(processo);
selecao = new Autor();
this.recuperarClientesCombo();
this.recuperarTodosClientes();
//this.recuperarTodosProcessos();
}
public List<Autor> autocomplete(Object suggest){
String pref = (String)suggest;
ArrayList<Autor> result = new ArrayList<Autor>();
Iterator<Autor> iterator = this.getClientes().iterator();
while (iterator.hasNext()){
Autor elem = ((Autor)iterator.next());
if(elem.getNome() != null && elem.getNome().toLowerCase().indexOf(pref.toLowerCase())==0 || .equals(pref)){
result.add(elem);
}
}
return result;
}
public String getNumeroCliente() {
return numeroCliente;
}
public void setNumeroCliente(String numeroCliente) {
this.numeroCliente = numeroCliente;
}
public ArrayList<AutorProcesso> getClienteprocessos() {
return clienteprocessos;
}
public void setClienteprocessos(ArrayList<AutorProcesso> clienteprocessos) {
this.clienteprocessos = clienteprocessos;
}
public AutorProcesso getClienteprocesso() {
int idRealProcesso;
int idRealClienteProcesso;
//this.novo();
//Capturando ID
String idClienteProcesso = (String)FacesContext.getCurrentInstance().getExternalContext().getRequestParameterMap().get(idclienteprocesso);
String idProcesso = (String)FacesContext.getCurrentInstance().getExternalContext().getRequestParameterMap().get(idProcesso);
if (idProcesso==null){
idRealProcesso = 0;
}else{
idRealProcesso = Integer.parseInt(idProcesso);
processo = (Processo)BusinessFactory.getProcessoBus().recuperarPorId(idRealProcesso);
clienteprocesso.setProcesso(processo);
}
if (idClienteProcesso==null){
idRealClienteProcesso = 0;
}else{
idRealClienteProcesso = Integer.parseInt(idClienteProcesso);
clienteprocesso = (AutorProcesso)BusinessFactory.getClienteProcessoBus().recuperarPorId(idRealClienteProcesso);
}
return clienteprocesso;
}
Gostei + 0
04/10/2011
Luciano Martins
Atte.
Fabiano do Souto Barros.
public class CadClienteProcessoMB implements Serializable{
/**
*
*/
private static final long serialVersionUID = -3754428558909133377L;
private ArrayList<AutorProcesso> clienteprocessos = null;
private AutorProcesso clienteprocesso=null;
private int scrollerPage=1;
private AutorProcesso currentItem;
private Autor cliente=null;
private int currentRow;
private ArrayList<Autor> clientes;
private ArrayList<Processo> processos = null;
private Processo processo=null;
private String numero=null;
private String ro;
private ClienteProcessoPK clienteprocessopk = null;
private Processo filtroProcesso;
private AutorProcesso filtroClienteProcesso;
private String numeroCliente;
private String numeroRo;
private String tipo;
private String Participante;
private Autor selecao = null;
public Autor getSelecao() {
return selecao;
}
public void setSelecao(Autor selecao) {
this.selecao = selecao;
}
public String getParticipante() {
return Participante;
}
public void setParticipante(String participante) {
Participante = participante;
}
public String getTipo() {
return tipo;
}
public void setTipo(String tipo) {
this.tipo = tipo;
}
private Map<String, Object> itensClientes = null;
public Map<String, Object> getItensClientes(){
itensClientes = new LinkedHashMap<String, Object>();
//this.recuperarDepartamentos();
for (Autor cli : clientes) {
itensClientes.put(cli.getNome(), cli.getId());
}
return itensClientes;
}
public CadClienteProcessoMB(){
this.novo();
clienteprocesso = new AutorProcesso();
clienteprocessos = new ArrayList<AutorProcesso>();
clientes = new ArrayList<Autor>();
cliente = new Autor();
processos = new ArrayList<Processo>();
processo = new Processo();
filtroProcesso = new Processo();
clienteprocessopk = new ClienteProcessoPK();
filtroClienteProcesso = new AutorProcesso();
clienteprocesso.setAutor(cliente);
clienteprocesso.setProcesso(processo);
selecao = new Autor();
this.recuperarClientesCombo();
this.recuperarTodosClientes();
//this.recuperarTodosProcessos();
}
public List<Autor> autocomplete(Object suggest){
String pref = (String)suggest;
ArrayList<Autor> result = new ArrayList<Autor>();
Iterator<Autor> iterator = this.getClientes().iterator();
while (iterator.hasNext()){
Autor elem = ((Autor)iterator.next());
if(elem.getNome() != null && elem.getNome().toLowerCase().indexOf(pref.toLowerCase())==0 || .equals(pref)){
result.add(elem);
}
}
return result;
}
public String getNumeroCliente() {
return numeroCliente;
}
public void setNumeroCliente(String numeroCliente) {
this.numeroCliente = numeroCliente;
}
public ArrayList<AutorProcesso> getClienteprocessos() {
return clienteprocessos;
}
public void setClienteprocessos(ArrayList<AutorProcesso> clienteprocessos) {
this.clienteprocessos = clienteprocessos;
}
public AutorProcesso getClienteprocesso() {
int idRealProcesso;
int idRealClienteProcesso;
//this.novo();
//Capturando ID
String idClienteProcesso = (String)FacesContext.getCurrentInstance().getExternalContext().getRequestParameterMap().get(idclienteprocesso);
String idProcesso = (String)FacesContext.getCurrentInstance().getExternalContext().getRequestParameterMap().get(idProcesso);
if (idProcesso==null){
idRealProcesso = 0;
}else{
idRealProcesso = Integer.parseInt(idProcesso);
processo = (Processo)BusinessFactory.getProcessoBus().recuperarPorId(idRealProcesso);
clienteprocesso.setProcesso(processo);
}
if (idClienteProcesso==null){
idRealClienteProcesso = 0;
}else{
idRealClienteProcesso = Integer.parseInt(idClienteProcesso);
clienteprocesso = (AutorProcesso)BusinessFactory.getClienteProcessoBus().recuperarPorId(idRealClienteProcesso);
}
return clienteprocesso;
}
O q recebe esse SuggestionBox? Pq o nullpointer tá dando num método no seu ManagedBean, aliás seu ManagedBean está bem fora do q tem q ser pq ele mistura as propriedades duma classe com métodos de um managedBean...v ai.
Gostei + 0
05/10/2011
Fabiano Barros
<a4j:region immediate=true renderRegionOnly=true>
<td><h:outputText value=Nome: styleClass=t1/></td>
<td><h:inputText size=50 value=#{cadclienteprocessomb.participante} id=text styleClass=campo1/></td>
<td><rich:suggestionbox id=suggestionBoxId for=text
suggestionAction=#{cadclienteprocessomb.autocomplete}
fetchValue=#{result.nome} width=500 height=100 var=result>
<h:column>
<h:outputText value=#{result.nome}/>
</h:column>
<a4j:support event=onselect> <f:setPropertyActionListener value=#target=#{cadclienteprocessomb.selecao}/>
</a4j:support>
</rich:suggestionbox></td>
</a4j:region>
Gostei + 0
05/10/2011
Davi Costa
att Davi
Gostei + 0
06/10/2011
Fabiano Barros
E é lá que está dando nullpointer, que tal vc debugar e descobrir o que está vindo nulo.
att Davi
Fui debugando e não encontrei erro no autocomplete do suggestionbox. O que acontece é quando eu passo por parametro o identificador ele dá o erro. O por quê está acontecendo isto eu não estou encontrando. Se puderem me dar uma dica!
Atte.
Fabiano do Souto Barros.
Gostei + 0
21/10/2011
Dyego Carmo
Gostei + 0
23/10/2011
Fabiano Barros
Dyego eu posso utilizar o Richfaces e o primefaces no mesmo projeto?
Desde já agradeço.
Fabiano do Souto Barros.
Gostei + 0
25/10/2011
Dyego Carmo
sao apis bem heterogenias :)
Valeu !
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)