sábado, 25 de fevereiro de 2012

Integrando ambiente de desenvolvimento do Android ao Netbeans 7+

Se você precisa desenvolver um aplicativo para Android através da IDE Netbeans 7+, siga os passos descritos nesta página http://www.nbandroid.org/p/installation.html

Provavelmente você deve ter pesquisado no Google como fazer isso e o resultado era de que não se conseguia ativar o plugin por que o endereço do Kenai estava errado, pois bem, você pode seguir qualquer dica que foi listada pelo Google, basta que ao invés de utilizar a url do Kenai especificada neles, utilize essa http://kenai.com/projects/nbandroid/downloads/download/updatecenter/updates.xml

É isso.

quinta-feira, 31 de março de 2011

Ativando o plugin JAX-RPC no Netbeans 6.9

Se você precisa invocar serviços da web definidos por um arquivo WSDL no Netbeans 6.9 pode ter recebido uma mensagem para instalar o plugin JAX-RPC, mas ao procurar o plugin ele não é listado, para inserir na lista de plugins siga os passos abaixo:

1) Acesse o menu Ferramentas -> Plugins
2) Acesse a aba Configurações
3) Clique no botão "Adicionar" e preencha no campo nome "Netbeans dev" e no campo URL "http://deadlock.netbeans.org/hudson/job/nbms-and-javadoc/lastStableBuild/artifact/nbbuild/nbms/updates.xml.gz"
4) Clique em OK

Pronto, o plugin JAX-RPC já será listado na aba de plugins disponíveis.

terça-feira, 22 de fevereiro de 2011

UML no NetBeans 6.9

Você procurou nos plugins do NetBeans 6.9 a ferramenta UML para criar diagramas de casos de uso, atividade, estado, etc... e não encontrou? Não pense que você ficou louco, realmente eles não existem mais, mas por sorte a solução é bem simples, apenas faça o download dos arquivos que estão neste link http://dlc.sun.com.edgesuite.net/netbeans/updates/6.7.1/uc/final/beta/modules/uml6/, abra o NetBeans e siga os passos abaixo:

1) Ferramentas->Plugins->Baixados
2) Clique no botão "adicionar"
3) Selecione todos os arquivos .nbm que você fez o download do link acima
4) Siga os passos da instalação
5) Após concluir a instalação dos plugins feche o NetBeans e abra novamente
6) Pronto, agora criar um novo projeto do tipo UML

quarta-feira, 19 de janeiro de 2011

Netbeans 6.9.1 problemas com combobox no Ubuntu

Depois de muito tempo acabei instalando a última versão disponível do Netbeans, a 6.9.1 e pra minha surpresa os mesmos problemas que ocorriam com relação a abertura de combobox da própria IDE na versão 6.0 continuam nesta versão, eu já tinha postado uma dica para abrir o Netbeans com um LookAndFeel diferente do que vem como padrão, resolve o problema, mas a dica anterior tratava-se de alterar a linha de comando do atalho que faz a chamada para abrir o Netbeans, agora a proposta é um pouco diferente, vou alterar o arquivo de configuração desta versão, pra fazer isso edite o arquivo netbeans.conf localizado (no meu caso) em /usr/local/netbeans-6.9.1/etc, encontre uma linha semelhante a essa:


netbeans_default_options="-J-client -J-Xss2m -J-Xms32m -J-XX:PermSize=32m -J-XX:MaxPermSize=200m -J-Dapple.laf.useScreenMenuBar=true -J-Dapple.awt.graphics.UseQuartz=true -J-Dsun.java2d.noddraw=true"

E adicione antes da última áspa (") o seguinte texto:


Feita a alteração o conteúdo final é:
netbeans_default_options="-J-client -J-Xss2m -J-Xms32m -J-XX:PermSize=32m -J-XX:MaxPermSize=200m -J-Dapple.laf.useScreenMenuBar=true -J-Dapple.awt.graphics.UseQuartz=true -J-Dsun.java2d.noddraw=true --laf javax.swing.plaf.metal.MetalLookAndFeel -J-Dswing.aatext=true -J-Dswing.metalTheme=ocean"

Pronto, agora você já pode clicar no atalho do Netbeans que ele será aberto com o LookAndFeel que você informou neste arquivo de configuracão.

sexta-feira, 21 de maio de 2010

OFF-TOPIC: Ubuntu 10.4 + Motorola Backflip (MB300) + 3G + modem (tethering sem root)

Recentemente adquiri o telefone Motorola Backflip com sistema operacional Android 1.5.

Utilizo regularmente o meu plano de dados 3G para navegar não só nos aparelhos celulares que possuo, mas também utilizo os aparelhos servindo de modem para o meu notebook com sistema operacional Ubuntu (atualmente com a versão 10.04), bom, nunca imaginei que a dor de cabeça seria tão grande pra conseguir fazer um sistema baseado em Linux (Android) instalado no aparelho celular servir de modem para conexão 3G, visto que absolutamente todos os aparelhos que eu pluguei no Ubuntu desde a versão 9.04 (ou 8.10 não me lembro direito) ele automaticamente era reconhecido como modem 3G e já me disponibilizava a opção de conexão imediatamente... mas com o Android 1.5 foi diferente, hoje foi lançada a versão 2.2 do Android prometendo disponibilizar a conexão 3G facilmente através da criação de um hotspot pelo aparelho... legal... mas por enquanto na 1.5 nativamente não funciona isso. Depois de muita pesquisa e achar que eu teria que "rootear" o aparelho com menos de 1 semana de vida, eis que surgiu a solução através da criação de uma VPN entre o celular e o notebook. Na verdade encontrei uma dica parecida de uma pessoa que fez isso com um Mac Book e o Backflip, não me lembro mais do link, embora muitas coisas fossem incompatíveis, algumas delas até funcionaram pra mim, mas no final faltaram pacotes relacionados entre o Mac e o Linux, então partindo daí acabei chegando nesta solução....

A "mágica" se faz através do AziLink. Testei no meu notebook com Ubuntu 10.04 e no notebook de um amigo com Windows 7, funcionaram perfeitamente.

Vamos lá:

No celular:

1) Instale a última versão do AziLink, o link
http://code.google.com/p/azilink está nesta página, ou se você tem um plano de dados ilimitado acesse diretamente com o seu celular e baixe por este endereço http://azilink.googlecode.com/files/azilink-2.0.2.apk, essa é a versão que estou usando.

2) Habilite a "Depuração USB" em Menu -> Configurações -> Aplicativos -> Desenvolvimento

No computador (todos os comandos descritos abaixo são para o Linux, mas pra quem utiliza Windows existem as formas compatíveis claro... click... click rsrsrsrsrs):

1) Faça o download e instale o Android SDK:
wget http://developer.android.com/sdk/download.html?v=android-sdk_r05-linux_86.tgz
tar -xvf android-sdk_r05-linux_86.tgz
cd android-sdk-linux_86/
tools/android update sdk

2) Esse passo os utilizadores de Windows podem pular, na verdade quem utiliza Windows precisa acessar o site do MOTODEV e baixar um driver que já reconhece o aparelho quando você plugar ele na USB, mas pra quem usa Linux precisa criar o arquivo /etc/udev/rules.d/90-android.rules com o seguinte conteudo:

SUBSYSTEM=="usb", ATTRS{idVendor}=="0bb4", MODE="0666"

3) Instale o OpenVPN 2.1 (não pode ser com versões anteriores):
sudo apt-get install openvpn

4) Crie um arquivo no diretório {de instalação do Android SDK}/tools com o nome azilink.ovpn e com o seguinte conteúdo:

dev tun

remote 127.0.0.1 41927 tcp-client
ifconfig 192.168.56.2 192.168.56.1
route 0.0.0.0 128.0.0.0
route 128.0.0.0 128.0.0.0
socket-flags TCP_NODELAY
keepalive 10 30
dhcp-option DNS 192.168.56.1


4) Pra eu não ter que ficar digitando um monte de comandos cada vez que vou utilizar essa conexão 3G acabei fazendo um shell script pra automatizar um pouco o processo (ainda não fiz o .bat pro meu amigo que utiliza Windows 7, mas assim que fizer eu disponibilizo aqui também), criei um arquivo no meu diretório home e chamei de android3GConnect.sh, com o seguinte conteúdo:

#######################################################
cd /home/je/.android-sdk-linux_86/tools
sudo echo "nameserver 192.168.56.1" >> /etc/resolv.conf
sudo ./adb kill-server
sudo ./adb start-server
./adb devices
./adb forward tcp:41927 tcp:41927
sudo openvpn --script-security 2 --config azilink.ovpn
#######################################################

Explicando o que pode ser diferente no seu caso:
/home/je/.android-sdk-linux_86/tools :
esse é o meu diretório de instalação do Android SDK, mude conforme necessário para você

sudo echo "nameserver 192.168.56.1" >> /etc/resolv.conf:
Usuários do Windows não precisam disso


5) Dê permissão de execução para esse script com o comando:
chmod +x android3GConnect.sh

6) Pra eu não ter que ficar abrindo o Terminal e digitar o comando pra executar esse arquivo cada vez que vou utilizar a conexão 3G, acabei criando um atalho na minha barra de tarefas, se você optar por fazer isso (no Ubuntu), clique com o botão direito sobre a barra de tarefas (painel) e selecione a opção "Adicionar ao painel..." -> Lançador de Aplicativo Personalizado, no campo "Tipo" você precisa selecionar a opção "Aplicativo no terminal", caso contrário você não vai conseguir parar de rodar esse script sem ter que reiniciar o computador, e no campo comando insira: gksu {caminho do diretorio onde salvou o shell script}/android3GConnect.sh

7) Agora pra economizar uma meia dúzia de comandos... reinicie ambos equipamentos (celular e computador)

8) Bom, feito isto, ao religar o celular, abra o programa AziLink e marque a opção "Service active", o Status será alterado para "Waiting for connection..."


9) Neste momento clique no link criado para chamar aquele shell script, ou se você for masoquista o suficiente e não criou o script abra um terminal e digite aqueles comandos do passo 4

10) Espere até aparecer a mensagem "Initialization Sequence Completed", se ela aparecer está tudo ok, o Status no AziLink no celular deve ter sido alterado para "Connected to host" e você já pode navegar, caso contrário... ou você esqueceu de alguma coisa desta dica ou eu pulei algum passo....

OBS:

1) Se você não quiser ter problemas com DNS's etc...etc... é melhor desativar a sua conexão wifi, caso contrário ela pode encontrar uma rede disponível e trocar o servidor de DNS automaticamente, daí bau bau conexão...

2) No caso dos usuários do Windows 7, já que não tem como utilizar o comando "sudo" ou o "gksu" no atalho do painel, abram o terminal como "ADMINISTRADOR" pra executar os comandos do passo 4

3) Quando você se encher o saco de navegar, pra cancelar a execução do script basta dar um CTRL+C na janela do Terminal de comando que está executando o shell script e encerrar a execução...

Bom proveito.

[]'s

quinta-feira, 29 de abril de 2010

Netbeans 8: Classe principal do projeto não encontrada (no Main classes found)

Você já se deparou com a mensagem ao tentar compilar, de que não existe classe principal no seu projeto? Mas você tem certeza de que existe a classe até porque na última vez que você compilou ela estava lá e funcionando? E mesmo que você acesse as propriedades do projeto o Netbeans não identifica que existe uma classe principal.

Bom, esse me parece um problema do Netbeans 6.8 (pelo menos comigo nunca aconteceu isso antes e sou usuário desde a versão 5.0), para resolver o problema basta que você limpe o cache que o Netbeans cria no seu computador.

No meu caso, como sou usuário de linux (Ubuntu), basta apagar a pasta /home/{meu usuário}/.netbeans/6.8/var/cache

Pronto! Agora basta abrir novamente o Netbeans, carregar o projeto e tudo voltou a funcionar normalmente.

sábado, 20 de fevereiro de 2010

JTable - excluir linhas

Seguindo o modelo do post anterior (JTable - inserir linhas), para excluir linhas selecionadas de um JTable basta:


int[] l = projetos.getSelectedRows();
DefaultTableModel dtm = (DefaultTableModel) jTable1.getModel();
for (int i = (l.length - 1); i >= 0; --i) {
     dtm.removeRow(l[i]);//remove todas as linhas selecionadas
}


Mumu....