pq ta dando esse erro??? alguem pode me ajudar???
pag orcamento.jsp
<%@ taglib uri="/WEB-INF/struts-html" prefix="html" %>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Orçamento de Conserto</title>
</head>
<body>
<html:form action="Orcamento.do" method="get">
<table border="1" cellpadding="5" width="300">
<tr align="center">
<td colspan="3">Cadastro de Orçamento de Concerto</td>
</tr>
<tr>
<td>Serviço</td>
<td>
<html:select size="1" name="orcamentoForm" property="servico">
<html:options collection="servico" labelName="codigo" labelProperty="codigo"></html:options>
</html:select>
</td>
<td><html:checkbox property="aprovado" disabled="true">Aprovado</html:checkbox></td>
</tr>
<tr>
<td>Cliente</td>
<td colspan="2">
<html:select size="1" property="cliente" >
<html:options collection="cliente" labelName="nome" labelProperty="nome"></html:options>
</html:select>
</td>
</tr>
<tr>
<td>Produto</td>
<td colspan="2">
<html:select size="1" property="produto">
<html:options collection="produto" labelName="nome" labelProperty="nome"></html:options>
</html:select>
</td>
</tr>
<tr>
<td>Configuração</td>
<td colspan="2">
<html:text property="configuracao" size="30" maxlength="30"/>
</td>
</tr>
<tr>
<td>Defeito</td>
<td colspan="2">
<html:textarea property="defeito" cols="40" rows="5"></html:textarea>
</td>
</tr>
<tr>
<td rowspan="5" valign="middle">Avaliação
Técnica
</td>
<td colspan="2">
<html:textarea property="avaliacao" cols="40" rows="5"></html:textarea>
</td>
</tr>
<tr>
<td>
kl
</td>
<td>
lk
</td>
</tr>
<tr>
<td>
<html:select property="peca" size="1">
<html:options collection="peca" labelName="nome" labelProperty="nome"></html:options>
</html:select>
</td>
<td>
<html:text property="quantidade" size="4" maxlength="4"/>
</td>
</tr>
<tr>
<td colspan="2" align="right">
<html:submit value="Adicionar peça"/>
</td>
</tr>
<tr>
<td>Técnico:</td>
<td>
<html:select size="1" property="tecnico">
<html:options collection="tecnico" labelName="nome" labelProperty="nome"></html:options>
</html:select>
</td>
</tr>
<tr>
<td>Data de entrada</td>
<td>
<html:text property="datEntrada" size="10" maxlength="10"/>
</td>
<td></td>
</tr>
<tr>
<td>Data de inicio do serviço
</td>
<td>
<html:text property="datInicio" size="10" maxlength="10"/>
</td>
<td></td>
</tr>
<tr>
<td>Data de conclusão do serviço</td>
<td>
<html:text property="datConclusao" size="10" maxlength="10"/>
</td>
<td></td>
</tr>
<tr>
<td></td>
<td></td>
<td>
<html:submit value="ok"/>
</td>
</tr>
</table>
</html:form>
</body>
</html>
erro
type Exception report
message
description The server encountered an internal error () that prevented it from fulfilling this request.
exception
org.apache.jasper.JasperException: No name specified
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:372)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:292)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:236)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
org.apache.struts.action.RequestProcessor.doForward(RequestProcessor.java:1069)
org.apache.struts.action.RequestProcessor.processForwardConfig(RequestProcessor.java:455)
org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:279)
org.apache.struts.action.ActionServlet.process(ActionServlet.java:1482)
org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:507)
javax.servlet.http.HttpServlet.service(HttpServlet.java:689)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
root cause
java.lang.IllegalArgumentException: No name specified
org.apache.commons.beanutils.PropertyUtils.getNestedProperty(PropertyUtils.java:721)
org.apache.commons.beanutils.PropertyUtils.getProperty(PropertyUtils.java:801)
org.apache.struts.taglib.html.OptionsTag.doEndTag(OptionsTag.java:240)
org.apache.jsp.WEB_002dINF.jsp.orcamento_jsp._jspx_meth_html_options_0(orcamento_jsp.java:327)
org.apache.jsp.WEB_002dINF.jsp.orcamento_jsp._jspx_meth_html_select_0(orcamento_jsp.java:298)
org.apache.jsp.WEB_002dINF.jsp.orcamento_jsp._jspx_meth_html_form_0(orcamento_jsp.java:126)
org.apache.jsp.WEB_002dINF.jsp.orcamento_jsp._jspService(orcamento_jsp.java:87)
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:94)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:324)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:292)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:236)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
org.apache.struts.action.RequestProcessor.doForward(RequestProcessor.java:1069)
org.apache.struts.action.RequestProcessor.processForwardConfig(RequestProcessor.java:455)
org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:279)
org.apache.struts.action.ActionServlet.process(ActionServlet.java:1482)
org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:507)
javax.servlet.http.HttpServlet.service(HttpServlet.java:689)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
struts-config.xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts-config PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 1.1//EN"
"http://jakarta.apache.org/struts/dtds/struts-config_1_1.dtd">
<struts-config>
<data-sources/>
<form-beans>
<form-bean name="orcamentoForm" type="app.orcamento.OrcamentoActionForm"/>
</form-beans>
<global-exceptions/>
<global-forwards>
<forward name="orcamento" path="/SelectOrcamento.do" redirect="false"/>
</global-forwards>
<action-mappings>
<action path="/SelectOrcamento" scope="request" type="app.orcamento.OrcamentoAction">
<forward name="ok" path="/WEB-INF/jsp/orcamento.jsp"/>
</action>
<action path="/Orcamento" scope="request" type="app.orcamento.OrcamentoRedirectAction">
<forward name="ok" path="/casa.html"/>
</action>
</action-mappings>
<controller inputForward="true"/>
</struts-config>
OrcamentoActionForm
/*
* Created on 29/06/2005
*
* TODO To change the template for this generated file go to
* Window - Preferences - Java - Code Style - Code Templates
*/
package app.orcamento;
import org.apache.struts.action.*;
/**
* @author cu_ringa
*
* TODO To change the template for this generated type comment go to
* Window - Preferences - Java - Code Style - Code Templates
*/
public class OrcamentoActionForm extends ActionForm {
private String servico;
private String aprovado;
private String cliente;
private String produto;
private String configuracao;
private String defeito;
private String avaliacao;
private String peca;
private String quantidade;
private String tecnico;
private String datEntrada;
private String datInicio;
private String datConclusao;
/**
*
*/
public OrcamentoActionForm() {}
/**
* @param servico
* @param aprovado
* @param cliente
* @param produto
* @param configuracao
* @param defeito
* @param avaliacao
* @param peca
* @param quantidade
* @param tecnico
* @param datEntrada
* @param datInicio
* @param datConclusao
*/
public OrcamentoActionForm(String servico, String aprovado, String cliente,
String produto, String configuracao, String defeito,
String avaliacao, String peca, String quantidade, String tecnico,
String datEntrada, String datInicio, String datConclusao) {
this.servico = servico;
this.aprovado = aprovado;
this.cliente = cliente;
this.produto = produto;
this.configuracao = configuracao;
this.defeito = defeito;
this.avaliacao = avaliacao;
this.peca = peca;
this.quantidade = quantidade;
this.tecnico = tecnico;
this.datEntrada = datEntrada;
this.datInicio = datInicio;
this.datConclusao = datConclusao;
}
/**
* @return Returns the aprovado.
*/
public String getAprovado() {
return aprovado;
}
/**
* @param aprovado The aprovado to set.
*/
public void setAprovado(String aprovado) {
this.aprovado = aprovado;
}
/**
* @return Returns the avaliacao.
*/
public String getAvaliacao() {
return avaliacao;
}
/**
* @param avaliacao The avaliacao to set.
*/
public void setAvaliacao(String avaliacao) {
this.avaliacao = avaliacao;
}
/**
* @return Returns the cliente.
*/
public String getCliente() {
return cliente;
}
/**
* @param cliente The cliente to set.
*/
public void setCliente(String cliente) {
this.cliente = cliente;
}
/**
* @return Returns the configuracao.
*/
public String getConfiguracao() {
return configuracao;
}
/**
* @param configuracao The configuracao to set.
*/
public void setConfiguracao(String configuracao) {
this.configuracao = configuracao;
}
/**
* @return Returns the datConclusao.
*/
public String getDatConclusao() {
return datConclusao;
}
/**
* @param datConclusao The datConclusao to set.
*/
public void setDatConclusao(String datConclusao) {
this.datConclusao = datConclusao;
}
/**
* @return Returns the datEntrada.
*/
public String getDatEntrada() {
return datEntrada;
}
/**
* @param datEntrada The datEntrada to set.
*/
public void setDatEntrada(String datEntrada) {
this.datEntrada = datEntrada;
}
/**
* @return Returns the datInicio.
*/
public String getDatInicio() {
return datInicio;
}
/**
* @param datInicio The datInicio to set.
*/
public void setDatInicio(String datInicio) {
this.datInicio = datInicio;
}
/**
* @return Returns the defeito.
*/
public String getDefeito() {
return defeito;
}
/**
* @param defeito The defeito to set.
*/
public void setDefeito(String defeito) {
this.defeito = defeito;
}
/**
* @return Returns the peca.
*/
public String getPeca() {
return peca;
}
/**
* @param peca The peca to set.
*/
public void setPeca(String peca) {
this.peca = peca;
}
/**
* @return Returns the produto.
*/
public String getProduto() {
return produto;
}
/**
* @param produto The produto to set.
*/
public void setProduto(String produto) {
this.produto = produto;
}
/**
* @return Returns the quantidade.
*/
public String getQuantidade() {
return quantidade;
}
/**
* @param quantidade The quantidade to set.
*/
public void setQuantidade(String quantidade) {
this.quantidade = quantidade;
}
/**
* @return Returns the servico.
*/
public String getServico() {
return servico;
}
/**
* @param servico The servico to set.
*/
public void setServico(String servico) {
this.servico = servico;
}
/**
* @return Returns the tecnico.
*/
public String getTecnico() {
return tecnico;
}
/**
* @param tecnico The tecnico to set.
*/
public void setTecnico(String tecnico) {
this.tecnico = tecnico;
}
}
OrcamentoAction
/*
* Created on 30/06/2005
*
* TODO To change the template for this generated file go to
* Window - Preferences - Java - Code Style - Code Templates
*/
package app.orcamento;
import app.cliente.*;
import app.peca.*;
import app.produto.*;
import app.servico.*;
import app.tecnico.*;
import java.util.*;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;
import org.apache.struts.action.*;
/**
* @author cu_ringa
*
* TODO To change the template for this generated type comment go to
* Window - Preferences - Java - Code Style - Code Templates
*/
public class OrcamentoAction extends Action {
public ActionForward execute (ActionMapping map, ActionForm form,
HttpServletRequest req, HttpServletResponse res){
ClienteDAO cliente = new ClienteDAO();
Collection clienteColl = cliente.selectCliente();
PecaDAO peca = new PecaDAO();
Collection pecaColl = peca.selectPeca();
ProdutoDAO produto = new ProdutoDAO();
Collection produtoColl = produto.selectProduto();
ServicoDAO servico = new ServicoDAO();
Collection servicoColl = servico.selectServico();
TecnicoDAO tecnico = new TecnicoDAO();
Collection tecnicoColl = tecnico.selectTecnico();
req.setAttribute("cliente", clienteColl);
req.setAttribute("peca", pecaColl);
req.setAttribute("produto", produtoColl);
req.setAttribute("servico", servicoColl);
req.setAttribute("tecnico", tecnicoColl);
return map.findForward("ok");
}
}