Erro na passagem

3 respostas
Eduardo_Bregaida

Pessoal ta dando esse erro e eu to quebrando a cabeça pra saber oq fazer...
O Caso é q quando eu clico na linha do data table ele deveria ir p/ a proxima pagina passando codigo e descricao, mas ele ta dando erro em um Get, vou colocar aqui as classes...

Erro:
javax.servlet.ServletException: Cannot set value for expression '#{cotacaoListaPedidosProduto.allPedidos}' to a new value of type [Lbr.com.japinfo.jhosp.beans.cotacao.LinhaPedido;
	javax.faces.webapp.FacesServlet.service(FacesServlet.java:121)
	org.apache.myfaces.component.html.util.ExtensionsFilter.doFilter(ExtensionsFilter.java:122)
Classe ListaPedidosProduto.java
public class ListaPedidosProduto extends BeanBase{

	//Lista mostrada e linha selecionada na lista
	private LinhaPedido[] listaPedidos = null;
	//Mostra operacao sendo executada;
	private HtmlOutputText operacao;
	private HtmlOutputText pegaCodigoProduto;
	private HtmlOutputText pegaDescricaoProduto;



	public ListaPedidosProduto(){
		List lista = (List)getSessionAttribute("listaPedido");
		parseArrayLinhaPedido(lista);


		pegaCodigoProduto = new HtmlOutputText();
		pegaCodigoProduto.setValue(getSessionAttribute("codProd"));

		pegaDescricaoProduto = new HtmlOutputText();
		pegaDescricaoProduto.setValue(getSessionAttribute("descProd"));

		removeSessionAttribute("codProd");
		removeSessionAttribute("descProd");
		removeSessionAttribute("listaPedido");

	}

	public HtmlOutputText getOperacao() {
		return operacao;
	}

	public void setOperacao(HtmlOutputText operacao) {
		this.operacao = operacao;
	}

	public void parseArrayLinhaPedido(List listaArrayObject){
		this.listaPedidos = new LinhaPedido[listaArrayObject.size()];
		int contArray = 0;
		Object [] arrayLinha;
		for(Iterator itera = listaArrayObject.iterator(); itera.hasNext();){
			arrayLinha = (Object[])itera.next();
			this.listaPedidos[contArray++] = new LinhaPedido((Long)arrayLinha[0], (String)arrayLinha[1]);

		}
	}

	public LinhaPedido[] getAllPedidos(){
		return this.listaPedidos;
	}
	public void setAllPedidos(LinhaPedido[] listaPedidos){
		this.listaPedidos = listaPedidos;
	}
	public String pedidoSelecionado(){
		String codigoProduto = getParameter("codProd");
		String descricaoProduto = getParameter("descProd");

		setSessionAttribute("codProd",codigoProduto);
		setSessionAttribute("descProd",descricaoProduto);


		return "cadastroCotacoes";
	}

	public HtmlOutputText getPegaCodigoProduto() {
		return pegaCodigoProduto;
	}

	public void setPegaCodigoProduto(HtmlOutputText pegaCodigoProduto) {
		this.pegaCodigoProduto = pegaCodigoProduto;
	}

	public HtmlOutputText getPegaDescricaoProduto() {
		return pegaDescricaoProduto;
	}

	public void setPegaDescricaoProduto(HtmlOutputText pegaDescricaoProduto) {
		this.pegaDescricaoProduto = pegaDescricaoProduto;
	}
}
JSP
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<%@ taglib uri="http://java.sun.com/jsf/html" prefix="h" %>
<%@ taglib uri="http://java.sun.com/jsf/core" prefix="f" %>
<%@ taglib uri="http://myfaces.apache.org/tomahawk" prefix="t" %>
<f:view>
<html>
<head>
<title>JHOSP</title>
<link href="config/master.css" rel="stylesheet" type="text/css">
<link href="../config/master.css" rel="stylesheet" type="text/css">
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<body id="corpoPrincipal">
<CENTER>
	<table width="560" class="Barra_superior">
		<tr>
			<td>Pedido do Produto  Código do Produto</td>
		</tr>
	</table>
	<br>
	&lt;h:form&gt;
		&lt;table width="560" border="0" cellpadding="3" cellspacing="0" class="FORM_BG"&gt;
			&lt;tr&gt;
				&lt;td align="center" class="titulo_tabela"&gt;Código do Produto:&lt;h:outputText  binding="#{cotacaoListaPedidosProduto.pegaCodigoProduto}"
                                                 										  id="pegaCodigoProduto" /&gt;  Descrição do Produto: &lt;h:outputText binding="#{cotacaoListaPedidosProduto.pegaDescricaoProduto}"
                                                 										  id="pegaDescricaoProduto" /&gt;&lt;/td&gt;
			&lt;/tr&gt;
			&lt;TR&gt;
				&lt;TD height="0" align="left" valign="top"&gt;&lt;t:saveState id="listaReqs" value="#{cotacaoListaPedidosProduto.allPedidos}"&gt;&lt;/t:saveState&gt;
					&lt;t:dataTable id="values" align="center" width="100%" rowClasses="LINHA_1_TAB,LINHA_2_TAB"
												columnClasses="col1,col2" value="#{cotacaoListaPedidosProduto.allPedidos}" var="linhaPedido"&gt;
						&lt;t:column width="40px;"&gt;
							&lt;f:facet name="header"&gt;
								&lt;f:verbatim&gt;C&oacute;digo Pedido&lt;/f:verbatim&gt;
							&lt;/f:facet&gt;
							&lt;t:commandLink action="#{cotacaoListaPedidosProduto.pedidoSelecionado}"&gt;
							&lt;f:param name="codPed" value="codPed"/&gt;
								&lt;h:outputText value="#{linhaPedido.codigoPedido}" /&gt;
							&lt;/t:commandLink&gt;
						&lt;/t:column&gt;
						&lt;t:column width="100px;"&gt;
							&lt;f:facet name="header"&gt;
								&lt;f:verbatim&gt;Estado&lt;/f:verbatim&gt;
							&lt;/f:facet&gt;
							&lt;t:commandLink action="#{cotacaoListaPedidosProduto.pedidoSelecionado}"&gt;
							&lt;f:param name="codPed" value="codPed"/&gt;
								&lt;h:outputText value="#{linhaPedido.categoriaPedido}" /&gt;
							&lt;/t:commandLink&gt;
						&lt;/t:column&gt;
					&lt;/t:dataTable&gt;
				&lt;/TD&gt;
			&lt;/TR&gt;
			&lt;TR&gt;
				&lt;TD class="titulo_tabela"&gt;&nbsp;&lt;/TD&gt;
			&lt;/TR&gt;
			&lt;TR&gt;
				&lt;TD valign="top"&gt;&lt;table width="100%" border="0" cellpadding="3" cellspacing="0"&gt;
						&lt;tr&gt;
							&lt;td width="40%" height="30" align="right"&gt;&nbsp;&lt;/td&gt;
							&lt;td width="20%" align="center"&gt;&lt;t:commandButton id="Botao" styleClass="BUTTON" value="Fechar" action=""/&gt;&lt;/td&gt;
							&lt;td width="40%" align="left"&gt;&nbsp;&lt;/td&gt;
						&lt;/tr&gt;
					&lt;/table&gt;&lt;/TD&gt;
			&lt;/TR&gt;
		&lt;/table&gt;
		<br>
	
	
	
	
	
	
	&lt;/h:form&gt;
&lt;/CENTER&gt;
&lt;/body&gt;
	
	
	
	
	
	
	
	
	
&lt;/html&gt;
&lt;/f:view&gt;

3 Respostas

M

eu não consegui enteder direito teu código, mas me parece que você esta tentano acessar um objeto que ainda não foi instanciado ou que é nullo
Que IDE tu usa?? tenta usar o debug que acredito que tu resolve isto…

Eduardo_Bregaida

Marcelo Udesc:
eu não consegui enteder direito teu código, mas me parece que você esta tentano acessar um objeto que ainda não foi instanciado ou que é nullo
Que IDE tu usa?? tenta usar o debug que acredito que tu resolve isto…

Uso o eclipse, mas já arrumei o problema estava na classe anterior…
vlwww :smiley:

Helton_Barboza

Olá, estou com o mesmo problema…

Poderia me dizer como você resolveu?

Tipo, o que você arrumou na classe anterior?

Grato

Helton Barboza

Criado 15 de setembro de 2006
Ultima resposta 29 de ago. de 2007
Respostas 3
Participantes 3