Mostrando postagens com marcador Mentawai. Mostrar todas as postagens
Mostrando postagens com marcador Mentawai. Mostrar todas as postagens

sexta-feira, 5 de outubro de 2007

Adobe Flex enviando parametros para a aplicação web em Java

eis um grande problema quando estamos utilizando o Adobe Flex, como enviar de modo que funcione parametros para nossa aplicação java, segue uma dica de como fazer para enviar os parametro de forma que funcione para aplicações que utilizam o Struts 2 ou o Mentawai na aplicação que roda no servidor (pelo menos nos testes que eu fiz funcionou...)

<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute">
  
  <mx:Script>
    <![CDATA[
      
      import mx.controls.Alert;
      import mx.rpc.events.ResultEvent;
      import mx.rpc.events.FaultEvent;
      import mx.utils.ObjectUtil;
      import mx.rpc.http.HTTPService;
      
       public function getLoginParameters():Object {
              return {
                "user.login": loginField.text, 
                "user.password" : passwordField.text 
              };
            }
      
      public function enviarDados()void {                          
        userRequest.sendthis.getLoginParameters() );          
      }
      
        public function onSuccess(event:ResultEvent):void {
    
        Alert.showXML(event.result) );
    
        //cria String baseado no resultado
        var rawData:String = String(event.result);
        
        Alert.showrawData );              
        }
    
        public function onError(event:FaultEvent):void {
            Alert.show(ObjectUtil.toString(event.fault));
        }      
            
    ]]>
  </mx:Script>
  
  <mx:HTTPService id="userRequest" 
     url="http://localhost:8080/mentawai_teste/FlexAction.loginXML.mtw" 
     result="onSuccess(event)"
    fault="onError(event)"
    resultFormat="e4x"
    method="POST"/>

   <mx:Panel width="300" height="154" layout="absolute" horizontalCenter="0" verticalCenter="11" title="Login">
      <mx:Form width="100%" height="100" x="0" y="0">
         <mx:FormItem label="Login">
            <mx:TextInput id="loginField"/>
         </mx:FormItem>
         <mx:FormItem label="Password">
            <mx:TextInput id="passwordField"/>
         </mx:FormItem>
      </mx:Form>
      <mx:Button y="84" label="OK" horizontalCenter="0" id="sendBtn" click="enviarDados()"/>
      <mx:Label x="10" y="96" text="{loginField.text}" enabled="false"/>
      <mx:Label x="174" y="96" text="?" enabled="false"/>
   </mx:Panel>
  
</mx:Application>

Observe: a function getLoginParameters():Object, aqui está a questão, o formato que finalmente funcionou para envio dos parametros de forma que chegassem corretamente no servidor, sem nenhum erro inesperado...

onde a comunicação com o servidor é efetuada através do componente : mx:HTTPService, sendo que neste caso utilizei retorno em XML como resultado da execução da action

---

quanto a aplicação em java eu tenho na minha classe action o respectivo atributo setado na classe:

private UserBean user;

onde a estrutura dessa classe é:
public class UserBean {

  private String login;
  private String password;
  
  public String getLogin() {
    return login;
  }
  public void setLogin(String login) {
    this.login = login;
  }
  public String getPassword() {
    return password;
  }
  public void setPassword(String password) {
    this.password = password;
  }
  
}

bom fica ae a dica para conseguir enviar parametros do Flex para sua aplicação em java ;)

quinta-feira, 28 de junho de 2007

Mentawai: usando o SMTP do Gmail

algo interessante que acabei contribuindo para o projeto do Mentawai, foi uma vez que tive a necessidade de enviar email pela minha aplicação porém eu não possuia nenhum servidor SMTP disponível, o jeito era utilizar o que eu tinha disponível que no caso era utilizar o SMTP do Gmail, mas como fazer para utilizar o SMTP do Gmail, inicialmente o suporte de email do Mentawai( que é excelente ) não me possibilitava, com isso peguei os fontes do Mentawai, fiz uma proposta de alteração que possibilitaria o envio de email usando o SMTP do Gmail, o qual é autentificado via SSL, a proposta de alteração foi aceita e desde a versão 1.8 do Mentawai está disponível para os usuários...

porém no site do Mentawai no exemplo de uso do suporte de email, não tem um exemplo de como usar o SMTP do Gmail, bom eis aqui um exemplinho:

import org.mentawai.core.*;
import org.mentawai.mail.*;

public class ApplicationManager extends org.mentawai.core.ApplicationManager {
    
    public void init() {
        Email.setDefaultHostName("smtp.gmail.com");
        Email.setSSLConnectiontrue );
        Email.setDefaultPort465 );
        Email.setDefaultAuthentication("login@gmail.com""*senha*")
        Email.setDefaultFrom("login@gmail.com""Login");
    }
  
    public void loadActions() {
        // ...
    }
}
   

e dentro da sua classe action para enviar um mail simples, você pode utilizar esse trecho de código:
        try {
            SimpleEmail email = new SimpleEmail();
            email.addTo("login@gmail.com""Login");
            email.setSubject("Testing...");
            email.setMsg("Hi,\n\nBye!");
            email.send();            
        catch(Exception e) {
            e.printStackTrace();
        }  


veja o link:[Mentawai:enviando email]

terça-feira, 13 de março de 2007

Java : Framework MVC : Mentawai


algumas pessoas andaram me perguntando sobre o que vem a ser esse tal Mentawai, é bom?

minhas considerações sobre ele:
- agradável de programar
- filosofia "No XML": chega de ficar usando um monte de xml's para configurar framework
- como consequência do item anterior ganho na produtividade
- quanto a performance e execução não deixa nada a desejar para os outros frameworks existentes no mercado atualmente, como: Struts, Webwork, MyFaces, Spring; digo até que é muito mais facil de usar...

Atualmente: na versão 1.8 com um conjunto muito bom para apoio e desenvolvimento, outro fato referente a ele que me chamou a atenção foi a facilidade para desenvolver um suporte para otimizar ainda mais a produtividade com esse framework.

Mas quem usa ele ou já testou?
quem já usou/usa e quais foram suas respectivas considerações sobre o Mentawai

um caso de uso: Tribunal de Contas do Estado do Ceará
informações e notícias sobre esse assunto:
- forum Mentawai
- Slackware-Brasil
- Notícias Linux

alguns links que falam do Mentawai: [JavaFree:wiki][TheServerSide][JavaWorld]

Projeto Blank: OpenLaszlo 3.3.3 + Mentawai 1.8 + PortalJavaSuport 1.1


atualização do PortalJavaSupport nesse Projeto Blank
download: [link]

outras informações ver: [versão anterior][PortalJavaSupport 1.1]

domingo, 11 de março de 2007

PortalJavaSupport 1.1


Considerações: lembrando que a versão anterior usava uma versão costumizada do Mentawai 1.8, relacionado aos templates e algumas definições de inner actions... conversando com o pessoal que mantem o Mentawai foram enviadas algumas sugestões que eram da versão costumizada, atualmente o suporte de template costumizado foi inserido diretamente no PortalJavaSupport enquanto está em fase de avaliação pela equipe do Mentawai, com isso possibilitando a total independencia de ambos os lados, saindo uma nova versão do Mentawai o PortalJavaSupport será compatível =]

download do projeto [link] ~5.4MB
download de exemplo de uso: [link] ~2.2MB
documentação do projeto [link]
versão 1.1 - 11/03/2007

Objetivo do PortalJavaSupport:
desenvolvimento rápido de aplicações Web em java, no qual possui suportes para:

- Mentawai 1.8
desenvolvimento de um conjunto de anotações para possibilitar a configuração do mesmo através dessas anotações...

- Hibernate 3.2 ( para uso de anotações )
essa parte o suporte localiza as classes anotadas com as anotações para hibernate e auto configura o suporte necessário do Hibernate para habilitar um uso mais rápido possível, esse suporte também fornece um suporte genérico para casos de CRUD

- XStream 1.1.3
uma anotação para identificar a classe que será criado um alias no XStream e qual será o nome desse mesmo alias

- Jasperreports 1.2.8
consequence do Mentawai que a sua definição de saída é um relatório Jasper

Sobre os templates:
bom como comentei no inicio os templates por hora estão com uma versão própria costumizada no projeto... para utilizar a tag lig do template use na página .jsp:

<%@taglib uri="/pjstemplate" prefix="template"%>

PS.: verifique o exemplo disponível para verificar o uso...

OBS.: essa versão também possibilita um suporte inicial para trabalhar com modulos inseridos em runtime na aplicação web, onde um novo módulo é um arquivo .jar contendo as classes Action e de processamento da camáda de négocio, sendo este jar carregado para memória pelo suporte de modulos e posteriormente podendo ser acessado e atualizando a configuração da aplicação em Runtime, sem a necessidade de reiniciar o contexto da aplicação web para que as alterações sejam efetivadas

qualquer outra informação, sugestão, dúvida, critica é só falar =]