Compilar Servlets. NÍNGUEM CONSEGUE ME AJUDAR?

5 respostas
D

pacote: obj.sl
arquivos: Conecta.java, Pesquisa. Java
linha de comando pra compilar:
C:objsl>javac -classpath c:servlet.jar Pesquisa.java

Erro ao compilar Pesquisa.java:
C:objsl>javac -classpath c:servlet.jar Pesquisa.java
Pesquisa.java:12: cannot resolve symbol
symbol : class Conecta
location: class obj.sl.Pesquisa
Conecta nConecta = new Conecta();
^
Pesquisa.java:12: cannot resolve symbol
symbol : class Conecta
location: class obj.sl.Pesquisa
Conecta nConecta = new Conecta();
^
2 errors

Conecta.java
:::::::::::::::
package obj.sl;

import <a href="http://java.io">java.io</a>.<em>;

import javax.servlet.</em>;

import javax.servlet.http.<em>;

import java.sql.</em>;

import java.util.*;

public class Conecta extends HttpServlet {

…continua

::::::::::::::::::::::

Pesquisa.java
::::::::::::::::
package obj.sl;

import <a href="http://java.io">java.io</a>.<em>;

import javax.servlet.</em>;

import javax.servlet.http.<em>;

import java.sql.</em>;

import java.util.*;

public class Pesquisa extends HttpServlet{

private ResultSet resultado = null;
Conecta nConecta = new Conecta();

public ResultSet buscaArtigo() {
	nConecta.Conecta();
	nConecta.buscaTodos();
	resultado = nConecta.retornaTodos();
	return resultado;
}

…continua

5 Respostas

Bruno_Cardoso

Boas,

Para ter um Servlet uma classe tem que extender de HttpServlet e implementar o metodo doGet ou doPost (ou ainda o metodo Service que serve tanto para o Get como para o Post).

Aqui fica um exemplo simples:

import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;

public class HelloWorld extends HttpServlet {
    public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
       PrintWriter out = response.getWriter();
       out.println("GUJ");
    }
}

PEACE!

thiagorani

Trabalhe com os metodos doPost() e doGet().
Existe tbem o metodo init(), tudo que estiver nele será executado sempre que seu servlet for requisitado.

Falo.

[]´s

Rafael_Steil

O erro de compilacao esta ocorrendo pq o classpath que voce especificou esta incompleto. Faca

C:\objs&gt;javac -classpath .:c:\servlet.jar Pesquisa.java

( note que tem um ponto seguido de dois pontos antes do “c” )

Rafael

Bani

Só um detalhe em relação a mensagem do Rafael:
No Windows utilize ; no lugar do :

D

Nem com : nem ;
Ainda dá o memso erro.

OLHE MEU AUTOEXEC:
Tem algo errado?
OBS: coloquei “|” porque nao aceita a barra normal

SET JAVA_HOME = C:|Arquivos de programas|j2sdk1.4.1
SET PATH = C:|Arquivos de programas|j2sdk1.4.1|bin;%PATH%;
SET CLASSPATH = C:|Arquivos de programas|j2sdk1.4.1|lib;.;

estou colocando o código das duas classes abaixo. ME AJUDEM!

Conecta:


package obj.sl;

import java.io.*; 
import javax.servlet.*; 
import javax.servlet.http.*;
import java.sql.*;
import java.util.*;

public class Conecta extends HttpServlet {
	
	private Connection conexao = null;
	private Statement declaracao = null;
	private PreparedStatement declPreparada = null;
	private ResultSet resultado = null;
	private String pesquisa = null;
	private String atualiza = null;

	public void Conecta() {
		try {
			Class.forName("org.gjt.mm.mysql.Driver").newInstance();
			conexao = DriverManager.getConnection("jdbc:mysql://localhost/artigos");
			declaracao = conexao.createStatement();
		} catch (SQLException e) {
			System.out.println("Nao foi possivel <b>Conecta()</b>");
		}catch (Exception e) {
			System.out.println("Driver não carregado");
		}
	}
	
	public void buscaTodos() {
		try {
			pesquisa = "SELECT * FROM artigos ORDER BY titulo";
			resultado = declaracao.executeQuery(pesquisa);
		} catch (SQLException e) {
			System.out.println("Nao foi possivel buscarTodos()");
		}
	}
	
	public ResultSet retornaTodos() {
		return resultado;
	}
	
	public void buscaEspecifico(String campo1, String campo2) {
		try {
			pesquisa = "SELECT * FROM artigos WHERE " + campo1 + " LIKE "%" + campo2 + "%" ORDER BY " + campo1;
			resultado = declaracao.executeQuery(pesquisa);
		} catch (SQLException e) {
			System.out.println("Nao foi possivel buscarEspecifico()");
		}
	}
	
	public ResultSet retornaEspecifico() {
		return resultado;
	}
	
	public void buscComentEspec(String campo1) {
		try {
			pesquisa = "SELECT c.nome, c.email,  c.data, c.titulo_coment, c.titulo, c.comentario, a.end_artigo FROM comentarios c, artigos a WHERE  a.titulo = '" + campo1 + "' AND c.titulo = '" + campo1 + "' ORDER BY titulo";
			resultado = declaracao.executeQuery(pesquisa);
		} catch (SQLException e) {
			System.out.println("Nao foi possivel buscComentEspec()");
		}
	}

	public void buscComentEspec(String campo1, String campo2) {
		try {
			pesquisa = "SELECT * FROM comentarios WHERE titulo_coment = '" + campo1 + "' AND data = '" + campo2 + "'";
			resultado = declaracao.executeQuery(pesquisa);
		} catch (SQLException e) {
			System.out.println("Nao foi possivel buscComentEspec()");
		}
	}

		
	public ResultSet retornComentEspec() {
		return resultado;
	}
	
	public void insereComentario(String nome, String email, String data, String titulo_coment, String comentario, String titulo) {
		try {
			atualiza = "INSERT INTO comentarios (nome, email, data, titulo_coment, comentario, titulo) VALUES (?, ?, ?, ?, ?, ?)";
			declPreparada = conexao.prepareStatement(atualiza);
			declPreparada.setString(1, nome);
			declPreparada.setString(2, email);
			declPreparada.setString(3, data);
			declPreparada.setString(4, titulo_coment);
			declPreparada.setString(5, comentario);
			declPreparada.setString(6, titulo);
			declPreparada.executeUpdate();
		} catch (SQLException e) {
			System.out.println("Nao foi possivel buscComentEspec()");
		}
	}
}

Pesquisa:


package obj.sl;

import java.io.*; 
import javax.servlet.*; 
import javax.servlet.http.*;
import java.sql.*;
import java.util.*;

public class Pesquisa extends HttpServlet{
	
	private ResultSet resultado = null;
	Conecta nConecta = new Conecta();
	
	public ResultSet buscaArtigo() {
		nConecta.Conecta();
		nConecta.buscaTodos();
		resultado = nConecta.retornaTodos();
		return resultado;
	}
	
	public ResultSet buscaArtigo(String campo1, String campo2) {
		nConecta.Conecta();
		nConecta.buscaEspecifico(campo1, campo2);
		resultado = nConecta.retornaEspecifico();
		return resultado;
	}
	
	public ResultSet buscaComentario(String campo1) {
		nConecta.Conecta();
		nConecta.buscComentEspec(campo1);
		resultado = nConecta.retornComentEspec();
		return resultado;
	}
	
	public ResultSet buscaComentario(String campo1, String campo2) {
		nConecta.Conecta();
		nConecta.buscComentEspec(campo1, campo2);
		resultado = nConecta.retornComentEspec();
		return resultado;
	}

	public void insereComentario(String nome, String email, String data, String titulo_coment, String comentario, String titulo) {
		nConecta.Conecta();
		nConecta.insereComentario(nome, email, data, titulo_coment, comentario, titulo);
	}
}
Criado 24 de fevereiro de 2003
Ultima resposta 24 de fev. de 2003
Respostas 5
Participantes 5