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

RIAForge


RIAForge

uma site voltado a projetos de aplicações web RIA, porem "puxa a sardinha" para o lado das aplicações desenvolvidas com as soluções da Adobe...

Flex: v2.0.1

opa interessante nova versão do Flex...( sim o Flex é bom sim ) essa nova versão possui algumas otimizações e novidades legais =]

para realizar um tour rápido pelo componentes e brincar um pouquinho com as possibilidades do Flex v2.0.1 acesse esse [link: Style Explorer]


pelo que entendi a atualização do Flex v2.0.1 para quem já possui o Flex v2.0 é gratuíta, veja o [link] para maiores informações.

OpenLaszlo: mais 2 aplicações disponíveis na internet

tudo bem que esse meu post não é sobre algo tão recente assim e que também já foi publicado no webblog do OpenLaszlo, mas para quem ainda não viu aqui temos exemplos claros do poder que o OpenLaszlo oferece para quem tem imaginação fertil por exemplo...

Bret Victor’s website
click-shirt

muito interessante, recomendo que deem uma olhada =]

ps.: uma das características que mais me encanta no OpenLaszlo é a possibilidade de literalmente viajar e criar qualquer tipo de interface, componetes, em outras palavras explorar ao máximo a criatividade para desenvolver novos níveis de interfaces ricas e interativas para aplicações web.

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]

RIA: Treina Tom : e - Genial


Treina Tom


um caso de aplicação muito, mas muito interessante que ando acompanhando, desenvolvido pelo meu amigo Carlos Eduardo da e-Genial utilizando Flex, Rails, FMS e WebOrb.

lembro a uns dias atras quando me pediu para auxiliar no teste da aplicação e realmente é uma proposta muito boa e a aplicação também, acredito que para empresas que possuem mais de uma filial, ou não, qualquer genero de empresas, para treinamentos e video conferências é um aplicativo que recomendo...

para maiores informações acessem o site do Treina Tom e deem uma conferida no Screencast, acompanhem também outras informações no blog da e-Genial

mais informações em um [PDF]

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 =]

sábado, 10 de março de 2007

OpenLaszlo: um relógio legal

ainda navegando pelo forum do OpenLaszlo vendo os posts da galera mostando as aplicações que desenvolveram com OpenLaszlo vi uma outra implementação de relógio digital muito interessante...

[ver o relógio]


fonte forum OpenLaszlo: [link: Cool Clock]
download do fonte: [host:primario] | [host:alternativo]

OpenLaszlo: Leitor RSS + PHP

Navegando pelo forum do OpenLaszlo vi uma implementação de leitor de RSS feito com OpenLaszlo + PHP

um exemplo:


quem tiver interesse ver em: FeedFlash
tópico no forum OpenLaszlo: [link]

Novidade: Plugoo no blog =]

Opa pessoal uma novidade que estou adicionando ao blog, no lado direito =]
Plugoo, vi em outro site na internet e resolvi verificar do que se tratava isso e achei muito interessante, é um meio pelo qual as pessoas que estão acessando o site podem entrar em contato com o "Dono", responsável pelo site e conversar

para outras pessoas que possuem blog ou sites de informações é algo interessante que recomendo dar uma olhada...


Plugoo

OpenLaszlo: serviço de busca de empregos

opa hoje de manha, vou eu no site do OpenLaszlo e eis que vejo uma notícia de uma nova aplicação de busca de empregos que foi desenvolvido a interface utilizando o OpenLaszlo : Monster.com



por curiosidade acessei a aplicação para fazer um teste, como de costume mais uma excelente implementação usando OpenLaszlo =]

mais informações ver em: OpenLaszlo Project Blog
também existe um tópico no forum oficial do OpenLaszlo: [link]

RIA: sinopse de aplicação

bom acredito que muito das dúvidas das pessoas relacionados ao uso de tecnologias RIA como o OpenLaszlo, Flex, AJAX, dentre outras soluções, é que não conseguem ver como que se configura uma aplicação agora usando tais soluções...



Client-Side | Lado do Cliente

- nesse caso temos, a aplicação OpenLaszlo, Flex, AJAX, etc, executam na máquina do cliente, da qual diz respeito os eventos de mouse, teclado, animações manipulação de dados da interface...

- vale lembrar que usando essas tecnologias não é valido perguntar, tem como usar por exemplo EJB? o EJB, controle de sessões, geração de relatórios, essas tarefas são realizadas no...

Server-Side | Lado do servidor

- aqui sim é a parte onde é executado a lógica de negócio, integração com outros serviores, no caso o questionado EJB será manipulado aqui desse lado, esse lado do servidor pode ser um servidor Java, servidor para ASP, PHP, Ruby, .NET ou qualquer outro servidor web que exista no mercado

- e desde será feito o acesso a base de dados usando a tecnologia de sua preferência, no caso do Java normalmente utilizam junto aos projetos o framework de persistência ORM Hibernate...

Comunicação/integração entre os lados da aplicação

- o meio de campo assim digamos, a forma pela qual ambos os lados da aplicação conversa, normalmente nessas aplicações RIA temos o uso de XML para trabalhar com os dados entre ambos os lados, levando em consideração também que o OpenLaszlo, Flex e AJAX trabalham mais facilmente com dados estruturados em tag(XML)

- utilizando Java temos algumas opções para trabalhar com essa parte, DWR que já te fornece toda uma infra estrutura que realiza esse meio de campo de modo "simples" e/ou uso do XStream o qual é uma API de persistência/transporte a qual realiza a transformação do Objeto para XML e de XML para Objeto

sexta-feira, 9 de março de 2007

Flex: também possui muitos atrativos

muitas pessoas vendo meus posts sobre OpenLaszlo pode até pensar que tenho algo contra o Adobe Flex, muito pelo contratio eu também reconheço que o Flex é uma excelente solução, algumas das capacidades dele podemos ver no respestivo [Link: FlexStyleExplorer]

OpenLaszlo: problemas com acentuação

esse é um dos casos que muitos acabam tendo problemas quando estão trabalhando com o OpenLaszlo, enquanto estão fazendo testes tudo funciona tranquilamente, mas quando começa a usar mais, com uma base de dados e surgem os tais caracteres especiais como os acentuados, ae eis que surge o problema.... no OpenLaszlo mostra normalmente uns quadrados ou até uns ? no lugar do caractere...

mas como resolver?

simples na saída da fonte do XML é preciso tratar o encoding, o .swf executado pelo plugin Flash trabalha com textos usando como base o encoding UTF-8, então é só ajustar o encoding no servidor =]

exemplos:
- PHP
$XML = "<tag>á é í ó ú ç ã õ ... </tag>"; 
echo utf8_encode( $XML );


- Java
no java tem uma característa um pouco diferente, para resolver os problemas de encoding resolvi criando 2 métodos...

String text = "<tag>á é í ó ú ç ã õ ... </tag>";

* para tratar os caracteres para enviar ao OpenLaszlo:

  public static String toISO88591(String textthrows Exception{
    byte p[] = text.getBytes("UTF-8");
    return new String(p, 0, p.length, "ISO-8859-1");
  }


* para tratar os caracteres recebidos do OpenLaszlo:

  public static String toUTF8(String textthrows Exception{
    byte p[] = text.getBytes("ISO-8859-1");
    return new String(p, 0, p.length, "UTF-8");
  }

OpenLaszlo: finalmente um livro =]

sim, enfim eis que surge um livro sobre o OpenLaszlo e nada mais nada menos que da série ... In Action =]



Manning: Laszlo in Action



sobre os autores: um deles é fundador da Laszlo Systems, empresa que criou a primeira versão do hoje então OpenLaszlo( Max Carlson ), Norman Klein um consultor da Laszlo Systems com mais de 20 anos de experiência em engenharia de software e Glenn MacEwen relacionado a universidade de Queen's University do Canada.

ps.: isso sim eu considero uma ótima notícia =]

OBS.: Ainda em fase de formulação / escrita =(, previsão de finalização para Agosto de 2007

quinta-feira, 8 de março de 2007

OpenLaszlo: integração com FusionCharts

bom como sempre em aplicações soluções de gráficos são necessárias em algum momento para exibir dados de algo importante de modo que, facilite a compreenção dos mesmos...
em um post no Portal Java referente ao assunto de um usuário que não estava conseguindo
integrar o FusionCharts internamente em uma app Openlaszlo, fui verificar do que se tratava...

encontrei um tópico sobre o assunto no forum oficial do Openlaszlo: [ Embedding Fusion Charts], onde tinha um exemplo de como realizar tal integração, fiz um teste local com o OpenLaszlo 3.3.3 e verifiquei que funcionou...

ver um exemplo: [link]
download do exemplo: [link:forum] [link:alternativo]

ps.: nesse tópico do forum possui mais informações sobre o assunto, deem uma verificada =]

OpenLaszlo: outra mini aplicação voltada para o Portal Java

mais uma mini aplicação OpenLaszlo feita para o Portal Java, agora para o bloco das ultimas postagens no forum, atualização a cada 2 minutos, podendo ser configurado para o mínimo de 1 minuto, também possui a capacidade de configurar como irá abrir o link para o post, [self] ou [blank], padrão [self], tamanho da fonte padrão em 10px, mas pode ser alterado no intervalo de 9 a 12px, essa aplicação também possui uma novidade que é a tecla 'R' para atualizar os dados...

Obs.: use a tecla 'ESC' para acessar as configurações



download do fonte: [link]

OpenLaszlo: exemplo de organização de projeto

bom agora para exemplificar, já temos o exemplo da mini aplicação OpenLaszlo a qual mostra os dados do status do Portal Java.com e atualiza em certo intervalo de tempo, essa nova aplicação a interface é exatavamente a mesma, o que muda dela é a sua organização do projeto, a qual diferentemente da versão anterior que era tudo em um único .lzx, agora está separada em classes para possibilitar o reuso dos componentes gerados em outras aplicações...



como comentei, visualmente essa nova versão é exatamente igual a diferença está na forma que foi estruturada quanto ao código... compare ambas as versões para ver a estrutura...

download da versão anterior: [link]
download da versão estruturada em classes: [link]

com isso pode-se até traçar um paralelo das vantagens de uma programação mais organizada, quando se pensa em reuso, manutenção e até expansão de aplicação =]

quarta-feira, 7 de março de 2007

OpenLaszlo: usando o relógio do Openlaszlo dentro de outra aplicação

Muitas pessoas já viram o relógio do OpenLaszlo que é usando na página principal do Laszlo-Explorer onde vemos esses tipo de relógio sendo usado dentro de uma aplicação OpenLaszlo, mas como fazer para usar esse relógio?


Download do exemplo: [link]

Observação: usa a classe do relógio disponível no Laszlo-Explorer, porém com uma costumização para funcionar diretamente, não fiz nenhum teste usando mais de 1 relógio na mesma aplicação...

[Código] Exemplo de uso:
<canvas
    title="Exemplo de uso do relógio OpenLaszlo">
    
    <!-- incluindo a classe -->
    <include href="class/relogio"/>
    
    <simplelayout axis="y" spacing="20"/>
    
    <clock name="myclock" local="true" x="40" />
    <text multiline="true">
        Usando o relógio do Openlaszlo<br/>
        dentro de uma outra aplicação<br/>
        OpenLaszlo...
    </text>
</canvas>

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

OpenLaszlo: um exemplo completo de mini aplicação

bom base no exemplo de uso do LzTimer, alguns amigos sugeriram fazer uma mini aplicação com OpenLaszlo que também listasse o login dos usuários logados no Portal Java.com e também possibilitasse algum tipo de configuração, bom estão lá vai um exemplo de mini aplicação com OpenLaszlo =]

Observação: para acessar a parte de configuração precione a tecla ESC para exibi a tela de configuração, e ESC novamente para voltar a tela com as informações... também foi definido um tempo inicial de atualização de dados em 5 minuto, possibilitando uma configuração para o valor, sendo o mínimo de 1 minuto de tempo de espera. ( A fonte de dados desse app é um .php )

* tamanho da aplicação: 104 kB



Código fonte da mini aplicação: [link]

Modelo dos XML das fontes de dados:
* ds_status
<pjonline>
   <membros>?</membros>
   <visitantes>?</visitantes>
   <total>?</total>
</pjonline>


* ds_user
<list>
   <item number="1" user="usuário A" />
   <item number="2" user="usuário B" />
   <item number="3" user="usuário c" />
   <item number="4" user="usuário D" />
   ...
</list>