Kawai Wiki

Rev

Rev 19 | Rev 22 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
12 soliveira 1
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
2
<%@taglib prefix="mtw" uri="http://www.mentaframework.org/tags-mtw/"%>
3
 
4
<html>
5
<head>
6
 
7
<title>Mentawai Web Framework</title>
8
 
9
<style type="text/css" media="all">
10
@import url("./style/maven-base.css");
11
 
12
@import url("./style/maven-theme.css");
13
</style>
14
 
15
<meta http-equiv="imagetoolbar" content="no" />
16
<meta http-equiv="imagetoolbar" content="false" />
17
 
18
<link rel="shortcut icon" type="image/x-icon" href="favicon.ico" />
19
<link rel="icon" type="image/gif" href="/favicon.gif" />
20
<link rel="stylesheet" href="./style/print.css" type="text/css" media="print" />
21
 
22
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />
23
<meta name="author" content="Sergio Oliveira Junior" />
24
<meta name="email" content="sergio.oliveira.jr@gmail.com" />
25
 
26
<link href="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8/themes/base/jquery-ui.css" rel="stylesheet" type="text/css" />
27
<script type="text/javascript" src="jquery/jquery-1.6.4.min.js"></script>
28
<script src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8/jquery-ui.min.js"></script>
29
 
30
<script language="JavaScript">
31
 
32
        $(document).ready(function() {
33
 
34
        });
35
 
36
        function prepareLeftColumnDialog(myDialog, theTitle) {
37
 
38
            options = {
39
                autoOpen: false,
40
                width: 800,
41
                modal: true,
42
                title: theTitle,
43
                buttons: [
44
                          {
45
                                text: "Save",
46
                                click: function() { $('#editLeftColumnForm').submit(); }
47
                          },
48
                          {
49
                                text: "Cancel",
50
                                click: function() { $(this).dialog("close"); }
51
                          }
52
                      ]
53
           };
54
 
55
          myDialog.dialog(options);
56
 
57
          return myDialog;
58
        }
59
 
60
        function showEditLeftColumnDialog(pageName) {
61
 
62
            $.getJSON('<mtw:contextPath />/Page.getLeftColumn.mtw', function(data) {
18 soliveira 63
 
19 soliveira 64
                $('#editLeftColumnTextArea').val(data.leftColumn.html);
12 soliveira 65
 
66
                myDialog = $('#editLeftColumnDialog');
67
                myDialog = prepareLeftColumnDialog(myDialog, "Edit Left Column");
68
                myDialog.dialog('open');
69
            });
70
 
71
            return false;
72
        }
73
 
74
    </script>
75
 
76
</head>
77
 
78
<body class="composite">
79
 
80
<!-- For Testing -->
81
<div id="dialog" title="Dialog Title" style="display: none;">I'm in a dialog</div>
82
 
83
<div id="editLeftColumnDialog" style="display: none;">
84
<form id="editLeftColumnForm" action="<mtw:contextPath />/Page.editLeftColumn.mtw" method="post">
85
<table>
86
    <tr>
87
        <td>&nbsp;</td>
88
    </tr>
89
    <mtw:outError field="answer">
90
        <tr>
91
            <td colspan="2"><span class="Negative" style="font-weight: bold;"><mtw:out /></span></td>
92
        </tr>
93
    </mtw:outError>
94
    <tr>
95
        <td colspan="2"><mtw:textarea id="editLeftColumnTextArea" name="html" style="width: 100%; height: 465px;" /></td>
96
    </tr>
97
</table>
98
</form>
99
</div>
100
 
101
<div>
102
<table border="0">
103
    <tr>
104
        <td><a href="/"><img src="images/logos/logo.png" border="0"></img></a></td>
105
        <td align="right" valign="bottom"><img src="images/brazil.gif" border="0" width="20" height="13" /> <img src="images/usa.gif" width="20" height="13" border="0" /> <mtw:isLogged
106
            negate="true">
107
            <a href="jsp/login.jsp">Login</a>&nbsp;&nbsp;&nbsp;
108
                </mtw:isLogged> <mtw:isLogged>
109
            <a href="<mtw:contextPath/>/Logout.mtw">Logout</a> (<mtw:out value="sessionUser.username" />)&nbsp;&nbsp;&nbsp;
110
                </mtw:isLogged></td>
111
    </tr>
112
</table>
113
</div>
114
 
115
<hr />
116
 
117
<div id="leftColumn"><mtw:isLogged>
118
    <mtw:hasAuthorization groups="admin, editor">
119
        <div style="text-align: right; padding-right: 8px; padding-top: 6px;"><a href="#" onclick="return showEditLeftColumnDialog('LeftColumn');">Editar</a></div>
120
    </mtw:hasAuthorization>
121
</mtw:isLogged>
20 soliveira 122
<div id="navcolumn">
123
    <div>
124
    <mtw:out value="leftColumn.html" />
125
    </div>
126
<br />
12 soliveira 127
</div>
128
 
129
</div>
130
 
131
<div id="bodyColumn">
132
 
133
<h1>Notícias</h1>
134
<ul>
135
    <li>Teste 1</li>
136
    <li>Teste 2</li>
137
    <li>Teste 3</li>
138
    <li>Teste 4</li>
139
</ul>
140
<br />
141
 
142
<h2>Notícias</h2>
143
<ul>
144
    <li>Teste 1</li>
145
    <li>Teste 2</li>
146
    <li>Teste 3</li>
147
    <li>Teste 4</li>
148
</ul>
149
<br />
150
 
151
<h3>Notícias</h3>
152
<ul>
153
    <li>Teste 1</li>
154
    <li>Teste 2</li>
155
    <li>Teste 3</li>
156
    <li>Teste 4</li>
157
</ul>
158
<br />
159
 
160
<h4>Notícias</h4>
161
<ul>
162
    <li>Teste 1</li>
163
    <li>Teste 2</li>
164
    <li>Teste 3</li>
165
    <li>Teste 4</li>
166
</ul>
167
<br />
168
 
169
<h5>Notícias</h5>
170
<ul>
171
    <li>Teste 1</li>
172
    <li>Teste 2</li>
173
    <li>Teste 3</li>
174
    <li>Teste 4</li>
175
</ul>
176
<br />
177
 
178
<h4>Header 1</h4>
179
<center>
180
<table border="0">
181
    <tr>
182
        <td colspan="3">&nbsp;</td>
183
    </tr>
184
    <tr>
185
        <td width="6%">&nbsp;</td>
186
        <td width="72%"><font color="black"> <i>"Em primeiro lugar gostaria de parabenizá-lo pelo Mentawai, pra mim é a melhor solução já pensada quando se fala em frameworks MVC.
187
        Coordeno a equipe de TI da Escola do Futuro da USP (Universidade de São Paulo), onde realizamos projetos de CVAP (Comunidades Virtuais de Aprendizagem e Prática), educação à distância etc.
188
        Adorei o Mentawai desde a primeira vez que li sobre ele, gostei tanto da idéia que quiz iniciar já com um projeto de médio porte, o qual tínhamos pouquíssimo prazo para entregá-lo. O resultado
189
        não podia ter sido melhor, toda a equipe se familiarizou com o framework em menos de 2 dias! O projeto foi inteiramente concebido com Mentawai, desde então é o que usamos para desenvolver
190
        todos os projetos! São fascinantes a velocidade, escalabilidade e a forma inteligente em que se pode construir qualquer aplicação web com o Mentawai."</i></font></td>
191
        <td width="6%">&nbsp;</td>
192
    </tr>
193
    <tr>
194
        <td width="6%">&nbsp;</td>
195
        <td width="72%" align="right"><b><font color="blue">por Rodrigo A. Rodriguez</font></b></td>
196
        <td width="6%">&nbsp;</td>
197
    </tr>
198
    <tr>
199
        <td colspan="3">&nbsp;</td>
200
    </tr>
201
 
202
    <tr>
203
        <td width="6%">&nbsp;</td>
204
        <td width="72%"><font color="black"> <i>"Estou escrevendo de Teresina-PI para parabenizá-lo por esse excelente framework. Sou diretor de tecnologia do Grupo Claudino (o maior
205
        grupo empresarial do Piauí formado por 14 empresas e mais de 12 mil funcionários) e recentemente resolvemos migrar nossos sistemas para J2EE. Depois de várias discussões, resolvemos apostar no
206
        Mentawai principalmente pela facilidade, produtividade, ausência de XML e ser genuinamente brasileiro. Acabamos de finalizar o nosso primeiro aplicativo com duração de apenas 2 meses. A
207
        previsão da finalização de toda a migração do nosso ERP é final de 2009. Até lá mandaremos muitas dúvidas, sugestões e críticas para o forum."</i></font></td>
208
        <td width="6%">&nbsp;</td>
209
    </tr>
210
    <tr>
211
        <td width="6%">&nbsp;</td>
212
        <td width="72%" align="right"><b><font color="blue">por Thiago Carvalho de Sousa</font></b></td>
213
        <td width="6%">&nbsp;</td>
214
    </tr>
215
    <tr>
216
        <td colspan="3">&nbsp;</td>
217
    </tr>
218
    <tr>
219
        <td width="6%">&nbsp;</td>
220
        <td width="72%"><font color="black"> <i>"I work for Sun Microsystems Ltd and I'm involved in making a decision about Web Application Frameworks. The OpenSolaris website is
221
        currently implemented using WebWorks2 and, to a limited extent, Spring. In my opinion this is too heavyweight for our needs and I'm hoping to introduce a light-weight framework for any new
222
        website development. I read about Mentawai with great interest. I share your belief that scattering the execution path for an application betweem Java and XML is a recipe for disaster. So far,
223
        Mentawai looks like a great candidate for us to use."</i></font></td>
224
        <td width="6%">&nbsp;</td>
225
    </tr>
226
    <tr>
227
        <td width="6%">&nbsp;</td>
228
        <td width="72%" align="right"><b><font color="blue">por Gary Pennington</font></b></td>
229
        <td width="6%">&nbsp;</td>
230
    </tr>
231
 
232
    <tr>
233
        <td colspan="3">&nbsp;</td>
234
    </tr>
235
    <tr>
236
        <td width="6%">&nbsp;</td>
237
        <td width="72%"><font color="black"> <i>"Já usei Struts, passei pelo Webwork e tenho ele ainda em muitos projetos aqui, mas aos poucos estou migrando tudo para o Mentawai, e
238
        estou muito satisfeito pela simplicidade dele!"</i></font></td>
239
        <td width="6%">&nbsp;</td>
240
    </tr>
241
    <tr>
242
        <td width="6%">&nbsp;</td>
243
        <td width="72%" align="right"><b><font color="blue">por Alexandre Ortiz da Rocha</font></b></td>
244
        <td width="6%">&nbsp;</td>
245
    </tr>
246
 
247
    <tr>
248
        <td colspan="3">&nbsp;</td>
249
    </tr>
250
    <tr>
251
        <td colspan="3" align="center"><a href="http://forum.mentaframework.org/posts/list/157.page" target="_blank">Clique aqui para ler mais depoimentos!</a>
252
        &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="mailto:sergio.oliveira.jr at gmail.com">Compartilhe conosco o seu caso de sucesso!</a></td>
253
    </tr>
254
 
255
</table>
256
</center>
257
<h3>Notícias</h3>
258
<ul>
259
    <li>Teste 1</li>
260
    <li>Teste 2</li>
261
    <li>Teste 3</li>
262
    <li>Teste 4</li>
263
</ul>
264
<br />
265
<h3>Visão Geral</h3>
266
<p>O Mentawai foi o primeiro <b>framework web MVC em Java</b> a adotar, implementar, documentar e <b>incentivar</b> todo e qualquer tipo de configuração (actions, filtros, validação, listas,
267
connection pooling, ioc, di, etc.) <b>única e exclusivamente</b> através de <b><u><font color="blue">configuração programática</font></u></b> (100% Java), <b>abolindo por completo</b> o uso de <b>XML
268
e Annotations</b> para as configurações. O framework nasceu em 08/Jun/2005 e logo depois em 18/Jul/2005 publicamos um <a href="http://www.javaworld.com/javaworld/jw-07-2005/jw-0718-mentawai.html"
269
    target="_blank">artigo no site JavaWorld</a> enfatizando o uso de configuração programática para o controlador MVC (actions/resultados/conseqüências) assim como para validação. Nascia aí o <i><font
270
    color="blue">ApplicationManager</font></i>: configuração em código Java <b>independente</b> do restante da sua aplicação e <b>centralizada numa única classe</b>. Apesar de termos recebidos muitas
271
críticas pela aversão ao XML, as vantagens da configuração programática foram ficando cada vez mais claras para a equipe do Mentawai:</p>
272
<ul>
273
    <li>Mais <b>prazerosa e natural</b>, afinal estamos falando de código Java e não de uma especificação em XML.</li>
274
    <br />
275
    <li><b>Menos propensa a erros</b> e typos, já que uma configuração em Java pode ser compilada antes de ser carregada pela aplicação web.</li>
276
    <br />
277
    <li>Ótima <b>integração com IDEs</b>, permitindo usar recursos como <b>auto-complete, auto-compile</b> (build automático), <b>refactoring</b>, etc.</li>
278
    <br />
279
    <li><b>Flexibilidade total</b> que apenas uma linguagem de programação pode oferecer, o que te permite criar seus próprios métodos de configuração, loops, ifs, comentários, ou seja, você
280
    possui a <b><u>liberdade para fazer a configuração se adaptar a você</u></b> e não você se adaptar ao XML.</li>
281
    <br />
282
    <li>Utilizar <b>linguagens de script</b> como <b>JRuby, Groovy, BeanShell</b>, etc. para configurar sua aplicação, possibilitando uma <b>configuração dinâmica</b> que pode ser <b>recarregada
283
    automaticamente</b> pelo container a cada modificação.</li>
284
    <br />
285
    <li>O bom e velho <b>JavaDoc</b>, documentando todos os métodos que podem ser utilizados para configuração.</li>
286
    <br />
287
</ul>
288
<p>Isso <b><u>não significa</u></b> que o Mentawai não possui <i>Convention over Configuration (CoC)</i>. O <a href="http://forum.mentaframework.org/posts/list/765.page" target="_blank">Mentawai
289
possui CoC</a> e padrões para tudo, diminuindo bastante a necessidade de configuração. Entretanto, seja por uma questão de <b>preferência por explicitamente controlar as configurações</b> ou seja por uma
290
questão de <b>necessidade</b>, o que inevitavelmente acontece em qualquer projeto, quando houver configurações essas serão feitas através de <b>configuração programática</b> e não através de XML,
291
Annotations ou arquivos properties.</p>
292
<p>Outro pilar em que o Mentawai se apoiou desde o início foi o <b><u>comprometimento em abstrair e simplificar as principais tarefas recorrentes de todo projeto web</u></b>. Ao invés de
293
direcionar o usuário para <i>qualquer outro framework que já faz isso</i>, o Mentawai oferece soluções ou abstrações para as funcionalidades básicas de toda aplicação web: pool de conexões com o banco
294
de dados, autenticação, autorização, IoC, DI, Envio de Email, Upload de Arquivo, Paginação, Tags, etc. O Mentawai é <b><u>totalmente contra</u></b> a política do "<i>Já existe um framework pra
295
isso! Procure na Internet e se vire!</i>".</p>
296
<p>Hoje o Mentawai é utilizado por <a href="http://forum.mentaframework.org/posts/list/157.page" target="_blank">diversas empresas e pessoas no Brasil e no exterior</a>, possui uma <a
297
    href="http://forum.mentaframework.org" target="_blank">comunidade ativa</a> que já trocou perto de 10 mil mensagens no seu fórum de discussão, e continua evoluindo, sempre fiel aos princípios da
298
produtividade, simplicidade, abstração e configuração programática. Fique a vontade para conhecer o framework e veja como é fácil fazer a sua aplicação web utilizando o Mentawai.</p>
299
<p>Equipe Mentawai<br />
300
<i>21 de Abril de 2007</i></p>
301
 
302
<h2>JForum</h2>
303
<p><iframe frameborder="0" id="jforum-iframe" scrolling="no" height="2600" src="http://docs.mentaframework.org/posts/list/70.page"></iframe></p>
304
 
305
 
306
 
307
</div>
308
 
309
<div class="clear">
310
<hr />
311
</div>
312
 
313
<div id="footer">
314
<div class="xright">Copyright © 2011</div>
315
<div class="clear">
316
<hr />
317
</div>
318
</div>
319
 
320
</body>
321
</html>