[Resolvido]Tem como retornar + de um objeto para o controller?
2 respostas
G
gabriel.ggt
Olá estou com dificuldade no vraptor com a seguinte situação:
Eu tenho um formulário que salva no banco uma SubAtividade.
mas nessa sub atividade eu tenho que dizer qual é a atividade a qual ela esta relacionada (ManyToOne )
e tambem qual documento esta relacionado(ManyToOne )
agora como fazer para que eu possa retornar essa atividade e documentação ?
@Id@GeneratedValueprivateLongid;@ManyToOneprivateAtividadesativ;privateStringdescricao;privateBooleanindustria;privateBooleantaxa;privateStringvalor;privateBooleanresp;@ManyToOneprivateDocumentacaodoc=newDocumentacao();privateStringstatus;//getts n setts
SubAtividade Controller
@RestritopublicvoidnovaSubAtividade(){List<Documentacao>list=newArrayList<Documentacao>();DocumentacaoDaodd=newDocumentacaoDao();list=dd.listaTudo();this.result.include("documentacao",list);List<Atividades>lista=newArrayList<Atividades>();AtividadesDaoad=newAtividadesDao();lista=ad.listaTudo();this.result.include("atividades",lista);}@Restrito@Post("/subAtividade")publicvoidadicionaAtividade(Subatividadesubatividade,Atividadesatividade,Documentacaodoc){if(subatividade.getDescricao()==null){validator.add(newValidationMessage("Descrição não pode ficar em branco","subatividade.descricao"));}if(dao.existeSubAtividade(subatividade)){validator.add(newValidationMessage("Essa Atividade ja foi cadastrada.","subatividade.descricao"));}validator.onErrorForwardTo(SubatividadeController.class).novaSubAtividade();dao.salva(subatividade);result.redirectTo(SubatividadeController.class).lista();}
E o JSP
<formid="subAtividadeForm"class="container well"action="<c:url value="/subAtividade"/>"method="POST">
<h3>SubAtividade</h3><fieldsetclass="container"><!-- Primeira Linha --><divclass="row"onload="desabilitaCampo(document.getElementById('taxa'));"><divclass="span9"><labelfor="atividade">Atividade</label><selectid="atividade"name="subatividade.ativ"><c:forEachitems="${atividades}"var="atividades"><optionvalue="${atividades.id}">${atividades.descricao}</option></c:forEach></select></div></div><!-- Segunda Linha --><divclass="row"><divclass="span9"><labelfor="descricao">Descricão</label><inputtype="text"class="span6"id="descricao"name="subatividade.descricao"placeholder="Descrição"MAXLENGTH=50value="${subatividade.descricao}"></div></div><!-- Terceira Linha --><divclass="row"><divclass="span9"><divclass="row"><divclass="span2"><labelclass="checkbox"><inputtype="checkbox"class="span1"id="industria"name="subatividade.industria"value="${subatividade.industria}">Indústria
</label></div><divclass="span2"><labelclass="checkbox"><inputtype="checkbox"class="span1"id="resp"name="subatividade.resp"value="${subatividade.resp}">Resp.Técnico
</label></div></div></div></div><!-- Quarta Linha --><divclass="row"><divclass="span9"><divclass="row"><divclass="span2"><labelclass="checkbox"><inputtype="checkbox"class="span1"id="taxa"name="subatividade.taxa"value="${subatividade.taxa}"onClick="desabilitaCampo(document.getElementById('taxa'));">Taxa
</label></div><divclass="span4"id="valordiv"style="display: none;"><labelfor="valor">Valor: <inputtype="text"class="span2"id="valor"name="subatividade.valor"placeholder="Valor"MAXLENGTH=50value="${subatividade.valor}"></label></div></div></div></div><!-- Quarta Linha --><divclass="row"><divclass="span9"><divclass="row"><divclass="span2"><labelclass="checkbox"><inputtype="checkbox"class="span1"id="status"name="subatividade.status"value="${subatividade.status}">Ativo
</label></div></div></div></div><!-- Quinta Linha --><divclass="row"><divclass="span9"><divclass="row"><divclass="span3"><labelfor="doc">Documentos</label><selectid="doc"name="subatividade.docs"><c:forEachitems="${documentacao}"var="documentacao"><optionvalue="${documentacao.id}">${documentacao.descricao}</option></c:forEach></select></div></div></div></div><!-- Button Bar --><divclass="row-fluid"><divclass="span9"align="center"><buttontype="submit"class="btn btn-success">Salvar</button><buttontype="reset"class="btn btn-primary">Novo</button><atype="button"class="btn btn-info"href="/webga/atividades/lista">Listar</a></div></div><!-- Erro Bar --><c:forEachvar="error"items="${errors}"><pstyle="color: red; font-weight: bold;">${error.message}</p></c:forEach></fieldset></form><scriptsrc="<c:url value="/javascripts/jquery.js"/>"></script><scriptsrc="<c:url value="/javascripts/scripts.js"/>"></script>