sábado, 15 de junho de 2013

Maven em poucas linhas.

Linhas de comando úteis para o Maven no Windows.


Baixe o Maven:


Configure o PATH:

  • PATH = C:\apache-maven-3.0.5\bin;

Crie seu projeto:

  • cd c:\maven
  • mvn archetype:generate -DgroupId=br.com.mvbos.maven -DartifactId=helloword -DarchetypeArtifactId=maven-archetype-quickstart -DinteractiveMode=false

Navegue até deu projeto e execute:

  • cd helloword
  • mvn compile (compilar o projeto)
  • mvn test (rodar a classe de test (br/com/mvbos/maven/AppTest.java)
  • mvn package (gerar um pacote JAR)

Rode a aplicação:

  • java -cp target/helloword-1.0-SNAPSHOT.jar br.com.mvbos.maven.App

Exporte o projeto para o Eclipse:

  • Java SE: mvn eclipse:eclipse
  • Java EE: mvn eclipse:eclipse -Dwtpversion=2.0

No Eclipse, importe seu projeto e: 

  • Arrume o Classpath, apontando para: C:\Users\nome\.m2\repository

 

Edite o pom.xml e adicione alguma dependência:

(Procure dependências em: http://search.maven.org/)


    <dependency>
        <groupId>org.hibernate</groupId>
        <artifactId>hibernate-core</artifactId>
        <version>4.3.0.Beta3</version>
        <!-- <scope>compile, provided, runtime, test, system ou import</scope> -->
    </dependency>


(Que serão baixadas para pasta repository, para executar em modo offline use -o:  mvn -o test)


Verifique as dependências:


  • mvn dependency:tree

Caso seu projeto seja uma biblioteca, instale no repositório:


  • mvn install

quinta-feira, 31 de janeiro de 2013

Migrando aplicação do Tomcat para o Jboss

De repente, aquela aplicação que roda no Tomcat com Spring deve passar a rodar em um Jboss.
Isso pode ser muito trabalhoso, mas caso não precise utilizar os recursos de um servidor JEE, faça apenas duas alterações:

  1. Renomeie o arquivo persistence.xml (ex.: persistence-spring.xml)
  2. Adicione na tag web-app (web.xml): metadata-complete="true".
Com isso conseguimos rodar nossa aplicações desenvolvida no Tomcar 6 no Jboss 5.1 com o único problema de não estarmos utilizando recursos do servidor.

segunda-feira, 31 de dezembro de 2012

TextPane sem quebra de linha.

Melhor forma de evitar a quebra de linha em um TextPane é sobrescrevendo o método  Scrollable Tracks Viewport Width

Exemplo:

private JTextPane noWrapTextPane = new JTextPane() {

        @Override
        public boolean getScrollableTracksViewportWidth() {
            return getUI().getPreferredSize(this).width
                    <= getParent().getSize().width;
        }
    };

sexta-feira, 14 de dezembro de 2012

Valores montários em Real com bean:writer do Stuts

Valores montários em Real com bean writer do Stuts.


O format do BeanWrite do Struts 1 utiliza o DecimalFormat do Java, isso quer dizer que utilizar  vírgula como separação dos centavos (##.000,00) irá causar erro, já que "." é o separador decimal ou monetário e "," é o separador de grupos.

Para resolver esse problema você pode utilizar o atributo locale passando um objeto Locale do Java.

Exemplo:
...
<%@ page import="java.util.Locale"%>
<%
    Locale meuLocal = new Locale( "pt", "BR" );
    request.getSession().setAttribute("meuLocal", meuLocal);

%>

...
< bean:write name="lst" property="saldo" locale="meuLocal" format="##,000.00"/ >
...

quinta-feira, 25 de outubro de 2012

sexta-feira, 21 de setembro de 2012

Para aqueles que não lembram de cabeça todas as variáveis do System.properties, esse site tem uma tabela com as principais.

Como não poderia deixar de ser, criei um “Java System Properties Debug” listar essas propriedades.

Site: http://www.mindspring.com/~mgrand/java-system-properties.htm


Listagem rápida:

file.encoding, file.encoding.pkg, file.separator, java.class.path, java.class.version, java.compiler, java.home, java.io.tmpdir, java.version, java.vendor, java.vendor.url, line.separator, os.name, os.arch, os.version, path.separator, user.dir, user.home, user.language, user.name, user.region e user.timezone



ImageUtil

ImageUtil


E quando você precisa de um redimensionador em lote de imagens?
você pode baixar algum ou ter todo o trabalho de desenvolver um.
Resolvi desenvolver mas com intenção de resolver um problema (redimensionar mais de 100 imagens) e brincar um pouco com o Java pra Desktop.

Resolver meu problema eu consegui, agora brincar, infelizmente não de tempo :(.

Link: http://sourceforge.net/projects/mvbosagendasimp/files/imageUtil.zip/download

Para algo mais profissional (mais opções): http://sourceforge.net/projects/jiu/files/