[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: abstract  XML
Profile for abstract -> Messages posted by abstract [7]
Author Message
Estou fazendo os exemplos acompanhando diretamente do site, acredito que setei os filtros corretamente como pode ser visto no web.xml que enviei, to quebrando cabeça mas ainda não cheguei a solução, um abraço.


saoj wrote:
Testa os exemplos de velocity...

Vc setou esse filtro direito ???

 
Desculpe sergio no meu pc está como index_ok.vm mas na hora de postar vacilei, vou corrigir o post, veja que quando eu postei o ApplicationManager está de forma correta. Um abraço.

saoj wrote:
index.vm_ok não termina com .vm.
 
Boa tarde a todos, gostaria de saber o que estou fazendo de errado, pois na hora de recuperar o valor através de $username não está sendo exibido o valor que digito e sim a string "$username", fico grato pela ajuda.

web.xml
Code:
 <?xml version="1.0" encoding="UTF-8"?>
 <!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd">
 <web-app>
   <display-name>Portal</display-name>
   <description>Testes para migração para o framework mentawai</description>
   <filter>
     <filter-name>VelocityFilter</filter-name>
     <filter-class>org.mentawai.velocity.VelocityServletFilter</filter-class>
   </filter>
   <filter-mapping>
     <filter-name>VelocityFilter</filter-name>
     <url-pattern>*.vm</url-pattern>
   </filter-mapping>
   <servlet>
     <servlet-name>Controller</servlet-name>
     <servlet-class>org.mentawai.core.Controller</servlet-class>
     <!-- package where mentawai looks for actions -->
     <!-- to define more than one, use commas (,) to separate them -->
     <!-- init-param>
 			<param-name>actionManager</param-name>
 			<param-value>examples.helloworld.ActionManager</param-value>
 		</init-param -->
     <load-on-startup>1</load-on-startup>
   </servlet>
   <!-- You must choose an extension to indicate a mentawai action -->
   <servlet-mapping>
     <servlet-name>Controller</servlet-name>
     <url-pattern>*.at</url-pattern>
   </servlet-mapping>
   
   
   
   <!-- Map the filter to a file extension -->
   <welcome-file-list>
     <welcome-file>index.html</welcome-file>
   </welcome-file-list>
 </web-app>
 


index.html

Code:
 
 <html>
 <head>
 <meta http-equiv='Refresh' content='0;URL=index.at'>
 </head>
 </html>
 
 


index.vm

Code:
 
 <html>
 <body>
 <h1>Hello Metawai!</h1>
 <form action="index.at" method="post">
 Please type your username: <input name="username" size="25" />
 <input type="submit" value="Enviar">
 </form>
 </body>
 </html>
 


index_ok.vm

Code:
 
 <html>
 <body>
 <h3>Hello $username from Mentawai!</h3>
 </body>
 </html>
 
 


ApplicationManager.java

Code:
 
 import org.mentawai.core.*;
 import br.com.agharta.*;
 
 public class ApplicationManager extends org.mentawai.core.ApplicationManager {
 	
 	public void loadActions() {
 		ActionConfig ac = new ActionConfig("/index", Hello.class);
 		ac.addConsequence(Hello.SUCCESS, new Forward("/web/index_ok.vm"));
 		ac.addConsequence(Hello.ERROR, new Forward("/web/index.vm"));
 		addActionConfig(ac);
 	}
 }
 
 


Hello.java

Aqui eu tentei até por os get e set

Code:
 
 package br.com.agharta;
 
 import java.util.*;
 
 import org.mentawai.core.*;
 
 public class Hello extends BaseAction {
     
     private String username;
     
         public String getUsername() {
             return username;
         }
 
         public void setUsername(String username) {
             this.username = username;
         }
 	
 	public String execute() throws ActionException {
 		
             username = input.getStringValue("username");
 		
             if (username == null || username.trim().equals("")) {
                     return ERROR;
             }
             output.setValue("username", username.toUpperCase());
             return SUCCESS;
 	}
 
    
 	
 }
 

Pessoal fiquei com uma dúvida que com certeza vocês podem me exclarecer, o ApplicationManager, para cada action que você cria, tu tem que instanciar um objeto, como em:

Code:
 ActionConfig ac2 = new ActionConfig("/Action2", Action2.class);
                 ac2.addConsequence(Action2.SUCCESS, new Forward("/show.jsp"));
                 addActionConfig(ac2);
                 
                 ActionConfig ac1 = new ActionConfig("/Action1", Action1.class);
                 ac1.addConsequence(Action1.SUCCESS, new Chain(ac2));
                 addActionConfig(ac1);
 


Então pergunto: Isso não seria problemático, no sentido de que eu poderia ter um sistema com 800 actions, e se em tese cada objeto instanciado eu estou alocando espaço em memória, eu não poderia antecipadamente estar alocando um espaço sem utilizá-lo? Falei besteira? No xml não é assim? É? Se é, é feito por reflexão?

Foi realmente uma duvida que vocês podem me ajudar, um abraço.
Caras parabéns pela documentação, está ótima, além dos exemplos, putz os *.war quebram um galho pra quem é adepto do fast food, e quer ver os exemplos e por pra rodar e depois estudar os fontes, outra coisa, não acabem com o velocity! eheheheh, eu estava lendo uma discussão, no guj:
http://www.guj.com.br/posts/list/27280.java
" Por mim eu ignorava o Velocity, pois com EL dá pra fazer praticamente a mesma coisa. Só que tem gente que faz questão de Velocity e não quero perder essa galera, me entende? " Então permaneça na idéia Sérgio eheheheh, show de bola essa flexibilidade, em que se pode usar, o que quiser, parabéns a equipe.
Então vamos supor, que eu tenha um form, e os dados todos não foram preenchidos, e eu quero que não exiba pro usuário um error, e sim retorne a tela do form, eu poderia usar a action error, estou perguntando apenas pra saber se é ou não conveniente no menta, e porque.

saoj wrote:
INPUT não tem equivalente no mentawai.

LOGIN tem, e é retornado pelo AuthenticationFilter.

Repare a diferença de RESULTADO e Consequencia.

Pra cada resultado há uma consequencia, e isso vc seta no ApplicationManager.java.

Vc pode criar quantos resultados quiser, pois um resultado é uma String.

Vc tb pode criar quantas consequencias quiser, mas isso não é muito comum. 99% das vezes vc vai usar forward ou redirect mesmo, que já vem com o mentawai.

Qualquer dúvida é só falar !!!
 
Olá menta team, primeiro quero parabenizar aos desenvolvedores, show de bola o esse framework, sou utilizador do webwork, e gostaria de saber o que seria o equivalente a action INPUT e LOGIN dentro do mentawai, olhando o javadoc de vocês pude constatar 4 tipos de return:

The result is usually SUCCESS or ERROR. For each result there is a consequence (org.mentawai.core.Consequence). The consequences for a web application are usually FORWARD or REDIRECT.

Então gostaria de saber o que seria o equivalente dentro do menta, grato!
 
Profile for abstract -> Messages posted by abstract [7]
Go to:   
Powered by JForum 2.1.6 © JForum Team