29 de abr. de 2007

Mais uma visita a nova casa nova

Lá vou eu bancar o mestre de obras de nooovo :) estou mais uma vez indo ver como estão as obras de minha futura casa...
lá vou eu!

27 de abr. de 2007

Minha opinião sobre Second Life

Realmente deve ser muito interessante para os colegas navegadores de primeira viagem na internet entrar em um software que você ve um bonequinho andando em 3D pelo mundo virtual... mas as minhas duas experiencias nele foram péssimas... meu, the sims o 1 tem mais interação que isso.
Sem contar q chupa conexão.
A dois anos atrás lembro de ter utilizado o aplicativo, e era exatamente a mesma coisa... E então? é divertido? não é? bom depende... para pessoas que nunca tiveram uma experiencia interativa e se dizem maturos demais pra jogos eletronicos... sim, pra outras pessoas, não, é tedioso.

25 de abr. de 2007

1 ano já de formado

Faz um ano já que conclui meu ensino superior, tantas foram as experiências... resumo pela palavra saudade meu sentimento pela faculdade.
Alguns arquivos daqui do blog demonstram como foi o último ano de minha faculdade. Uma verdadeira viagem ao passado e as experiências vividas la .

18 de abr. de 2007

CoLinux o "Wine" do Windows

Estava navegando na internet no site do Ubuntu Linux, bem na área do Pool de idéias, numa delas falando do check tool for windows que seria um sistema de checagem de drivers linux para o Windows (isso achei o máximo, pois de que adianta instalar um Linux incompátivel na máquina de alguém?), enfim e a pessoa comentou sobre o Qemu e o coLinux.
Pois bem, o COLINUX que é interessante, ele cria um sistema operacional paralelo ao Windows, mas diferente do qEmu ele está mais para o que o Wine é para Windows que o VMware é para Windows, ele mescla com o Windows MESMO, como o Wine faz no Linux.
Como vc ter agora a opção de abrir o mozilla para windows ou mozilla para linux, agora vc pode abrir os dois e ficam em janelas paralelas na barra de tarefas.
Verfique no site do coLinux para ver que interessante ele é

--
Diogo G. Zanetti

15 de abr. de 2007

O horror o terror

Encontro isso quando tento realizar uma busca pela palavra exa d max em http://search.blogger.com
O medo, o horror!

29 de março

era de vex

extava a ver k era ntem....fui d pepoxito la a baixu a xuvr xo pa xtar km el i kandu la xegu el dix k nu vem...paxei m kmpltament i dps era pa u mandr pa merda max dps ainda penxei i mandei u ir dar 1a kurva...dps a xena du dokax....fikei xukada a olhar po tlm a xeriu k fkei....xtava mxm kaxe a dxexitir dxta mrd...max gxt demaxiadu dle pa dexixtir tao faxilment....fui jntar a kaxa du aderitu...mandandu xmx pur baixu da mesa i tal...wol...tive a flar km u joli max nu intexa u k flmux....a ginjinhax xoube mt bm...ax knverxax a mexa xao xemp ax mexmax i nu e xo na mexa...E EM TD U LADU...extou frta dexta vida d otaria fdxxxxxx...kunhxu 1a pexoa bxtant inxegura k nu akedita k eu gxto mxm dela i k pur exa pexoa faxia td....max parexe k dixer k gxto dla tdx ux diax, k a amu i adoru nu xega pa el pexebr u kant eu gxt dl...paxandu a hj....d manha akurdei mal dixpoxta...fui a pxikoluga ....ai amr nu t peokups k a titi vai tratar bem d ti...k atake de rixu k m deu nguem imagina....bem nu vou flar maix xbre exe axunto..pur ixu bjao gnd...fui
gente, que isso... que ridiculo, que horror, como alguém escreve assim? é tosco demais! essa pessoa tem que ir na psicologa não, tem que ir em uma professora de portugues.

Parabéns pela tosquisse http://dani-luka11.spaces.live.com/

Pequeno retrocesso de meu media player

Para quem tem conversado comigo nesses dias tenho ficado empolgado com meu progresso no media player. Ainda não implementei a internacionalização dele tampouco tive sucesso com o bendito jar.
Mas gerei um pequeno pacote zip que faz com que a pessoa ouça as musicas. Até eu resolver meu problema do jar tem zip
:)

14 de abr. de 2007

Gmail Paper!

Prefere receber seus e-mails impressos?
O gmail lancou o gmail paper, eles imprimem todos os seus e-mails e mandam pra casa pra vc de graça....
não é brincadeira, é sério... olhe o link abaixo!


http://mail.google.com/mail/help/paper/more.html

6 de abr. de 2007

Convertendo softwares utilizando OpenOffice e Java




Algumas empresas utilizam em sua estrutura interna softwares que se utilizam de suítes de escritório para seu funcionamento interno, pois de certo modo acaba sendo extremamente econômico para a própria empresa, já que o custo acaba sendo voltado à manter a suíte de escritório.



Não é nada raro nos depararmos com uma empresa que utiliza Excel ou Access internamente em seus aplicativos, ou quando os próprios aplicativos não são planilhas ou softwares feitos no Access.



Tendo em vista isso, o projeto OpenOffice.org, ou OOo, possui uma API interna de desenvolvimento de aplicações muito robusta.



O OpenOffice utiliza-se do UNO: Universal Network Objects, que são objetos de rede que se comunicam através de tecnologia Corba (calma que você não precisará aprender Corba para realizar a comunicação). Isto permite que o programador, através de uma interface, se comunique e execute todo e qualquer tipo de operação no OpenOffice.



Exemplo: Desde gerar um simples documento a partir de uma base de dados sua, até um sistema financeiro utilizando o OpenOffice como interface com usuário final.







Nosso exemplo será em Java para criarmos o ambiente de desenvolvimento UNO com o OOo. Vamos necessitar adicionar os seguintes jars ao seu ambiente de desenvolvimento, que podem ser encontrados junto a suíte do OpenOffice.

  • juh.jar
  • jurt.jar
  • ridl.jar
  • sandbox.jar
  • unoil.jar


Para habilitar o Office execute o seguinte comando:



$ soffice -invisible -accept="socket,host=localhost,port=2002;urp;StarOffice.NamingService"



Isso irá acionar o OOo em background ouvindo na porta 2002.







import com.sun.star.bridge.XUnoUrlResolver;

import com.sun.star.lang.XMultiServiceFactory;

import com.sun.star.lang.XComponent;

import com.sun.star.lang.XMultiComponentFactory;

import com.sun.star.uno.XComponentContext;

import com.sun.star.uno.UnoRuntime;

import com.sun.star.frame.XComponentLoader;

import com.sun.star.frame.XStorable;

import com.sun.star.beans.PropertyValue;

import com.sun.star.beans.XPropertySet;



import java.io.File;

import java.io.FileFilter;

import java.io.FilenameFilter;







public class DocumentConverter {



static XComponentLoader xcomponentloader = null;



static String stringConvertType = "MS Word 97";



static String stringExtension = "doc";



static String indent = "";



/**

* Metodo recursivo de localização e modificação de arquivos do formato sxw para

* doc

*/

static void traverse( File fileDirectory ) {



if ( !fileDirectory.isDirectory() ) {

throw new IllegalArgumentException(

"nao é um diretório: " + fileDirectory.getName()

);

}



System.out.println(indent + "[" + fileDirectory.getName() + "]");

indent += " ";





File[] entries = fileDirectory.listFiles(

new FileFilter() {

public boolean accept( File pathname ) {

return pathname.getName().endsWith("sxw");

}

}

);



// Iteração que é realizada em cada pasta

for ( int i = 0; i < entries.length; ++i ) {



if ( entries[ i ].isDirectory() ) {



traverse( entries[ i ] );

} else {

// abaixo inicia-se a conversao

try {

// o OOo precisa que esteja no formato Url

String stringUrl = "file:///"

+ entries[ i ].getAbsolutePath().replace( '\', '/' );

System.out.println(entries[i] + ":" + stringUrl);

// Loading the wanted document

Object objectDocumentToStore =

DocumentConverter.xcomponentloader.loadComponentFromURL(

stringUrl, "_blank", 0, new PropertyValue[0] );





XStorable xstorable =

( XStorable ) UnoRuntime.queryInterface( XStorable.class,

objectDocumentToStore );





PropertyValue propertyvalue[] = new PropertyValue[ 2 ];



propertyvalue[ 0 ] = new PropertyValue();

propertyvalue[ 0 ].Name = "Overwrite";

propertyvalue[ 0 ].Value = new Boolean(true);



propertyvalue[ 1 ] = new PropertyValue();

propertyvalue[ 1 ].Name = "FilterName";

propertyvalue[ 1 ].Value = DocumentConverter.stringConvertType;





int index = stringUrl.lastIndexOf(".");

stringUrl = stringUrl.substring(0, index + 1) + DocumentConverter.stringExtension;





System.out.println(stringUrl + ":" + propertyvalue);

xstorable.storeToURL( stringUrl, propertyvalue );





XComponent xcomponent =

( XComponent ) UnoRuntime.queryInterface( XComponent.class,

xstorable );



// Closing the converted document

xcomponent.dispose();

}

catch( Exception exception ) {

exception.printStackTrace();

}



System.out.println(indent + entries[ i ].getName());

}

}



indent = indent.substring(2);

}





public static void main( String args[] ) {

try {

XComponentContext xComponentContext =

com.sun.star.comp.helper.Bootstrap.createInitialComponentContext( null );



/* Gets the service manager instance to be used (or null). This method has

been added for convenience, because the service manager is a often used

object. */

XMultiComponentFactory xMultiComponentFactory =

xComponentContext.getServiceManager();



Object objectUrlResolver = xMultiComponentFactory.createInstanceWithContext(

"com.sun.star.bridge.UnoUrlResolver", xComponentContext );



// Create a new url resolver

XUnoUrlResolver xurlresolver = ( XUnoUrlResolver )

UnoRuntime.queryInterface( XUnoUrlResolver.class,

objectUrlResolver );

//abaixo a conexão é realizada na porta 2002

Object objectInitial = xurlresolver.resolve( "uno:socket,host=localhost,port=2002;urp;StarOffice.ServiceManager" );





xMultiComponentFactory = ( XMultiComponentFactory )

UnoRuntime.queryInterface( XMultiComponentFactory.class, objectInitial );



XPropertySet xpropertysetMultiComponentFactory = ( XPropertySet )

UnoRuntime.queryInterface( XPropertySet.class, xMultiComponentFactory );





Object objectDefaultContext =

xpropertysetMultiComponentFactory.getPropertyValue( "DefaultContext" );





xComponentContext = ( XComponentContext ) UnoRuntime.queryInterface(

XComponentContext.class, objectDefaultContext );





xcomponentloader = ( XComponentLoader )

UnoRuntime.queryInterface( XComponentLoader.class,

xMultiComponentFactory.createInstanceWithContext(

"com.sun.star.frame.Desktop", xComponentContext ) );



//modifique a linha abaixo para uma pasta contendo o seu arquivo

File file = new File("/home/{coloca a sua home aqui}/Teste");



traverse( file );



System.exit(0);

}

catch( Exception e ) {

e.printStackTrace();

}

}

}

Resolvendo o chato problema de lock do seu Eclipse




Imagine que durante a implementação de algumas classes no workspace do Eclipse a energia elétrica cai repentinamente em seu local de trabalho ou residência. Quando ela volta, bate um desespero danado... seu Eclipse avisa que a área já está em uso e não permite que você entre nela novamente. O que fazer então?



Entre em um terminal e acesse a pasta onde se encontra seu workspace:



$ cd ~/<seuWorkspace>



Dentro de seu workspace digite:



$ ls -al



Provavelmente você verá uma pasta com o nome ".metadata", acesse-a. Digite novamente "ls -al", se houver um arquivo .lock, você achou o problema, remova-o digitando:



$ rm .lock



Saia do terminal e tente agora iniciar seu Eclipse.



Setando seu locale






Se o seu sistema operacional estiver em inglês, não se preocupe, é possível deixar ele em português corrigindo o locale.



Coloque estas linhas no arquivo .bashrc que se encontra na sua home:




export LC_ALL=pt_BR

export LANG=pt_BR

export LC_CTYPE=ISO-8859-1

export LESSCHARSET=latin1

Instalando RPMs no SuSE





No SuSE Linux a instalação de RPMs deve ser evitada
utilizando o programa RPM, o correto é utilizar o YaST
para que o sistema "YOU Patch" detecte qualquer correção que
apresente para o pacote.



Para tanto, no modo gráfico execute o seguinte procedimento.

  1. Utilizando o Konqueror ou Firefox baixe e salve o
    RPM para o local desktop.
  2. Clique no arquivo e aparecerá a operação "Install with YaST",
    o sistema verificará todas as pendências que existem em relação
    a outros pacotes e conflitos relacionados, caso não exista,
    clique em accept, a instalação seguirá normalmente e o pacote
    será instalado com segurança.
  3. Após a instalação do pacote, sugira que utilize o YOU Patch
    Update do SuSE para que verifique alguma desatualização, já
    que o sistema se encontra modificado.



Múltiplos portais em Xoops com o mesmo DB




Esta dica vale muito para quem não pode criar mais de uma
base de dados para o portal em Xoops e precisa criar
um outro site em Xoops.



Antes explicarei como funciona a base do Xoops. Ele cria
suas tabelas com um padrão comum, por exemplo "users_xoops"
e toda e qualquer tabela por padrão do Xoops utiliza esta
extensão.



Se você precisa criar um segundo sistema para o Xoops na mesma
base, no momento de criação das tabelas ele lhe perguntará: qual
a extensão devo utilizar nas tabelas? Neste campo digite um
outro nome que não seja igual ao do primeiro portal que você
criou e pronto, as tabelas nunca conflitarão uma com a outra.



Java 6 no Windows

Para quem nao testou... eu uso ja a algum tempo java 6 mustang em minha maquina - http://java.sun.com e olha fiz esta brincadeirinha. Meu micro AMD Sempre 2.4 nao perdeu nem a velocidade ou teve resposta mais lenta.
Experimentem usando tudo só da microsoft...

--
Diogo G. Zanetti