Android + Servlet – Como criar um Servlet para tráfego de objetos com o Android

comunicacao

“Servlet (servidorzinho em tradução livre) é um componente como um servidor, que gera dados HTML e XML para a camada de apresentação de uma aplicação Web. É basicamente uma classe na linguagem de programação Java que dinamicamente processa requisições e respostas, proporcionando dessa maneira novos recursos aos servidores. A definição mais usada considera-os extensões de servidores. Servlet é um módulo que estende a funcionalidade de um servidor Web, através de módulos de aplicação implementados em Java.” (Wikipédia)

O objetivo desse post é mostrar como criar um Servlet para se comunicar via objetos com um cliente Android. No exemplo vou utilizar o NetBeans 7.3 com Glassfish e o Android com uma maquina virtual 4.2.2. O objetivo deste post não é explicar toda estrutura do Servlet, mas sim explicar a criação de um projeto simples que receba um objeto e retorne outro.

Vamos iniciar com a criação do Servlet: Continue reading

Java – Remover tags HTML de uma String (How to remove HTML from String)

html to text

A classe ParserDelegator junto com a interface HTMLEditorKit.ParserCallback do pacote ‘javax.swing.text.html’ permite o reajuste de um texto em HTML para um texto comum, ajustando todas as tags de acentuação e retirando todas as demais tags. Vamos criar uma classe que será responsável por isso, veja abaixo:

public class HtmlToText extends HTMLEditorKit.ParserCallback {

    private StringBuilder s;

    public HtmlToText() {
    }

public String parse(String texto) throws Exception {
byte[] dados = texto.getBytes();
ByteArrayInputStream bais = new ByteArrayInputStream(dados);
Reader reader = new InputStreamReader(bais);
return parse(reader);
}

    public String parse(Reader in) throws IOException {
        s = new StringBuilder();
        ParserDelegator delegator = new ParserDelegator();
        delegator.parse(in, this, Boolean.TRUE);
        return getText();
    }

    @Override
    public void handleText(char[] text, int pos) {
        s.append(text);
        s.append("n");
    }

    public String getText() {
        return s.toString();
    }
}

Para utilizarmos segue o exemplo:

Continue reading

Android – Remover tags HTML de uma String (How to remove HTML from String)

android_html

A classe Html do pacote ‘android.text’ permite que  todas as tags html de uma string seja retirada e ajustada sua acentuação, ela também permite a conversão de uma String em html padrão, veja abaixo como isso é feito:

import android.text.Html;

[...]
//texto html
String html = "<p><div>Corre&ccedil;&otilde;es Monitor 1.0.0.43:</div>";

//corrigindo o texto
String texto = Html.fromHtml(html).toString();

//passando para html
String texto2 = Html.toHtml(new SpannableString(texto));

//saida do sistema:
//html: "<p><div>Corre&ccedil;&otilde;es Monitor 1.0.0.43:</div>"
//texto: "Correções Monitor 1.0.0.43:"
//texto2: "<p>Correções Monitor 1.0.0.43:</P>"

Caso você não esteja trabalhando com o Android e queira fazer o mesmo no Java SE veja:
Java – Remover tags HTML de uma String (How to remove HTML from String)

Java – Usando o SimpleDateFormat

Acredito que varias pessoas já tiveram problemas com o objeto Date, ou ajustar uma String de data com formato americano por exemplo.

O SimpleDateFormat é uma Classe bem simples de ser utilizada e totalmente útil para esse assunto. Com o SimpleDateFormat você pode definir seus próprios padrões de data, por exemplo, dd/mm/aaaa, dd/mm/aaaa, aaaa-mm-dd, e assim por diante. Os padrões de letras são definidas na imagem abaixo (todos os outros caracteres de ‘A’ a ‘Z’ e de ‘a’ a ‘z’ são reservados):

Tabela SimpleDateFormat

Abaixo  vamos mostrar um exemplo bem simples da utilização dessa Classe.
Continue reading

Linux – Java no navegador – Plugin Java para Chrome e Firefox

A plugin is needed to display this content

Plugin is needed

Depois de muito tempo tentando rodar o plugin do java no meu navegador consegui resolver o problema.

Primeiramente se você não tiver o java baixe e instale o Java-JRE segue o link:
http://www.java.com/pt_BR/download/manual.jsp

Depois de instalado faça os seguintes procedimentos:
Continue reading

Java – Persistência com XML

Uma maneira bem simples de trabalhar com XML em java.
Esta maneira utiliza a biblioteca javax.xml.bind.

Este modo de trabalho com XML é simples pois ele trabalha com sua estrutura de objetos usando annotations,
você define toda sua estrutura de xml de acordo com seus objetos.

Exemplo:

Objeto A{
List B b;
}

Objeto B{
String nome;
String telefone;
}

Main{
a = novo A;
a.add(novo B(teste1,1111111111));
a.add(novo B(teste2,1111111111));
gravarEmXML(a);
}

XML:

< a >
 < b >
 < nome > teste1 < / nome >
    < telefone > 1111111111 < / telefone >
    < / b >
 < b >
    < nome > teste2 < / nome >
    < telefone > 1111111111 < / telefone >
 < / b >
< / a >

Simples não? tendo o XML também pode-se fazer o inverso:

Main{
a = pegarXML();
//seu objeto A já vai estar com os dados teste1 e teste2 conforme você gravou.
}

Porem você deve usar as tag’s annotations em seus objetos como no exemplo abaixo seguindo o mesmo raciocínio:

Continue reading

There is insufficient storage to install this suite – J2ME

Ao compilar um projeto J2ME no Windows me deparei com o seguinte problema:

*** Error ***
A problem occured during deploying application from http://127.0.0.1:2317/EXEMPLO.jad
* Reason:
There is insufficient storage to install this suite

Continue reading