Numa conex�o com o banco de dados, o PreparedStatement � adquado para ser
utilizado com um comando SELECT? Por exemplo, o seguinte c�digo n�o
funcionou comigo (tentei colocar da maneira mais resumida que consegui).

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

public class ServletPrepared extends GenericServlet
{

 public void service(ServletRequest req, ServletResponse res)
 {
  ResultSet result;
  PrintWriter out;
  Connection connection;
  PreparedStatement statement;

  try
  {
   Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
   connection=DriverManager.getConnection("jdbc:odbc:webapp");
   statement=connection.prepareStatement("SELECT * FROM AGENDA WHERE NOME
LIKE '%?%'");
   statement.setString(1,"davi");
   result=statement.executeQuery();
   if (result!=null)
   {
    out=res.getWriter();
    while(result.next())
     out.print(result.getString(1));
    out.flush();
   }
   connection.close();
  }
  catch(ClassNotFoundException e)
  {
   System.out.println("Driver unavailabe: "+e.getMessage());
  }
  catch(IOException e)
  {
   System.out.println(e.getMessage());
  }
  catch(SQLException e)
  {
   System.out.println(e.getMessage());
  }

 }
}

O erro gerado foi:

java.lang.NullPointerException
 at ServletPrepared.service(ServletPrepared.java:35)
 at
com.caucho.server.http.FilterChainServlet.doFilter(FilterChainServlet.java:9
6)
 at com.caucho.server.http.Invocation.service(Invocation.java:312)
 at com.caucho.server.http.CacheInvocation.service(CacheInvocation.java:135)
 at com.caucho.server.http.HttpRequest.handleRequest(HttpRequest.java:221)
 at
com.caucho.server.http.HttpRequest.handleConnection(HttpRequest.java:163)
 at com.caucho.server.TcpConnection.run(TcpConnection.java:137)
 at java.lang.Thread.run(Thread.java:484)

O script da tabela utilizada foi o seguinte:

CREATE TABLE [dbo].[Agenda] (
 [Codigo] [int] IDENTITY (1, 1) NOT NULL ,
 [Nome] [varchar] (50) NOT NULL ,
 [Fone] [char] (10) NOT NULL ,
 [EMail] [varchar] (20) NULL
)


---------------------------------------------------------------------
Para cancelar a subscri��o, envie mensagem para: 
[EMAIL PROTECTED]
Para comandos adicionais, envie mensagem para: [EMAIL PROTECTED]

Responder a