Select Dinâmico JSP  XML
Índice dos Fóruns » Desenvolvimento Web
Autor Mensagem
portugassis
Entusiasta Java
[Avatar]

Membro desde: 03/10/2010 11:05:21
Mensagens: 22
Offline

Olá Galera,

Mais uma vez eu precisando de ajuda aqui no Fórum.

Seguinte, quero fazer um select que verifique o que foi marcado no select anterior para exibir os dados corretos.

Se trata de uma página para cadastro de turmas de um curso, tenho cadastrado as disciplinas, professores, horários e também as disciplinas e horários que cada professor disponibilizou.
No primeiro select tem a disciplina, após selecionar a disciplina o próximo select deve exibir apenas os professores que disponibilizaram essa disciplina no sistema. (as tabelas estão relacionadas no banco de dados, e usando select where no bd ele exibe exatamente o que eu quero), então deve ser escolhido o professor, e em seguida o terceiro select vai mostrar apenas os horários que esse professor tem disponíveis.

A minha dificuldade é a seguinte: Como passar por parâmetro para o DAO o que foi marcado no select anterior, para fazer a consulta correta?

Já li alguns tópicos com algumas soluções em javascript mas não consegui implementar. vou colocar meu código abaixo e puderem me ajudem.

O estado atual do form no meu jsp, que lista as disciplinas, professores e horários, mas sem fazer esse tratamento é o seguinte:


No SQL eu uso a seguinte query para exibir os professores que lecionam uma determinada disciplina (nesse caso a disciplina com o id 1)


Esse sql mostra certinho o que eu preciso, para mostrar os horários que cada professor disponibilizou seria a mesma coisa mudando as tabelas.

Ou seja, eu sei o que preciso fazer. Passar por parâmetro o id da disciplina que for selecionada no primeiro select para o DAO que vai executar essa query, o segundo select simplesmente vai pegar os dados e listar.

Só não sei como passar o parâmetro para o DAO (ou alguma lógica que mande ele para o DAO) retornando os valores certos na outra select

portugassis
Entusiasta Java
[Avatar]

Membro desde: 03/10/2010 11:05:21
Mensagens: 22
Offline

Depois de muito pesquisar, consegui resolver meu problema, de forma até que bem simples.

Achei vários tutoriais e dicas ensinando a fazer esse tipo de tarefa, mas muitos deles eram bem complexos e tinham várias exigências para que pudessem ser implementados, e como não tenho muito conhecimento de javascript não tinha como programar eu mesmo os métodos para fazer o tratamento.

Acabei encontrando uma forma bem simples de fazer, usando a biblioteca de javascript DWR (http://directwebremoting.org/dwr/index.html).

Com uma rápida procurada no Google pode-se encontrar alguns tutoriais básicos. Li alguns deles vi algumas dicas no site oficial e consegui fazer uma implementação bem simples do meu Select Dinâmico.

selects


javascript


Classe que vai fazer o tratamento


Método que busca a lista de professores no bd, de acordo com a disciplina selecionada


No mais, apenas adicionei o .jar do DWR no meu projeto e configurei adequadamente os arquivos web.xml e dwr.xml

adicionado no web.xml


arquivo dwr.xml


Se alguem esbarrar nesse tópido e estiver precisando de algo do tipo, acho que olhando os códigos acima da para entender bem como implementar.

This message was edited 1 time. Last update was at 17/05/2011 19:50:22

mouzer
JavaGuru

Membro desde: 08/03/2010 10:08:17
Mensagens: 218
Offline

Opa tudo bem?
estou com esse mesmo problema e estava tentando uma solucao de acordo com seu tópico mas nao consegui, nao executa nenhuma tarefa quando eu clico na opcao, segue minhas classes:

o javascript:



o JSP:



a classe:



o DAO:



o web.xml



e o dwr.xml que criei na mesma pasta do web.xml



adicionei o dwr.jar no projeto.

agradeço desde já

SDS
[Email] [MSN]
 
Índice dos Fóruns » Desenvolvimento Web
Ir para:   
Powered by JForum 2.1.8 © JForum Team