Formulario web em java

Pessoal, estou iniciando em java para web, e estou tendo dificuldade pra poder criar uma aplicaçao completa de um formulario com select, insert, update,delete, alguem teria
algum material com um passa a passo pra me fornecer? estou precisando muito ai galera se poderem me ajudar manda pro meu email shadowblink@gmail.com

vlew pessoal!!

Flavio Souza

Cara, primeiro tu tem que ver o que vc vai usar de fw.

Um formulario é um CRUD. Da uma olhada em Struts ou JSF.

Ferramenta boa para fazer CRUD é Struts.

flws

Ola,

Quais seriam as dificuldades? não quer posta-las no forum? talves alguem aqui consiga te ajudar…

cara criei um metodo pra poder fazer update no banco. mas n to conseguindo fazer o update da um erro de syntax. o metodo eh esse:

public UsuarioED alteraDados(UsuarioED usuarioED) throws SQLException {
//boolean alteraDados = false;
StringBuilder sql = new StringBuilder();
UsuarioED altera = new UsuarioED();
sql.append(“UPDATE usuarios (nm_usuario, nm_senha, nm_email) VALUES (”);
sql.append("’"+usuarioED.getNome()+"’, ‘"+usuarioED.getSenha()+"’ , ‘"+usuarioED.getEmail()+"’)");
this.executasql.executarUpdate(sql.toString());

	return altera;
}

o erro eh esse:

org.postgresql.util.PSQLException: ERROR: syntax error at or near “VALUES”
at org.postgresql.core.v3.QueryExecutorImpl.receiveErrorResponse(QueryExecutorImpl.java:1512)
at org.postgresql.core.v3.QueryExecutorImpl.processResults(QueryExecutorImpl.java:1297)
at org.postgresql.core.v3.QueryExecutorImpl.execute(QueryExecutorImpl.java:188)
at org.postgresql.jdbc2.AbstractJdbc2Statement.execute(AbstractJdbc2Statement.java:437)
at org.postgresql.jdbc2.AbstractJdbc2Statement.executeWithFlags(AbstractJdbc2Statement.java:339)
at org.postgresql.jdbc2.AbstractJdbc2Statement.executeUpdate(AbstractJdbc2Statement.java:285)
at com.master.util.bd.ExecutaSQL.executarUpdate(ExecutaSQL.java:136)
at com.master.bd.UsuarioBD.alteraDados(UsuarioBD.java:61)
at com.master.rn.UsuarioRN.alteraDados(UsuarioRN.java:105)
at org.apache.jsp.altera_005fdados_jsp._jspService(altera_005fdados_jsp.java:61)
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:98)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:328)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:315)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:265)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:269)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:210)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:174)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:108)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:151)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:870)
at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:665)
at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:528)
at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:81)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:685)
at java.lang.Thread.run(Unknown Source)
25/08/2008 14:59:48 org.apache.catalina.core.StandardContext reload

alguem pode me ajudar?

teu comando update está errado…

use assim:

update usuario set nome='Gerson', telefone='9090-9090' where login='ger'

cara usei o camando que vc fez e n deu certo, dae usei esse aqui oh: sql.append(“UPDATE usuarios set nm_usuario =’”+usuarioED.getNome()+"’,nm_email=’"+usuarioED.getEmail()+"’");

mas toda vez q eu mudo um nome no banco ele muda todos os outros, tipo eu to fazendo um jsp q recebe os valores de outro apartir desses valores eu modifico eles no banco.

faltou a clausula where cara!

update usuario set nome='Gerson', telefone='9090-9090' WHERE idUsuario=10

Bom dia pessoal, bom estou com outro problema na minha aplicaçao, criei um metodo pra altera algo no banco , só que ele da um erro, parece que nao estou conseguinto passa o oid para o jsp para ele fazer a busca e altera apenas naquele oid, abaixo segue o metodo e meu jsp.

Metodo:

public UsuarioED alteraDados(HttpServletRequest request) {

	this.inicioTransacao();
	UsuarioED altera = new UsuarioED();
	UsuarioED usuarioED = new UsuarioED();
	UsuarioBD usuarioBD = new UsuarioBD(this.sql);
	String nome = request.getParameter("nome");
	String senha = request.getParameter("senha");
	int oid = Integer.parseInt(request.getParameter("oid"));
	String email = request.getParameter("email");
  
	if (nome != null) {
		usuarioED.setNome(nome);
	} else {
		usuarioED.setNome("");
	}
	if (senha != null) {
		usuarioED.setSenha(senha);
	} else {
		usuarioED.setSenha("");
	}
	if (email != null) {
		usuarioED.setEmail(email);
	} else {
		usuarioED.setEmail("");
	}
	if(oid > 0){
		usuarioED.setOid(oid);
	} else {
		usuarioED.setOid(0);
	}

	try {
		altera = usuarioBD.alteraDados(usuarioED);
	} catch (SQLException e) {
		e.printStackTrace();
	}

	this.fimTransacao(true);

	return altera;
}

JSP:

<%@ page contentType=“text/html”%>
<%@page import=“com.master.rn.UsuarioRN” %>

<%@page import=“com.master.ed.UsuarioED”%>

Alterar dados

<%
UsuarioED alterar = new UsuarioED();
String acao = request.getParameter(“acao”);
if(acao != null && acao.equals(“L”)){

UsuarioRN usuarioRN = new UsuarioRN();

 alterar = usuarioRN.alteraDados(request);

}
%>

Nome: <input type=“text” name=“nome” value="<%= request.getParameter(“nome”) %>">

Email: <input type=“text” name=“email” value="<%= request.getParameter(“email”) %>">

se alguem poder me ajudar ai.

vlw pessoal e desculpe mas eh q sou iniciante.

Não esquenta, todo mundo foi iniciante um dia!

Cara, a princípio vc terá que criar um campo hidden no seu formulário, ele é invisível e guarda informações também. Com isto vc consegue pegar o id da mesma forma que vc pega o nome e o e-mail, ok?

Beleza add o campo novo mas continua dando um erro, parece q ele ta dando um erro no meu metodo:

org.apache.jasper.JasperException: Exception in JSP: /altera_dados.jsp:18

15:
16: UsuarioRN usuarioRN = new UsuarioRN();
17:
18: alterar = usuarioRN.alteraDados(request);
19:
20:
21:

Stacktrace:
org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:467)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:389)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:315)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:265)
javax.servlet.http.HttpServlet.service(HttpServlet.java:803)

root cause

java.lang.NumberFormatException: For input string: “null”
java.lang.NumberFormatException.forInputString(Unknown Source)
java.lang.Integer.parseInt(Unknown Source)
java.lang.Integer.parseInt(Unknown Source)
com.master.rn.UsuarioRN.alteraDados(UsuarioRN.java:88)
org.apache.jsp.altera_005fdados_jsp._jspService(altera_005fdados_jsp.java:61)
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:98)
javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:328)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:315)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:265)
javax.servlet.http.HttpServlet.service(HttpServlet.java:803)

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

provavelmente esse erro dá na hora que vc tenta pegar o id e transforma em um int, confira se vc está passando corretamente o id para hidden no jsp.

cara ele vem do metodo assim : int oid = Integer.parseInt(request.getParameter(“oid”));

e to recebendo ele no JSP assim : <input type=“hidden” name=“oid” value="<%= request.getParameter(“oid”) %>">

Quando a tela estiver montada para a alteração, verifique o código fonte da página e verifique se o hidden está preenchido!

cara muito boa dica essa de ver o codigo fonte na tela, bom segundo a sua dica realmente o hidden ta passando como null… mas tipo o meu JSP esta recebendo os valores de um outro JSP, estou passando ele assim:

<%=retorno.getNome() %>

n sei se posso fazer assim mas com o nome & email passou legal mas com o iteraçao do oid n deu certo ele seta como null

acho q está faltando o sinal de igual “=” na expressão para retornar o oid:

de

&oid=<%retorno.getOid() %>">

para

&oid=<%=retorno.getOid() %>">

caraca meu como q fui da uma ratiada dessas… realmente tava faltando o sinal de “=”

vlew ai cara muito bom… se tiver mais duvidas certo q vou t encomodar heheh…

Que nada cara, aprendemos mais quando ajudamos!

isso é verdade embora ainda nao chegou a minha vez de poder ajudar pois ainda sei pouco ehhe…mas um dia chega hehe

Ai pessoal… to com um problema ai bem de iniciante… fiz algumas pesquisas ai mas ainda não encontrei a respostas bom vamos la:

tenho dois function, um com metodo OnListar() q gera uma lista em pdf e outro OnListarCSV() q gera um CSV.

qro fazer um select com dois option um pra pdf e outro CSV e um botao q chama uma das duas açoes caso selecionado uma delas…

mas não sei como fazer isso.

alguem pode me dar uma ajuda ai?