quarta-feira, 18 de fevereiro de 2009

Commonthread Flickr-Fu + Background-Fu!

Recentemente precisei fazer um trabalho que envolvia agendar tarefas para serem feitas em uma determinada hora especificada, e além disso, que eu pudesse acompanhar o andamento do processo agendado, tudo isso envolvendo uma conexão com a API Flickr.

Bom, a conexão com o Flickr eu já havia testando, inclusive comentei sobre isso.



Depois de algumas pesquisas descobri o plugin background-fu que faz exatamente o que eu precisava, ou seja, agendar um job e poder acompanhá-lo depois.

Pois bem, seguindo o tutorial do próprio plugin você faz toda a instalação e trabalha sem problemas. Ahh.. deve-se atentar para a linha (
config.active_record.allow_concurrency = true ) que deve ser adiconada no environment.rb para que sejam ativadas as "features" bônus de acompanhamento de jobs.




Bem, obviamente que se fosse só isso eu não precisaria escrever nada aqui pois já tem tudo no tutorial exemplo dos dois plugins, mas, eu tive um graaannde problema e como queimei as pestanas pra solucionar resolvi postar aqui.

O problema começou quando tentei fazer com que o background-fu fizesse a conexão com o Flickr lá mesmo fizesse uma pesquisa para que o resultado eu pudesse manipular. Pois bem, a conexão foi feita sem nenhum problema, mas quando eu "pedia" para fazer a pesquisa simplesmente era retornado uma resposta vazia, como se não existisse conteúdo no site para retornar.

Pra resumir, depois de muito rodar acabei descobrindo que o problema todo é o tal arquivo token.yml que o flickr-fu cria. Isso mesmo, simplesmente ao utilizar o worker do background-fu a classe Flickr não reconhecia o arquivo, e aí analisando mais a fundo descobri que o arquivo é carregado pelos parâmetros que estão em outro aquivo "flickr.yml" que o próprio usuário cria.

O arquivo flickr.yml originalmente tem a seguinte formatação:

== Example flickr.yml
--- !map:HashWithIndifferentAccess
key: "YOUR KEY"
secret: "YOUR SECRET"
token_cache: "token_cache.yml"

Ele funciona perfeitamente até o momento é que vai se usar o background-fu.

A solução que encontrei foi colocar o caminho absoluto do arquivo "token.yml" no arquivo "flickr.yml". Ele ficaria mais ou menos assim:

== Example flickr.yml
--- !map:HashWithIndifferentAccess
key: "YOUR KEY"
secret: "YOUR SECRET"
token_cache: "/home/fulano/rails_app/seu_projeto/token_cache.yml"


Pronto! Fazendo isso tudo voltou ao "normal"!

[]'s

Erro ao tentar instalar o IE7?

Se você tentou instalar o IE7 em uma máquina e apareceu o erro mostrado na figura a baixo, veja o que fazer.


Eu me deparei com esse erro algumas vezes e depois de algumas buscas encontrei a solução.
Faça uma pesquisa no windows pelo arquivo "ie7.log" e voce vai ver que ele contém mais ou menos esse conteúdo:

[ie7.log] 0.579: ================================================================================ 0.579: 2009/02/18 08:37:44.757 (local) 0.579: c:\55c2b1b10404135628bd20e73b9a\update\update.exe (version 6.2.29.0) 0.594: Hotfix started with following command line: /quiet /norestart /er /log:C:\WINDOWS 0.610: IECUSTOM: Scanning for proper registry permissions... 1.954: IECUSTOM: Unwriteable key HKCR\Interface\{34A715A0-6587-11D0-924A-0020AFC7AC4D} 1.954: IECUSTOM: Unwriteable key HKCR\Interface\{34A715A0-6587-11D0-924A-0020AFC7AC4D}\ProxyStubClsid 1.954: IECUSTOM: Unwriteable key HKCR\Interface\{34A715A0-6587-11D0-924A-0020AFC7AC4D} 1.954: IECUSTOM: Unwriteable key HKCR\Interface\{34A715A0-6587-11D0-924A-0020AFC7AC4D}\ProxyStubClsid32 1.954: IECUSTOM: Unwriteable key HKCR\Interface\{34A715A0-6587-11D0-924A-0020AFC7AC4D} 1.954: IECUSTOM: Unwriteable key HKCR\Interface\{34A715A0-6587-11D0-924A-0020AFC7AC4D}\TypeLib 1.954: IECUSTOM: Unwriteable key HKCR\Interface\{34A715A0-6587-11D0-924A-0020AFC7AC4D} 1.954: IECUSTOM: Unwriteable key HKCR\Interface\{34A715A0-6587-11D0-924A-0020AFC7AC4D}\TypeLib 1.954: IECUSTOM: Unwriteable key HKCR\Interface\{34A715A0-6587-11D0-924A-0020AFC7AC4D} 3.141: IECUSTOM: Scanning for proper registry permissions... 3.641: IECUSTOM: Scanning for proper registry permissions...

Como dá pra notar nesse log de instalação do IE7 o problema todo é uma chave do registro que não está com permissões necessárias para que seja efetuada a instalação.

Então a coisa é simples, basta ir na chave de registro indicada no log e colocar permissão para "todos".

Pronto! ;)

[]'s

terça-feira, 3 de fevereiro de 2009

O Ruby on Rails não funciona depois de instalar?!

Se por acaso você instalou o Ruby on Rails no Linux/Ubuntu seguindo alguns tutoriais que existem na net e depois de todos os procedimentos ele não funcionou, geralmente retornando uma mensagem informando que ele não está instalado no seu computador, tente executar o comando abaixo:

export PATH=$PATH:/var/lib/gems/1.8/bin

Se der certo, edite o arquivo "/etc/profile" e insira a mesma linha no final do arquivo. Isso fará com que você não precise ficar digitando o comando acima sempre que for utilizar o Rails.


Qualquer dúvida ou dica é só comentar!

vlw!