Erro aplicacao web

Olá, gostaria de saber pq esta acontecendo esse erro, ja tentei d tudo, mas sempre esta me retornando ele…vo postar os meus codigos (somente os metodos q estou usando) e o erro: obs.: os arquivos CategoriaVO e SecaoVO, sao apenas para recuperar os get e set…

erro

org.apache.jasper.JasperException: Unable to compile class for JSP

An error occurred at line: 16 in the jsp file: /categoria.jsp
Generated servlet error:
The method consultar(int) in the type SecaoDAO is not applicable for the arguments ()


	org.apache.jasper.compiler.DefaultErrorHandler.javacError(DefaultErrorHandler.java:84)
	org.apache.jasper.compiler.ErrorDispatcher.javacError(ErrorDispatcher.java:328)
	org.apache.jasper.compiler.JDTCompiler.generateClass(JDTCompiler.java:389)
	org.apache.jasper.compiler.Compiler.compile(Compiler.java:288)
	org.apache.jasper.compiler.Compiler.compile(Compiler.java:267)
	org.apache.jasper.compiler.Compiler.compile(Compiler.java:255)
	org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:556)
	org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:296)
	org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:295)
	org.apache.jasper.servlet.JspServlet.service(JspServlet.java:245)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:802)


note The full stack trace of the root cause is available in the Apache Tomcat/5.5.5 logs.

CategoriaDAO


package com.site.dao;

import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.Collection;

import com.site.conexao.ArquivoBanco;
import com.site.conexao.Dados;
import com.site.conexao.JDBCConexao;
import com.site.vo.CategoriaVO;

    public Collection consultarCategoria() {
		
		Dados dados = new Dados();
    	Connection con = dados.getConexao();
		PreparedStatement ps = null;
		ResultSet rs = null;
		Collection categorias = new ArrayList();
		String comandoConsultar = "";
		
		try {
			
			comandoConsultar = "select * from categorias";
			
			ps = con.prepareStatement( comandoConsultar );
			rs = ps.executeQuery();
			
			while (rs.next()) {
				
				CategoriaVO cate = new CategoriaVO();
				cate.setCod( rs.getInt("cod_cat") );
				cate.setNome( rs.getString("nome_cat") );
				categorias.add(cate);
				
			}
			
			return categorias;
		
		} catch ( SQLException se ) {
			
			se.printStackTrace();
			
		} 
		
		return categorias;
		
	} // end consultar

SecaoDAO

package com.site.dao;

import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.Collection;

import com.site.conexao.ArquivoBanco;
import com.site.conexao.Dados;
import com.site.conexao.JDBCConexao;
import com.site.vo.SecaoVO;

    public Collection consultarSecao( int cat ) {
		
		Dados dados = new Dados();
		Connection con = dados.getConexao();
		PreparedStatement ps = null;
		ResultSet rs = null;
		Collection secoes = new ArrayList();
		String comandoConsultar = "";
		
		try {
			
			comandoConsultar = "select * from secoes where cod_cat = ?";
			
			ps = con.prepareStatement( comandoConsultar );
			ps.setInt(1,cat);
			rs = ps.executeQuery();
			
			while (rs.next()) {
				
				SecaoVO seca = new SecaoVO();
				seca.setCod( rs.getInt("cod_secao") );
				seca.setNome( rs.getString("nome_secao") );
				seca.setCodCat( rs.getInt("cod_cat"));
				secoes.add(seca);
				
			}
			
			return secoes;
		
		} catch ( SQLException se ) {
			
			se.printStackTrace();
			
		} 
		
		return secoes;
		
	} // end consultar

categoria.jsp

<%@ page import="com.site.dao.SecaoDAO" %>
<%@ page import="com.site.vo.SecaoVO" %>
<%@ page import="com.site.dao.CategoriaDAO" %>
<%@ page import="com.site.vo.CategoriaVO" %>
<%@ page import="java.util.Collection" %>
<%@ page import="java.util.ArrayList" %>
<%@ page import="java.util.Iterator" %>
<%!
 public Collection consultarCategoria() {
   CategoriaDAO cate = new CategoriaDAO();
   Collection categorias = cate.consultarCategoria();
   return categorias;
 } 
%>
<%!
 public Collection consultarSecao(int cat) {
   SecaoDAO seca = new SecaoDAO();
   Collection secoes = seca.consultar();
   return secoes;
 } 
%>
<%
 ArrayList array = (ArrayList) consultarCategoria();
 Iterator itCat = array.iterator();
 while ( itCat.hasNext() ) {
  CategoriaVO vo = (CategoriaVO) itCat.next();
%>
<%=vo.getNome()%>
<% } %>

<%
 int cat = Integer.parseInt( request.getParameter( "cat" ) );
 ArrayList array2 = (ArrayList) consultarSecao(cat);
 Iterator itSec = array2.iterator();
 while ( itSec.hasNext() ) {
  SecaoVO vo = (SecaoVO) itSec.next();
%>
<%=vo.getNome%>
<% } %>

opa,

bem o erro é que você não está informando os argumentos necessários para o método consultar definido por você.
É apenas um descuido, veja só você esqueceu de a variável cat para o teu método consultar nesta parte do código:

<%! public Collection consultarSecao(int cat) { SecaoDAO seca = new SecaoDAO(); Collection secoes = seca.consultar(cat); return secoes; } %>

:okok:

nao, nao, desculpe…é q eu coloquei errado, eu fui editando para n colocar tudo no post…mas no meu codigo ta desse jeito…

<%! 
 public Collection consultarSecao(int cat) { 
   SecaoDAO seca = new SecaoDAO(); 
   Collection secoes = seca.consultarSecao(cat); 
   return secoes; 
 } 
%> 

E ainda assim, esta dando akele erro…o q sera?

Ja encontrei o erro, …é pq eu tava declarando o metodo como consultaSecao() na pagina SecaoDAO e dpois chamando ele no arquivo categoria.jsp…apenas como consulta()…ai num funciona mesmo n…hehehhe Valeu T mais