Banco de dados e servlet

32 respostas
nefertiti

Boa noite!

Estou desenvolvendo uma aplicação web bem simples, que faz o cadastro de alunos. Não sei se a maneira que estou fazendo está correta, pois não cadastra o aluno no banco e, nem emite mensagens de erro. Alguém poderia ajudar-me?. O banco que estou utilizando é o MySQL.

public class CadastroServlet extends HttpServlet {

  protected void processRequest(HttpServletRequest request, HttpServletResponse response)
    throws ServletException, IOException {
           
        try{
            Aluno aluno = new Aluno();
            
            aluno.setNome(request.getParameter("nome"));
            aluno.setCurso(request.getParameter("curso"));
                       
            InserirAluno insAluno = new InserirAluno();
            insAluno.insereAluno(insAluno);
            response.sendRedirect("Confirmacao.jsp");
            
        }
        catch(Exception e ){
        }   
    }
    protected void doGet(HttpServletRequest request, HttpServletResponse response)
    throws ServletException, IOException {
        processRequest(request, response);
    }
    
    protected void doPost(HttpServletRequest request, HttpServletResponse response)
    throws ServletException, IOException {
        processRequest(request, response);
           
    }

Classe: InserirAluno

public class  InserirAluno {
    
       public  InserirAluno() {
    
    }        
        public void insereAluno(Aluno aluno) {
        try{
            
            Aluno aluno = new Aluno();
            
            ConexaoJDBC jdbc = new ConexaoJDBC();
            Connection con = jdbc.getConnection();
            Statement stm = con.createStatement();
            
            String sql = "INSERT INTO dadosAluno (nome)" +
                "VALUES ('"+aluno.getNome()+"')";
            
            stm.executeUpdate(sql);
            stm.close();
            jdbc.closeConnection();
         
        }catch(Exception e){
            e.printStackTrace();
        }
    }

Obrigada

Patty

32 Respostas

kaique

Olha, já que não está acontecendo nada e nenhum erro está sendo lançado, coloca aí para imprimir o stackTrace no catch de dentro de sua servlet…axo que deve estar ocorrendo algum erro por lá então…

Qualquer coisa posta aí…
Vlw!

nefertiti

Olá…

Segue a baixo os erros que aparacem:

Using CATALINA_BASE:   C:\Documents and Settings\PATTY\.netbeans\5.5.1\apache-tomcat-5.5.17_base
Using CATALINA_HOME:   C:\Arquivos de programas\netbeans-5.5.1\enterprise3\apache-tomcat-5.5.17
Using CATALINA_TMPDIR: C:\Documents and Settings\PATTY\.netbeans\5.5.1\apache-tomcat-5.5.17_base\temp
Using JRE_HOME:        C:\Arquivos de programas\Java\jdk1.6.0
07/06/2007 18:12:59 org.apache.catalina.core.AprLifecycleListener lifecycleEvent
INFO: The Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: C:\Arquivos de programas\Java\jdk1.6.0\bin;.;C:\WINDOWS\Sun\Java\bin;C:\WINDOWS\System32;C:\WINDOWS;C:\Arquivos de programas\PHP\;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem
07/06/2007 18:12:59 org.apache.coyote.http11.Http11BaseProtocol init
INFO: Initializing Coyote HTTP/1.1 on http-8084
07/06/2007 18:12:59 org.apache.catalina.startup.Catalina load
INFO: Initialization processed in 1453 ms
07/06/2007 18:12:59 org.apache.catalina.core.StandardService start
INFO: Starting service Catalina
07/06/2007 18:12:59 org.apache.catalina.core.StandardEngine start
INFO: Starting Servlet Engine: Apache Tomcat/5.5.17
07/06/2007 18:12:59 org.apache.catalina.core.StandardHost start
INFO: XML validation disabled
07/06/2007 18:13:02 org.apache.catalina.core.StandardContext resourcesStart
SEVERE: Error starting static Resources
java.lang.IllegalArgumentException: Document base C:\Documents and Settings\PATTY\ExemplodeJSPdoTomcat\build\web does not exist or is not a readable directory
        at org.apache.naming.resources.FileDirContext.setDocBase(FileDirContext.java:140)
        at org.apache.catalina.core.StandardContext.resourcesStart(StandardContext.java:3814)
        at org.apache.catalina.core.StandardContext.start(StandardContext.java:3985)
        at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:759)
        at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:739)
        at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:524)
        at org.apache.catalina.startup.HostConfig.deployDescriptor(HostConfig.java:608)
        at org.apache.catalina.startup.HostConfig.deployDescriptors(HostConfig.java:535)
        at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:470)
        at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1122)
        at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:310)
        at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:119)
        at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1021)
        at org.apache.catalina.core.StandardHost.start(StandardHost.java:718)
        at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1013)
        at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:442)
        at org.apache.catalina.core.StandardService.start(StandardService.java:450)
        at org.apache.catalina.core.StandardServer.start(StandardServer.java:709)
        at org.apache.catalina.startup.Catalina.start(Catalina.java:551)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:589)
        at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:294)
        at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:432)
07/06/2007 18:13:02 org.apache.catalina.core.StandardContext start
SEVERE: Error in resourceStart()
07/06/2007 18:13:02 org.apache.catalina.core.StandardContext start
SEVERE: Error getConfigured
07/06/2007 18:13:02 org.apache.catalina.core.StandardContext start
SEVERE: Context [/jsp-examples] startup failed due to previous errors
07/06/2007 18:13:02 org.apache.catalina.core.StandardContext stop
INFO: Container org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/jsp-examples] has not been started
07/06/2007 18:13:03 org.apache.catalina.core.StandardContext resourcesStart
SEVERE: Error starting static Resources
java.lang.IllegalArgumentException: Document base C:\Documents and Settings\PATTY\ExemplodeServletdoTomcat\build\web does not exist or is not a readable directory
        at org.apache.naming.resources.FileDirContext.setDocBase(FileDirContext.java:140)
        at org.apache.catalina.core.StandardContext.resourcesStart(StandardContext.java:3814)
        at org.apache.catalina.core.StandardContext.start(StandardContext.java:3985)
        at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:759)
        at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:739)
        at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:524)
        at org.apache.catalina.startup.HostConfig.deployDescriptor(HostConfig.java:608)
        at org.apache.catalina.startup.HostConfig.deployDescriptors(HostConfig.java:535)
        at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:470)
        at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1122)
        at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:310)
        at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:119)
        at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1021)
        at org.apache.catalina.core.StandardHost.start(StandardHost.java:718)
        at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1013)
        at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:442)
        at org.apache.catalina.core.StandardService.start(StandardService.java:450)
        at org.apache.catalina.core.StandardServer.start(StandardServer.java:709)
        at org.apache.catalina.startup.Catalina.start(Catalina.java:551)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:589)
        at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:294)
        at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:432)
07/06/2007 18:13:03 org.apache.catalina.core.StandardContext start
SEVERE: Error in resourceStart()
07/06/2007 18:13:03 org.apache.catalina.core.StandardContext start
SEVERE: Error getConfigured
07/06/2007 18:13:03 org.apache.catalina.core.StandardContext start
SEVERE: Context [/servlets-examples] startup failed due to previous errors
07/06/2007 18:13:03 org.apache.catalina.core.StandardContext stop
INFO: Container org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/servlets-examples] has not been started
07/06/2007 18:13:03 org.apache.coyote.http11.Http11BaseProtocol start
INFO: Starting Coyote HTTP/1.1 on http-8084
07/06/2007 18:13:03 org.apache.jk.common.ChannelSocket init
INFO: JK: ajp13 listening on /0.0.0.0:8009
07/06/2007 18:13:03 org.apache.jk.server.JkMain start
INFO: Jk running ID=0 time=0/78  config=null
07/06/2007 18:13:04 org.apache.catalina.storeconfig.StoreLoader load
INFO: Find registry server-registry.xml at classpath resource
07/06/2007 18:13:04 org.apache.catalina.startup.Catalina start
INFO: Server startup in 4813 ms
07/06/2007 18:13:04 org.apache.catalina.core.StandardContext reload
INFO: Reloading this Context has started
07/06/2007 19:44:41 org.apache.catalina.core.StandardContext reload
INFO: Reloading this Context has started
java.sql.SQLException: Field 'nome' doesn't have a default value
        at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1056)
        at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:957)
        at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:2938)
        at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:1601)
        at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:1710)
        at com.mysql.jdbc.Connection.execSQL(Connection.java:2430)
        at com.mysql.jdbc.Statement.executeUpdate(Statement.java:1374)
        at com.mysql.jdbc.Statement.executeUpdate(Statement.java:1290)
        at org.classe.inserirAluno.insereAluno(inserirAluno.java:29)
        at org.classe.CadastroServlet.processRequest(CadastroServlet.java:27)
        at org.classe.CadastroServlet.doPost(CadastroServlet.java:42)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:709)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
        at org.netbeans.modules.web.monitor.server.MonitorFilter.doFilter(MonitorFilter.java:368)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
        at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
        at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
        at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
        at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
        at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
        at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
        at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869)
        at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664)
        at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
        at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80)
        at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684)
        at java.lang.Thread.run(Thread.java:619)
07/06/2007 19:45:50 org.apache.catalina.core.StandardContext reload
INFO: Reloading this Context has started

Até mais

Patty

ramilani12

Acho que erro do seu código esta aqui
Vc está passando o objeto insAluno para método insereAluno()? não seria o objeto aluno?

aluno.setNome(request.getParameter("nome"));
             aluno.setCurso(request.getParameter("curso"));
                        
             InserirAluno insAluno = new InserirAluno();
             insAluno.insereAluno(aluno);
             response.sendRedirect("Confirmacao.jsp");
nefertiti

Olá…

Obrigada!

Mas agora a aplicação insere o aluno no banco mas, como null…ele não pega o que está escrito no campo nome e curso.

Até mais

Patty

kissdemon

Voce está tentando inserir um “aluno” em branco, já que instancia aluno antes de inserir:

Aluno aluno = new Aluno();//retire esta linha
             
             ConexaoJDBC jdbc = new ConexaoJDBC();
             Connection con = jdbc.getConnection();
             Statement stm = con.createStatement();
             
             String sql = "INSERT INTO dadosAluno (nome)" +
                 "VALUES ('"+aluno.getNome()+"')";
nefertiti

Olá…

Obrigada!!!..agora sim…está inserindo no banco… :lol: :lol:

Abusando um pouquinho de vocês: é possivel transformar uma String em integer?..por exemplo:

aluno.setSemestre(Integer.parseInt(request.getParameter("semestre")));

Isto está correto?.

Até mais

Patty

Ironlynx

Sim, funciona, mas numa app real, é melhor vc isolar as coisas, crie um validador(Já pensou se alguém digita “AAA” no campo semestre?), tanto do lado do servidor, como no do cliente. :wink:

ramilani12

Vc poderia realizar essa validação em JavaScript

function validaSemestre(form)
   {
        var f = form;
        if (!isInteger(f.semestre.value))
        {
                alert("Só aceita numeros");
                return false;
        }
 
   }

No html:
          <form action="" method="post" onsubmit="validaSemestre(this.form);">
          <input type="text" name="semestre" />
        </form>
C

Desculpa entrar por aqui, ainda não sei mexer muito em forum, mas o meu caso é parecido com o da amiga, só que no meu caso é na pesquisa ao banco de dados mysql,esta retornando nulo na pesquisa,retorna exatamente os 6 campos dos 3 registros: segue abaixo o codigo da servlet: um momento pq eu apaguei o código pois não funcionava rsrsr

celox

cade o código?

;p

C

package br.com.cassio.servlet;

import java.io.IOException;

import java.io.PrintWriter;

import java.sql.SQLException;

import java.util.*;
import javax.servlet.ServletException;

import javax.servlet.http.HttpServlet;

import javax.servlet.http.HttpServletRequest;

import javax.servlet.http.HttpServletResponse;

import br.com.cassio.jdbc.modelo.Ligacao;

public class ListaLigacaoServlet extends HttpServlet {

/**
 * 
 */
private static final long serialVersionUID = 1L;

protected void service(HttpServletRequest request, HttpServletResponse response)
                     throws ServletException, IOException {
	try{
		
		LigacaoDAO dao = new LigacaoDAO();
		
		List<Ligacao> ligacoes = dao.getLista();
		 
		for(Ligacao ligacao : ligacoes){
			 PrintWriter writer = response.getWriter();
			 writer.print("<html>");
			 writer.print(request.getParameter("cidadeorigem"));
			 writer.print(request.getParameter("cidadedestino"));
			 writer.print("<html>");
		 }
		 
	 }catch (SQLException e) {
		
	 }
	 
	 }
	 }
	 
	 Então galera ta ae o fonte, se alguem puder me ajudar, desde ja grato flw.AH tem um aviso dizendo que a varialvel ligacao dentro do for não esta sendo usada.
O

cara, passa o código da ligacaoDao, e tenta usar o bb code, que fica mais fácil de visualizar

O

e outra coisa, agora q eu me liguei também, dá uma olhada nessa parte do código:

for(Ligacao ligacao : ligacoes){ 
  PrintWriter writer = response.getWriter(); 
  writer.print("<html>"); 
  writer.print(request.getParameter("cidadeorigem")); 
  writer.print(request.getParameter("cidadedestino")); 
  writer.print("<html>"); 
}

porque tipo, acredito q ficaria melhor escrito assim:

PrintWriter writer = response.getWriter(); 
  writer.print("<html>"); 
  for(Ligacao ligacao : ligacoes){ 
      writer.print(ligacao.getCidadeDeOrigem());
      writer.print(ligacao.getCidadeDeDestino());
  } 
  writer.print("<html>");

ou algo assim, dá uma olhada depois, porque, vamos a explicação que eu acho que seja, quando vc colocou o for, dentro dele vc não chamou nenhum método do objeto ligação, então ele diz que nunca foi lido ou escrito.

celox

Ficaria melhor não! o certo seria vc mandar assim…

se nao estou enganado as tags la <html> e <html> (ou seria </html>?) são a da página?

entao vc tem que fazer da segunda maneira:

PrintWriter writer = response.getWriter();   
writer.print("&lt;html&gt;");   
for(Ligacao ligacao : ligacoes){   
    writer.print(ligacao.getCidadeDeOrigem());   
    writer.print(ligacao.getCidadeDeDestino());   
}   
writer.print("&lt;html&gt;");

ou vc vai criar várias pagnas dentro do for? rs

entao, cria como se fosse uma html normal, entretanto se alerte apenas pros comandos jsp e as suas tags <%

cabou…

espero q isso auxilie vc…

O

podes crer tbm, nem tinha me ligado nisso tbm, verdade…

C
public List<Ligacao> getLista() throws SQLException {
		    
		   PreparedStatement stmt = this.connection.prepareStatement("select * from chamadas");
		   ResultSet rs = stmt.executeQuery();
		   
		   List<Ligacao> ligacoes = new ArrayList<Ligacao>();
		   
		   while (rs.next()) {
			   
			   //criando o objeto Ligacao
			   
			   Ligacao ligacao = new Ligacao();
			   
			   ligacao.setCidadeorigem(rs.getString("cidadeorigem"));
			   ligacao.setCidadedestino(rs.getString("cidadedestino"));
			   
			   //adiciona o objeto a lista
			   
			   ligacoes.add(ligacao);
		   }
		   rs.close();
		   stmt.close();
		   
		   return ligacoes;
	   }
esse é o pesquisa do LigacaoDAO
C

então cara ja coloquei no bb code e ja coloquei o for dentro, tem logica sim o for estar dentro apesar que do outo jeito eu tambem acredito que funcione,ma ainda não entendo oque vc me explicou da variavel ligacao dentro do for dar um aviso de não esta sendo usada,me parece estar certo apesar de eu não entender muito bem esse tipo de for,só sei que ele ta funcionando no teste de pesquisa do LigacaoDAO da mesma forma que o pesquisa do LigacaoDAO tambem esta funcionando,na verade esse servlet de pesquisa eu tive que tentar criar, pois só existia na apostila o modelo de gravar no banco,por isso a dificuldade,depois tentarei criar o servlet de apagar e de atualizar, finalizando assim as 4 operacôes basicas que podem ser feitas num banco de dados,*GRATO PELA ATENÇÃO

C
protected void service(HttpServletRequest request, HttpServletResponse response)
	                     throws ServletException, IOException {
		try{
			
			LigacaoDAO dao = new LigacaoDAO();
			
			List<Ligacao> ligacoes = dao.getLista();
			 PrintWriter writer = response.getWriter();
				 
			     writer.print("<html>");
				 
				 for(Ligacao ligacao : ligacoes){
				 
					 writer.print(request.getParameter("cidadeorigem"));
				 writer.print(request.getParameter("cidadedestino"));
				 
				 }
				 writer.print("<html>");
			 
		}catch (SQLException e) {
			}
		 }
TAMBEM TEM UMA SETINHA DO TIPO ASSIM :do lado do protected void service :overrides javax.servlet.http.HttpServlet.service
C

Bom dia a todos !!!

Então Galera os codigos estão logo acima, o que esta acontecendo é o seguinte:esta retornando nulo na pesquisa.Por favor se alguem pude me ajudar.
VLW ABRAÇO

O

Cara, o que que acontece, esse for faz o seguinte, para cada objeto ligação no no list ligações faça alguma coisa, no caso acho q vc quer que, para cada objeto ligação no list ligações, imprima as ligações. é isso correto???

Só que, você colocou que para cada objeto ligação no list ligações, imprima os parametros da página que chamou o servlet e não do list q vc chamou no ligacaoDao, por isso q ele diz q a variável nunca foi usada.

entendeu?

Pelo código q eu vi, acho q é só isso, se eu estiver errado, alguém me corrige… xD

Abraços, qualquer dúvida ou algo a acrescentar, estamos

C
Cara, muitíssimo obrigado,o fonte corrigido segue abaixo:
public class ListaLigacaoServlet extends HttpServlet {
	 
	/**
	 * 
	 */
	private static final long serialVersionUID = 1L;

	protected void service(HttpServletRequest request, HttpServletResponse response)
	                     throws ServletException, IOException {
		try{
			
			LigacaoDAO dao = new LigacaoDAO();
			
			List<Ligacao> ligacoes = dao.getLista();
			 PrintWriter writer = response.getWriter();
				 
			     writer.print("<html>");
				 
				 for(Ligacao ligacao : ligacoes){
				 
					 writer.print(ligacao.getCidadeorigem());
				 writer.print(ligacao.getCidadedestino());
				 
				 }
				 writer.print("<html>");
			 
		}catch (SQLException e) {
			}
		 }
		 }
O

agora, só mais 1 coisinha, se me permite falar… xD

a tag para fechar o html é “”, no caso vc tá abrindo a tag html 2x…

Desculpa qualquer coisa… xD

C
public void adiciona(Ligacao ligacao) throws SQLException {
         
    	//prepared statement para insercao
    	
    	String sql ="insert into chamadas (cidadeorigem,cidadedestino) values (?,?)";
    	PreparedStatement stmt = connection.prepareStatement(sql);
    	
    
    	//seta os valores
    	
    	stmt.setString(1,ligacao.getCidadeorigem());
    	stmt.setString(2,ligacao.getCidadedestino());
    	
    	// executa
    	
    	stmt.execute();
    	stmt.close();
	}
package servlets;

import java.io.IOException;
import java.io.PrintWriter;
import java.sql.SQLException;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;




public class AdicionaContatoServlet extends HttpServlet {
	 
	private static final long serialVersionUID = 1L;

	protected void service(HttpServletRequest request, HttpServletResponse response)
	                     throws ServletException, IOException {
		 try{
		 Ligacao ligacao = new Ligacao();
		 
		
		String cidadeorigem = request.getParameter("cidadeorigem");
		 String cidadedestino = request.getParameter("cidadedestino");
		 
		
		 ligacao.setCidadeorigem(cidadeorigem);
		 ligacao.setCidadedestino(cidadedestino);
		 
		
			 LigacaoDAO dao = new LigacaoDAO();
			 dao.adiciona(ligacao);
		
		
		 
		 PrintWriter writer = response.getWriter();
		 writer.print("<html>");
		 writer.println("Contato Adicionado");
		 writer.println("</html>");
		 
       }catch (SQLException e) {
}
}		 
}
percebi que o meu ta add nulo no banco tambem.segue acima o código desde ja agradecido.ja fechei o html lá abraço
C

não to conseguindo pegar o parâmetro que dessa vez é da pagina.

O

Na página que você tá enviando o formulário tá passando como get ou post?

vê primeiro, se a página qnd é chamada tá entrando nessa parte de código, eu tô saindo pra faculdade agora, qnd chegar no estágio vou dar 1 olhada com calma ae no código

C
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
    pageEncoding="ISO-8859-1"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">

<html>

<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Insert title here</title>
</head>

<body>

Preencha os dados e pressione o botão:<br/>

<form action="testa-adiciona" method="POST">

Cidade Origem: <input type="text" name="cidadeorigem"/><br/>
Cidade Destino: <input type="text" name="cidadedestino"/><br/>
<input type="submit" value="Enviar"/>

</form>

</body>

</html>

ta ai a jsp,ta como post

O

cara, o seu servlet tá mapeado como “testa-adiciona” ?

C

ta o codigo é o seguinte[/code]

http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" id="WebApp_ID" version="2.5">
jsptexte

index.html
index.htm
index.jsp
default.html
default.htm
default.jsp


adicionaContato
servlets.AdicionaContatoServlet


adicionaContato
/testa-adiciona


listaLigacao
servlets.ListaLigacaoServlet


listaLigacao
/testa-lista


[code]vou tentar dar um reflesh, ctrl + s sei lá,nao me lembro direito mas acho que tava funcionando é que deployment descriptor tinha sumido ai au apaguei um monte de coisa dei um reflesh e o descriptor voltou a aparecer

C
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" id="WebApp_ID" version="2.5">
  <display-name>jsptexte</display-name>
  <welcome-file-list>
    <welcome-file>index.html</welcome-file>
    <welcome-file>index.htm</welcome-file>
    <welcome-file>index.jsp</welcome-file>
    <welcome-file>default.html</welcome-file>
    <welcome-file>default.htm</welcome-file>
    <welcome-file>default.jsp</welcome-file>
  </welcome-file-list>
<servlet>
<servlet-name>adicionaContato</servlet-name>
<servlet-class>servlets.AdicionaContatoServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>adicionaContato</servlet-name>
<url-pattern>/testa-adiciona</url-pattern>
</servlet-mapping>

<servlet>
<servlet-name>listaLigacao</servlet-name>
<servlet-class>servlets.ListaLigacaoServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>listaLigacao</servlet-name>
<url-pattern>/testa-lista</url-pattern>
</servlet-mapping>

</web-app>
O

po cara, essa parte de XML eu sou fraco(não que em java eu seja forte… xD), mas acho q tá tudo certinho ae no web.xml, vou dar 1 procurada aqui e se eu achar te digo, ok?

Andre_Fonseca

tente mudar

&lt;form action="testa-adiciona" method="POST"&gt;

para

&lt;form action="/testa-adiciona" method="POST"&gt;
C

puts Cara foi,tinha que mandar rodar primeiro pra depois ir la no browse e preecher o formulario,tava tudo certinho,mas mesmo assim obrigado pela atencão vlw abraço

Criado 7 de junho de 2007
Ultima resposta 27 de out. de 2009
Respostas 32
Participantes 9