[Logo] Mentawai Forum - Mentawai Web Framework
  [Search] Search   [Recent Topics] Recent Topics   [Members]  Member Listing   [Groups] Back to home page 
[Register] Register / 
[Login] Login 
Messages posted by: khaleo  XML
Profile for khaleo -> Messages posted by khaleo [11]
Author Message
Admito q fiquei com um pouco de vergonha pela falta de atenção...rs
Mas acabei de corrigir a falta de "s" no campo e continuou dando o problema... porém vi no meu appmanager q quando a consequencia gera um erro, ela redireciona para "erro.jsp" e o correto seria redirecionar pra "index.jsp", pois assim funcionou de boa...
Oq eu fiz está correto??
Muito obrigado pela paciencia amigo !!!!
Entao, na teoria aparentemente era pra estar correto:

Code:
 public void prepareValidator(Validator val, String innerAction) {
          if (innerAction.equalsIgnoreCase("pergunta1")){
              val.add("reposta", new RequiredFieldRule(), CAMPO_REQUERIDO);
          }
      }
 
Retirei e aconteceu a mesma coisa... nao renderizou "Campo requerido"
Coloquei do jeito que vc descreveu, mas continua nao renderizando...

Code:
 <%@taglib prefix="mtw" uri="http://www.mentaframework.org/tags-mtw/" %>
 <%@page contentType="text/html" pageEncoding="UTF-8"%>
 <!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=UTF-8">
         <title>JSP Page</title>
     </head>
     <body>
         <h1>Perguntas</h1>
         <form id="frm" method="post" action="ActPadrao.pergunta1.mtw">
             <table width="100%" border="0">
                 <tr>
                     <td width="15%">Pergunta:</td>
                     <td width="27%"><label> <mtw:input type="text"
                                name="resposta" id="resposta" /> </label></td>
                     <td width="58%"><mtw:outFieldErrors>
                             <font color="red"> <mtw:error field="resposta" /> </font>
                         </mtw:outFieldErrors></td>
                 </tr>
             </table>
                 <input type="submit" value="OK" id="btnOK"/>
         </form>
     </body>
 </html>
 


Muito estranho...
Pessoal, estou fazendo um exemplo simples de validação de campos usando o menta. Segue as configurações do meu ApplicationManager e Action:

Code:
 public class ApplicationManager extends org.mentawai.core.ApplicationManager{
 
 
     @Override
     public void loadActions() {
 
         setDebugMode(true);
 
         addGlobalFilter(new ValidatorFilter());
         ActionConfig ac = new ActionConfig("ActPadrao", ActPadrao.class);
         ac.addConsequence(ERROR, "pergunta1", new Forward("erro.jsp"));
         ac.addConsequence(SUCCESS, "pergunta1", new Forward("certo.jsp"));
         addActionConfig(ac);
         
     }
 
 }
 
 


Minha Action:

Code:
 public class ActPadrao extends BaseAction implements Validatable{
     
    private static final String CAMPO_REQUERIDO = "Campo requerido";
    private String resposta;
 
    public String pergunta1(){
 
        resposta = input.getString("resposta");
        if (resposta.trim().equalsIgnoreCase("b")){
            return SUCCESS;
        }
        return ERROR;
 
    }
 
     public void prepareValidator(Validator val, String innerAction) {
         if (innerAction.equalsIgnoreCase("pergunta1")){
             val.add("reposta", new RequiredFieldRule(), CAMPO_REQUERIDO);
         }
     }
   
 
 }
 


E agora meu jsp:

Code:
 <%@taglib prefix="mtw" uri="http://www.mentaframework.org/tags-mtw/" %>
 <%@page contentType="text/html" pageEncoding="UTF-8"%>
 <!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=UTF-8">
         <title>JSP Page</title>
     </head>
     <body>
         <h1>Perguntas</h1>
         <form id="frm" method="post" action="ActPadrao.pergunta1.mtw">
             <table width="100%" border="0">
                 <tr>
                     <td width="15%">Pergunta:</td>
                     <td width="27%"><label> <mtw:input type="text"
                                name="resposta" id="resposta" /> </label></td>
                     <td width="58%"><mtw:hasError>
                             <font color="red"> <mtw:error field="resposta" /> </font>
                         </mtw:hasError></td>
                 </tr>
             </table>
                 <input type="submit" value="OK" id="btnOK"/>
         </form>
     </body>
 </html>
 


Esse código está redirecionando pra pagina correta de acordo com a resposta solicitada, o problema é q se o campo estiver vazio, ele nao está validando como campo requerido na pagina jsp, ele já redireciona direto como resposta errada...
A saida de debug está assim:

Code:
 
 - - - - - - - - - - - - - - - -  Mentawai DEBUG - - - - - - - - - - - - - - - - 
 
 
 ActionName = ActPadrao
 InnerAction = pergunta1
 ActionClass = action.ActPadrao
 Browser Locale = pt_BR
 Action Locale = en_US
 Default Locale = en_US
 
 
 Input:
 
 	resposta = 
 
 Output:
 
 	empty
 
 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 
 
 
 Filter = org.mentawai.filter.ValidatorFilter@7787a5
 
 
 Input:
 
 	resposta = 
 
 Output:
 
 	fieldErrors = {reposta=Campo requerido}
 
 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 
 
 
 Result = error
 
 Consequence = Forward to /erro.jsp
 
 Total Time = 17ms
 
 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 
 
 
 Mentawai Web Framework - Version:1.15  Build:20091016
 


Pq ele nao renderiza na tela em frente ao campo de texto como "Campo requerido" ??
Infelizmente meus conhecimentos são limitados em relação a construção de frameworks, taglibs... essas coisas... talvez se tivesse algum exemplo de como se faz esse tipo de coisa, poderia dar o "passo inicial"... deixei a idéia pq sei q vcs tem conhecimento e capacidade pra isso, talvez oq falte seria tempo disponivel e o principal, vontade...hehe... sei tb q a maioria trabalha com sistemas comerciais, de vendas, estoque...etc... e talvez não seria interessante esse tipo de tecnologia...
Mas fica a idéia... oq eu puder fazer pra ajudar, podem contar comigo!!
Desde já, agradeço a oportunidade.
Valew!
Sei q geoprocessamento é uma coisa mais restrita, porém uma área q vem crescendo bastante... Será q daria pra fazer uma integração do menta com a api do googlemaps ou outra api qualquer pra gis? Parecida com as tags do icefaces pra googlemaps...
Bom, é só uma idéia... Oq vcs acham?
Obrigado pela resposta apfmiranda !
Mas ainda tenho duvidas...

apfmiranda wrote:
digamos que seu jsp estisse assim:

Code:
<mtw:checkboxes list="grupos" name="gruposTrabalho"/>


Vc está carregando uma lista de checkbox...

você iria retornar um array com os códigos dos grupos de trabalho marcados.
Code:
int [] gruposTrabalho= new int[1000];


Vc está pegando somente os checkbox marcados...

Code:
output.setValue("gruposTrabalho", gruposTrabalho) ;


Assim os checkboxes ficarão marcados de acordo com o que está cadastrado. 


E colocar esses checkbox na saida da action...

Quando eu clico pra editar o registro, a pagina carrega com os campos já preenchidos e abaixo carregaria toda a lista de grupos de trabalho, PORÉM, com os grupos pertecentes ao registro q está sendo editado já com o checkbox marcado (checked)...
Tb não sei se essa seria a melhor opção pra implementar isso, se alguém tiver outra idéia...
Desde já agradeço
Vou tentar resumir bem a minha duvida.
Quando o usuario cadastra um programa no sistema, ele deve marcar pelo menos uma entre várias checkboxes abaixo q representam os grupos de trabalho, ou seja, qual ou quais grupos de trabalho esse programa pertence.
Eu uso a tag <mtw:checkboxes...> q pega a lista de grupos da action.
Até ae tudo bem, consigo cadastrar na boa, porém mnha duvida seria na hora de editar o registro: quando eu clico no registro pra editar eu carrego os texts com as informações desse registro, porém como eu vou fazer pra mostrar os grupos desse programa com o checkbox marcado?? Na verdade iria aparecer toda a lista de grupos porém só o(s) grupo(s) desse registro apareceriam marcados... Bom pessoal, não sei se consegui expressar direito minha duvida...
Lembrando q sou iniciante, porem com muita vontade de aprender ! hehe
Valeu !
Já resolvi... tava um tempão qbrando a kbeça e logo depois q postei eu descobri...hehe... na verdade foi um erro de configuração aki..
Pow, eu tow bastante satisfeito com o mentawai, depois q o descobri é q perdi o medo de java...hehe
Valeu
Eu segui os passos da video aula, porém quando executo o projeto, ele carrega a pagina tudo certinho com os layouts, mas não aparece o form inicial com os text e os contacts e sim uma label "Menta Project Blank"...
Será q esqueci de algo?
 
Profile for khaleo -> Messages posted by khaleo [11]
Go to:   
Powered by JForum 2.1.6 © JForum Team