Ray da Costa

Sou Java

de raydacosta | Sexta, 8 de Janeiro de 2010



Categorias: Sem Categoria | Sem comentários »

Dicas para 2010

de raydacosta | Terça, 5 de Janeiro de 2010

http://2.bp.blogspot.com/_U04xYr0iQek/SZlf1GfW_fI/AAAAAAAABw0/b9ltayMToiA/s400/sucesso+5.jpg

Pratique o bem. Viva feliz, de bem com a vida. O mercado busca profissionais otimistas, afinal de contas, nossa rotina é feita de imprevistos. Seja um pouco mais altruísta e pense em como ajudar ao próximo de forma mais efetiva. Reveja seus valores e com uma nova visão da vida poderá valorizar mais o que é e o que têm.

Doe. Doação não tem a ver só com dinheiro. Você pode doar um pouco do seu tempo e muito do seu conhecimento. Crescer é dividir.

O sonho é seu.Cada sonho é único, pessoal e intransferível. A beleza da vida está na simplicidade das coisas, por isso, não precisa buscar sonhos mirabolantes. Simplifique.
O sonho alimenta o entusiasmo. O entusiasmo é a força que nos leva a realizar o que antes parecia impossível. Os seus sonhos alimentam esse entusiasmo que existe dentro de você. O sonho é o começo de tudo. É a mola que move desejos e realizações.

Ganhe um grande presente. Que tal colocar o seu sonho no papel? Transformá-lo em projeto e, quem sabe, em realidade. Sonhar só por sonhar não leva a nada. Carreiras mudam de acordo com suas próprias aspirações. Realizar os próprios sonhos é coisa para poucos. É o maior presente que podemos dar a nós mesmos. Não importa qual seja o seu sonho, o que importa é o que você está fazendo para tentar realizá-lo. Sua vida merece este presente. Lembre-se que sonhar pequeno e sonhar grande dá o mesmo trabalho, por isso sonhe GRANDE !

Tenha um plano B.Você está preparado para uma eventual mudança em sua vida? Sempre tenha na mão a expectativa de dar uma guinada em sua carreira. Pode ser que não aconteça logo, mas quando temos outros planos em mente, surgem oportunidades que devem ser aproveitadas

Amariles Pimenta

Categorias: Sem Categoria | Sem comentários »

Usar bluetooth com Java em Desktop

de raydacosta | Quarta, 16 de Dezembro de 2009

http://bluecove.org/logo.png

Os pacotes necessários:

Fiz este teste no Ubuntu…

* Biblioteca Bluecove
* Pacote bluez-libs 3.7 ou posterior deve ser instalado em seu sistema, apt-get install bluez-libs

O segredo está neste item:
* Com JNI libbluetooth.so (Não libbluetooth.so.3 ou libbluetooth.so.2) para poder usar mesmo construir com Bluez Versão 3 e Versão 4 ° Você precisa do pacote que cria um link para libbluetooth.so já instalado libbluetooth.so.3 ou libbluetooth.so.2 libbluetooth o-dev no Ubuntu (apt-get install libbluetooth-dev)
Para alterar o modo Discoverable do dispositivo que você deve ser root * Em 64-bit plataforma Linux 64-bit java deve ser utilizado

Mais detalhes em: http://bluecove.org/bluecove-gpl/index.html

Exemplo

Categorias: J2SE | Sem comentários »

Instalador de Software

de raydacosta | Sábado, 12 de Dezembro de 2009

Jammer

Categorias: Ferramenta | Sem comentários »

Google vai lançar celular inovador

de raydacosta | Terça, 1 de Dezembro de 2009

Categorias: Sem Categoria | 1 comentário »

RadarBOV Rastreabiliade bovina

de raydacosta | Terça, 17 de Novembro de 2009

http://www.ray.system.nom.br/img/radarbov.jpg

Idealizador e arquiteto da estrutura local, remota e movel

Objetivo
Auxiliar o pecuarísta da rastreabilidade e monitorização de seu animais (Bovinos, Suínos etc )

Tecnologia
Java nas 03 Camadas (web, desktop e mobile)

Funcionalidade
1 - Opera localmente ou remoto
2 - Persistência dos dados
3 - Envio e recebimento de arquivos via web
4 - Agendamento e monitorização de vacinas
5 - Relatórios

Categorias: Java, Meu Projeto | Sem comentários »

MobiBMLSOL balança de terceira geração no celular.

de raydacosta | Terça, 17 de Novembro de 2009

http://www.ray.system.nom.br/img/bmlsol_trabalho.jpg

Arquiteto da solução.

Tecnologia: Java
Aplicação que executa em celular com MIDP2.0 e CLDC 1.1

Objetivo
Exibir na tela do celular o peso emitido por balança bluetooth.

Funcionalidades
1 - Persistência de dados [Fazenda, Produtor, Device(Balança)]
2 - Pesquisa de dados cadastrados
3 - Comunicação via Bluetooth
4 - Consumo de dados do device localizado
5 - Envio de dados para persistência na web
6 - Geração de arquivo txt e xml para troca de dados
7 - Pesagem de carga viva

Categorias: J2ME, Meu Projeto | Sem comentários »

Android vai dominar o mundo!!!!!

de raydacosta | Terça, 17 de Novembro de 2009

DELL
Dell Android Netbook: It’s Coming

Sansung
Samsung Behold II Non-Review: Oh God, the Ugly

Para ganhar a semana
Android: Primeiro Smartphone da Dell chega no Brasil no fim deste ano.

Categorias: Java, J2ME | Sem comentários »

Plugin NetBeans para Android

de raydacosta | Terça, 17 de Novembro de 2009


Está no forno mas parece que vai ser 10!!!
Link

Categorias: Java, J2ME, Java Util | Sem comentários »

Assinantura de Jar em Java Keytools

de raydacosta | Quarta, 28 de Outubro de 2009

Keytool -genkey {-alias alias} {-keyalg keyalg} {-keysize keysize} {-sigalg sigalg} {-dname dname} {-keypass keypass} {-validity valDays} {-storetype storetype} {-keystore keystore} {-storepass storepass} {-v} {-Jjavaoption}
alias þ Nome pelo qual as chaves serão reconhecidas e armazenadas no keystore (banco de chaves). Ex: mykey
keyalg þAlgoritmo de criptografia utilizado para a criação das chaves. Este argumento é opcional, se nada for especificado o algoritmo utilizado será o DSA (Digital Signature Algorithm). Neste projeto foi utilizada esta opção default.
keysize þ Tamanho da chave que será gerada. O algoritmo DSA suporta tamanhos de 512 a 1024 bits, sendo o tamanho necessariamente múltiplo de 64. Para qualquer algoritmo o tamanho default é 1024.
sigalg þAlgoritmo de criptografia utilizado para assinar o JAR. Este argumento é opcional, se nada for especificado o algoritmo utilizado será o DSA.
dname þ Nome da entidade que gerará o par de chaves Ex:
CN=Banco do DAS, OU=LCMI, O=UFSC, L=Florianópolis, S=Santa Catarina, C=BR
Onde : CN = nome comum, OU = unidade organizacional (departamento, divisão), O = nome da organização, L = nome da localidade (cidade), S = estado, C = código do país.
keypass þ Senha utilizada para a proteção da chave no keystore.
validity þ Número de dias que o certificado deve ser válido.
storetype þ Permite definir a forma de armazenamento e o formato dos dados do keystore. Por default o formato é JKS (tipo proprietário da implementação de keystore fornecido pela Sun).
keystore þkeystore onde as chaves serão armazenadas. Se nada for especificado serão armazenadas no User.Home\.keystore (em geral c:\windows\.keystore), se não existir este será criado.
storepass þ Senha protetora do keystore.
v þ Mostra o certificado em forma legível

jarsigner {-keystore url} {-storetype storetype} {-storepass storepass} {-keypass keypass} {-sigfile sigfile} {-signedjar signedjar} {-verbose} {-Jjavaoption}
keystore þ URL do keystore onde a chave está armazenada. Se nada for especificado serão armazenadas no User.Home\.keystore (em geral c:\windows\.keystore).
storetype þ especifica o tipo do keystore que será instanciado. O tipo default do keystore é especificado pelo valor da propriedade de “keystore.type”, no arquivo de propriedades de segurança.
storepass þSenha protetora do keystore. Se não for informada, o programa perguntará antes de assinar.
keypass þ Senha protetora da chave privada. Se não for informada, o programa perguntará antes de assinar.
sigfile þ Especifica o nome a ser usado nos arquivos .SF (arquivo de assinatura) e .DSA (bloco de assinatura).Se nada for especificado, o nome será os 8 primeiros caracteres do alias especificado, se o alias tiver menos que 8, seu nome inteiro será colocado.
signedjar þ Especifica o nome e o local de armazenamento do arquivo JAR assinado. Por default, o arquivo assinado irá sobrescrever o não assinado.
verbose þ Indica o modo verbose, que faz aparecer mais informações na tela durante o processo de assinatura.

jarsigner -keystore /home/raydacosta/_PRE_LIXO/RAYDACOSTA.keystore -storepass RAYDACOSTA123 -signedjar /home/raydacosta/_PRE_LIXO/RAYDACOSTAMonitorTDS.jar /home/raydacosta/_PRE_LIXO/RAYDACOSTAMonitorTDS.jar MYALIAS

Categorias: Java | Sem comentários »

Formatação do E62

de raydacosta | Quinta, 24 de Setembro de 2009

http://images.fixya.com/N/Nokia/118x100/36577848.JPG

Formatação atraves do código *#7370# “send”
Codigo de destravamento do E62: original é 12345.

Categorias: Sem Categoria, J2ME, Hardware | 9 comentários »

Swing para Ajax

de raydacosta | Quinta, 24 de Setembro de 2009

http://gemsres.com/story/aug07/419728/Developing-Rich-226.jpg

Como eu ja imaginava. Não é so o SWT que tem a iniciativa de criar interface web em Ajax.
Ufa já estava imaginando que o pessoal do Swing estavam dormindo.

http://creamtec.com/products/ajaxswing/release_latest.html
http://www.geraldchan.ca/en/Swing_and_Ajax.html

Categorias: J2SE | 1 comentário »

Instalando SVN no Ubuntu

de raydacosta | Segunda, 21 de Setembro de 2009

1. Instalar o Apache e o SVN:
* sudo apt-get install apache2 subversion libapache2-svn
2. Criar o diretório onde ficarão os repositórios do SVN:
* sudo mkdir /srv/svn
3. Criar o repositório. Aqui seria um bom momento para restaurar o backup, quando for o caso:
* sudo svnadmin create /srv/svn/{repositorio}
4. Dar acesso ao Apache para esses diretórios:
* sudo chown -R www-data:www-data /srv/svn
5. Configurar o módulo webdav do subversion
1. sudo vi /etc/apache2/mods-enabled/dav_svn.conf
2. Descomentar a tag . No início e no fim do arquivo.
3. Descomentar a opção DAV svn
4. Descomentar a opção SVNParentPath /var/lib/svn e mudar o caminho para a localização do repositório: /srv/svn. Foi escolhido essa ao invés da SVNPath para termos mais de um repositório nesta mesma pasta.
5. Descomentar a opção AuthzSVNAccessFile /etc/apache2/dav_svn.authz. Para habilitar o controle de acesso aos projetos usando o arquivo informado. Mais informação sobre como criar o arquivo podem ser vistas no livro vermelho do Subversion, na seção Per-Directory Access Control. Infelizmente a versão em português ainda não foi traduzida.
6. Descomentar, para habilitar a autenticação, as três linhas:
1. AuthType Basic
2. AuthName “Subversion Repository”
3. AuthUserFile /etc/apache2/dav_svn.passwd
4. Adicione a linha: Require valid-user
5. Salve o arquivo. Para isso, aperte a tecla ESC digite “:wq” sem as aspas e pressione enter
6. Crie um usuário para acessr o SVN:
* sudo htpasswd -cm /etc/apache2/dav_svn.passwd
* O parâmetro -c só é necessário para o primeiro usuário, pois é usado para criar o arquivo. Para os seguintes apenas o -m resolve, que é usado para criptografar a senha com o MD5.
7. Reiniciar o apache
* sudo /etc/init.d/apache2 restart

Saiba mais:

Mais Detalhes 2

Categorias: Linux | Sem comentários »

ANDROID NO BRASIL AINDA ESTE ANO?

de raydacosta | Quinta, 17 de Setembro de 2009

http://info.abril.com.br/aberto/infonews/fotos/android_et_200109.jpg-20090220131711.jpg

Parece que agora sai, mas vamos ver este SONHO pode ser real:

http://info.abril.com.br/aberto/infonews/022009/20022009-15.shl

http://imasters.uol.com.br/noticia/11689/tecnologia/tim_vai_oferecer_telefone_com_android_no_brasil/

Eu quero um aparelho, alguem sabe onde comprar????

Categorias: J2ME, Android | Sem comentários »

java no iPhone

de raydacosta | Quinta, 17 de Setembro de 2009

Aos poucos as coisas estao entrando no eixo.

http://iphoneroot.com/wp-content/uploads/2008/06/step2_13.jpg
http://iphoneroot.com/category/all-news/java/
http://java4iphone.com/all-news/tutorial-install-java-on-the-iphone/
http://www.infoworld.com/d/developer-world/sun-well-put-java-iphone-042

Categorias: Sem Categoria | Sem comentários »

Transformar Imagem + Texto + File Destransformar etc

de raydacosta | Sexta, 11 de Setembro de 2009

public class Image64 {

public static String imagemToString(String url) throws FileNotFoundException, IOException{
BASE64Encoder e = new BASE64Encoder();
FileImageInputStream in = new FileImageInputStream(new File(url));
int size = (int) in.length();
byte[] b = new byte[size];
in.read(b);
in.close();
ByteBuffer bb = ByteBuffer.wrap(b);
String s = e.encode(bb);
System.out.println(s.length());
return s;
}

public static byte[] stringToImagemByte(String imagem) throws FileNotFoundException, IOException{
BASE64Decoder d = new BASE64Decoder();
byte[] b = d.decodeBuffer(imagem);
return b;
}

public static void stringToImagemFile(String imagem, String url) throws FileNotFoundException, IOException{
BASE64Decoder d = new BASE64Decoder();
byte[] b = d.decodeBuffer(imagem);
FileOutputStream img = new FileOutputStream(new File(url));
img.write(b);
img.flush();
img.close();
}

}

Categorias: Java | Sem comentários »

Encontro Agil 2009

de raydacosta | Sábado, 5 de Setembro de 2009

http://www.encontroagil.com.br/images/logoEncontro.png
http://www.encontroagil.com.br/

Categorias: Sem Categoria, Eventos que indico | Sem comentários »

Programador do Futuro

de raydacosta | Quarta, 2 de Setembro de 2009

 Laércio Cosentino

Como o ex-estagiário Laércio Cosentino incorporou 21 empresas, criou um grupo de R$ 1 bilhão e desafiou gigantes como SAP e Oracle

Mais detalhes

Categorias: Sem Categoria, Celebridades da Informática | Sem comentários »

Aredondamento de números em J2ME

de raydacosta | Quarta, 26 de Agosto de 2009

Uma possivel solução de aredondamento em J2ME. Estou testando e acredito que pode dar certo.

2 digitos
double number = (double)(int)((valorQDeveSerArredondado+0.005)*100.0)/100.0;
4 digitos
number = (double)(int)((valorQDeveSerArredondado+0.00005)*10000.0)/10000.0;

Categorias: Sem Categoria, J2ME | Sem comentários »

Acesso nativo com Java e Delphi (JNI)

de raydacosta | Segunda, 24 de Agosto de 2009

http://edn.embarcadero.com/article/images/10279/Delphi3.jpg

Demorou mas apareceu…

Tive que desenvolver uma aplicação jav apara consumir uma DLL em Delphi, bicho que robada.
mas com a ajuda do camaradas de C/C++ fizemos a gambi. Hehheeheh.
Construimos uma classe wrapper em C/C++ que consome a DLL em Delphi e assim a coisa foi redonda.
Até existe um procedimento para acessar a dll Delphi, mas muito enrrolado, segue abaixo.

java <---> c/c++ <----> delphi via JNI

Como implementar um código Java acessando uma DLL em Delphi.
Para c/c++ este procedimento via JNI é bem comum, mas com Delphi nunca tinha feito. O que muda mesmo são as APIs de geração dos Stubs que mudaram, resumo, nao vem com o código nativo do Java.

Baixar
http://www.pacifier.com/~mmead/jni/delphi/JEDI/PAS/JNI.pas
É muito importate este fonte, ele é uma caixa preta, ele que faz a interfacce com a Java.
fonte para vc dar uma olhada: http://www.pacifier.com/~mmead/jni/delphi/JEDI/DOCS/src/jni_pas.html

http://www.pacifier.com/~mmead/jni/delphi/files/jni_pas.zip
http://www.pacifier.com/~mmead/jni/delphi/JEDI/PAS/JNI_MD.INC

Gerador de Stub
http://www.pacifier.com/~mmead/jni/delphi/JavaToDPR/index.html
JavaToDPR - Uma ferramenta (escrito em Java) para criar um Delphi dpr. Arquivo de um arquivo de classe Java.. É uma espécie de análogo ao javah ferramenta que vem com o JDK. Ambos são gratuitos e podem ajudar você a começar a escrever código nativo que está a ser chamado de Java Javad - Uma ferramenta semelhante ao de cima na medida em que gera o código Delphi a partir de um arquivo de classe Java.

ou

JAVADPR
javadpr Windows é um executável nativo que produz um arquivo de projeto Delphi a partir de métodos nativos declarado em um arquivo de classe Java. O arquivo resultante do projeto Delphi compilado em uma DLL que é usado pelo Java para interagir com o Delphi via Java Native Interface (JNI ) A fonte do Delphi está incluído no pacote abaixo, portanto, é simplesmente uma questão de compilá-lo com o Kylix para produzir um executável nativo do Linux. (Pode ser necessário um javadpr $ IFDEF) é um trabalho em andamento e há algumas questões que ainda precisam ser analisadas No entanto, em seu estado atual, javadpr é uma ferramenta de boas-vindas para os programadores Delphi usando o Java Native Interface. Ajuda pacote Exemplo de página de download inclui exemplos, o javadpr binária do Windows, ea fonte de Delphi. (~ 62 KB)
Para usar esta api a dll jvm.dll tem que estar no mesmo diretorio do executavel javadpr.exe.
http://www.pacifier.com/~mmead/jni/delphi/javadpr/javadpr.zip

OBSERVAÇÃO
A última versão oficial do JNI.pas é datado de 1 de novembro de 2002 e inclui suporte para JDK 1.1.x, 1.2.x, 1.3.x e 1.4.x tanto em Windows (Delphi) e Linux (Kylix). Ver-o. Faça o download. (Inclui MD.INC JNI)

IMPORTATNE
Nota para Delphi 5 Usuários JNI.pas O arquivo contém diretivas de compilador para lidar com as diferenças entre o Linux (Kylix) e Windows (Delphi). Especificamente, existem diretivas: ($ IFDEF MSWINDOWS) e ($ IFDEF LINUX), que indica a plataforma. Define LINUX Kylix e Delphi 6 e 7 definem MSWINDOWS. Delphi 5 não define MSWINDOWS, então você precisa definir isso manualmente. Para definir isso em Delphi 5, vá para o Projeto | Opções | Directories / Conditionals e adicionar MSWINDOWS ao condicional define.

OBS: NESTE EXEMPLO NAO E NECESSÁRIO UTILIZAR OS GERADORES DE STUBS
——————————————————————

CLASSE JAVA
———–

class HelloWorld
{
public native void displayHelloWorld();
static
{
System.loadLibrary(”HelloWorDELPHI”);
}
}

class Main
{
public static void main(String[] args)
{
HelloWorld hw = new HelloWorld();
hw.displayHelloWorld();
}
}

COMPILAR

CLASSE NATIVA
————-

library HelloWorlDELPHI;

uses
JNI;

procedure Java_HelloWorld_displayHelloWorld(PEnv: PJNIEnv; Obj: JObject); {$IFDEF WIN32} stdcall; {$ENDIF} {$IFDEF LINUX} cdecl; {$ENDIF}
begin
Writeln(’Hello world!’);
end;

exports
Java_HelloWorld_DisplayHelloWorld;

end.

————————————————————————————————–

Obs.: Para executar sua classe dentro de pacote o comando de linha é
“C:\Program Files\Java\jdk1.6.0_12\bin\javah” -classpath C:\projetosnetbeans\JSenhaPWrapper\build\classes -jni -o JWrapper.h senhap.JWrapper”

Mas o que foi realizado
Em C/C++

1 - Você gera a sua classe Xpto.java
2 - Compila a classe
Criar esta classe sem pacote, nao criar esta classe dentro de pacotes….
Esta classe deverá ter o metodo que vc estará chamando
Criar metodo/atributos nativos correspondente aos que vc estará chamando em C/C++:
private static native int XPTOLog(String UserName, String Password);

O mesmo será usado da seguinte forma:
result = Xpto.XPTOLog(UserName, Password);

3 - Aplica na classe o javah.exe
Comando a ser utilizado:
javah -jni -o Xpto.h Xpto

3 - Deverpa ser gerado um arquivo Xpto.h (Stub)
Este arquivo c/c++ deverá conter o metodo correspondente ao existente na classe Java.
Ou seja, este metodo que vc estará chamando:
Mais ou menos alguma coisa assim: Java_XPTOLog

NAO PODE ESQUECER DE PASSAR PARA WRAPPER O NOME DO METODO QUE DEVERÁ FICAR DISPONÍVEL:
JNIEXPORT jint JNICALL Java_XPTOLog(JNIEnv * env, jclass, jstring user, jstring pwd)

4 - Este arquivo Xpto.h deverá ser encorporado no projeto em C/C++ e compilado
5 - Compilar a dll

#include “Xpto.h”
#define DLLNAME “JNIDll.dll” - delphi

6 - Colocar estas dll no system32 e carregar assim: System.loadLibrary(”JNIDll”);
ou ampontar doretamente com o : System.load(”C:\\projetosnetbeans\\Dll\\JNIDll.dll”);

7 - pronto so executar…

obs.> Podem ocorrer erros de carregamento. Necessário verificar se a sua dll nao tem nenhuma outra dll que tem que estar no mesmo lugar.

Este processo tive a ajuda de um amigão Fabio Garbin.

Obs.: Colocar todos no mesmo doretorio (codigo java e dll) e executar java Main

Mais detalhes.
http://www.pacifier.com/~mmead/jni/delphi/JEDI/DOCS/delphi-jni-1.html

Categorias: Java | 2 comentários »

« Página Anterior