miércoles, 9 de enero de 2013

MAVEN - REEMPLAZO DE VARIABLES ${XX}

Para reemplazar el valor ${project.artifactId} dentro de un archivo de configuracion u otro (por ej, log4j.properties) es necesario indicarle a maven que reemplace estas cadenas de caracteres por su valor correspondiente para ello se agrega al pom <filtering>true</filtering> dentro de la seccion build.
Si filtering esta seteado en true maven buscara dichas cadenas y las reemplazara por el valor correspondiente


Donde src/main/java es la carpeta donde se encuentran los archivos a los cuales se les debe reemplazar el valor.

MAVEN JAX-WS EN TOMCAT 6 EN MYECLIPSE 2014


Después de muchos dolores de cabeza y de que no funcionara un webservice JAX-WS en el MyEclipse, me di cuenta que en la version 2014 el Tomcat 6 que viene esta muy desactualizado, por lo que procedi a instalar la ultima version conocida Tomcat6, y me funciono correctamente.

Bajar ultima version de: http://tomcat.apache.org/download-60.cgi bajar la version .zip y descomprimirla en algun directorio.

luego Configurar el MyEclipse indicando el directorio.




Luego quedaria algo asi en el MyEclipse:


Dependencias necesarias en el pom.xml
       <dependency>
            <groupId>javax.servlet</groupId>
            <artifactId>servlet-api</artifactId>
            <version>2.5</version>
            <scope>provided</scope>
        </dependency>
        <dependency>
            <groupId>javax.servlet.jsp</groupId>
            <artifactId>jsp-api</artifactId>
            <version>2.1</version>
            <scope>provided</scope>
        </dependency>
        <dependency>
            <groupId>org.glassfish.metro</groupId>
            <artifactId>webservices-rt</artifactId>
            <version>2.3</version>
        </dependency>

Ojo que esto es solo para el Tomcat 6.

Ahora si quieren seguir usando el Tomcat del Myeclipse la configuracion del pom.xml es muy diferente....
        <dependency>
            <groupId>com.sun.xml.ws</groupId>
            <artifactId>jaxws-tools</artifactId>
            <version>2.2.8</version>
            <scope>provided</scope>
        </dependency>
        <dependency>
            <groupId>com.sun</groupId>
            <artifactId>webservices-rt</artifactId>
            <version>1.1</version>
        </dependency>
        <dependency>
            <groupId>com.sun</groupId>
            <artifactId>webservices-extra</artifactId>
            <version>1.1</version>
        </dependency>

En este caso es importante usar las versiones de webservices-rt y extra desde com.sun, si usan otro groupId el Tomcat de MyEclipse les dara problemas.




MAVEN CONFIGURACION PARA JPA

Cuando compilamos con Maven un proyecto con jpa es probable que nos de el error de clases duplicadas.
Para solucionar esto debemos agregar en el pom lo sgte.


 maven-compiler-plugin
 
  1.6
  1.6
  -proc:none