Maven: Unable to find the mojo ‘org.apache.axis2:axis2-wsdl2code-maven-plugin:1.4:wsdl2code’

Java, Maven, Open Source, Programación, Web Services 9 de March del 2010

1 Star2 Stars3 Stars4 Stars5 Stars (No Ratings Yet)
Loading ... Loading ...

La verdad es que no entiendo por que me daba la siguiente exception:

1
2
3
4
5
6
ERROR]BUILD ERROR
 Internal error in the plugin manager executing goal 
'org.apache.axis2:axis2-wsdl2code-maven-plugin:1.4:wsdl2code': 
Unable to find the mojo 'org.apache.axis2:axis2-wsdl2code-maven-plugin:1.4:wsdl2code' in the plugin 
'org.apache.axis2:axis2-wsdl2code-maven-plugin' org.apache.axis2.wsdl.codegen.CodeGenerationException
 For more information, run Maven with the -e switch

pero ya después de un rato me puse a verificar los jars que se necesitan y así quedo el pom.xml y con esto me funciono muy bien…

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
...
<dependency>
 
                  <groupId>org.apache.axis2</groupId>
 
                  <artifactId>axis2-java2wsdl</artifactId>
 
                  <version>1.4.1</version>
 
                  <exclusions>
 
                        <exclusion>
 
                              <groupId>org.apache.ws.commons.axiom</groupId>
 
                              <artifactId>axiom-dom</artifactId>
 
                        </exclusion>
 
                        <exclusion>
 
                              <groupId>org.apache.ws.commons.axiom</groupId>
 
                              <artifactId>axiom-api</artifactId>
 
                        </exclusion>
 
                        <exclusion>
 
                              <groupId>org.apache.ws.commons.axiom</groupId>
 
                              <artifactId>axiom-impl</artifactId>
 
                        </exclusion>
 
                        <exclusion>
 
                              <groupId>org.apache.ant</groupId>
 
                              <artifactId>ant</artifactId>
 
                        </exclusion>
 
                        <exclusion>
 
                              <groupId>org.apache.httpcomponents</groupId>
 
                              <artifactId>httpcore</artifactId>
 
                        </exclusion>
 
                        <exclusion>
 
                              <groupId>org.apache.httpcomponents</groupId>
 
                              <artifactId>httpcore-nio</artifactId>
 
                        </exclusion>
 
                        <exclusion>
 
                              <groupId>junit</groupId>
 
                              <artifactId>junit</artifactId>
 
                        </exclusion>
 
                        <exclusion>
 
                              <groupId>commons-fileupload</groupId>
 
                              <artifactId>commons-fileupload</artifactId>
 
                        </exclusion>
 
                        <exclusion>
 
                              <groupId>org.apache.geronimo.specs</groupId>
 
                              <artifactId>geronimo-jms_1.1_spec</artifactId>
 
                        </exclusion>
 
                        <exclusion>
 
                              <groupId>javax.mail</groupId>
 
                              <artifactId>mail</artifactId>
 
                        </exclusion>
 
                        <exclusion>
 
                              <groupId>com.ibm.icu</groupId>
 
                              <artifactId>icu4j</artifactId>
 
                        </exclusion>
 
                        <exclusion>
 
                              <groupId>xom</groupId>
 
                              <artifactId>xom</artifactId>
 
                        </exclusion>
 
                        <exclusion>
 
                              <groupId>org.apache.geronimo.specs</groupId>
 
                              <artifactId>geronimo-javamail_1.4_spec</artifactId>
 
                        </exclusion>
 
                        <exclusion>
 
                              <groupId>commons-io</groupId>
 
                              <artifactId>commons-io</artifactId>
 
                        </exclusion>
 
                        <exclusion>
 
                              <groupId>jaxen</groupId>
 
                              <artifactId>jaxen</artifactId>
 
                        </exclusion>
 
                        <exclusion>
 
                              <groupId>annogen</groupId>
 
                              <artifactId>annogen</artifactId>
 
                        </exclusion>
 
                        <exclusion>
 
                              <groupId>org.apache.woden</groupId>
 
                              <artifactId>woden-impl-dom</artifactId>
 
                        </exclusion>
 
                        <exclusion>
 
                              <groupId>xerces</groupId>
 
                              <artifactId>xmlParserAPIs</artifactId>
 
                        </exclusion>
 
                        <exclusion>
 
                              <groupId>org.apache.woden</groupId>
 
                              <artifactId>woden-api</artifactId>
 
                        </exclusion>
 
                        <exclusion>
 
                              <groupId>xalan</groupId>
 
                              <artifactId>xalan</artifactId>
 
                        </exclusion>
 
                        <exclusion>
 
                              <groupId>xerces</groupId>
 
                              <artifactId>xercesImpl</artifactId>
 
                        </exclusion>
 
                        <exclusion>
 
                              <groupId>org.codehaus.woodstox</groupId>
 
                              <artifactId>wstx-asl</artifactId>
 
                        </exclusion>
 
                        <exclusion>
 
                              <groupId>javax.servlet</groupId>
 
                              <artifactId>servlet-api</artifactId>
 
                        </exclusion>
 
                        <exclusion>
 
                              <groupId>org.apache.geronimo.specs</groupId>
 
                              <artifactId>geronimo-stax-api_1.0_spec</artifactId>
 
                        </exclusion>
                  <exclusions>
<dependency>
....

Aplicación: Cerrar todas las ventanas abiertas con NTWind… (Close All Windows)

Windows 7 de March del 2010

1 Star2 Stars3 Stars4 Stars5 Stars (No Ratings Yet)
Loading ... Loading ...
Close All Windows

Close All Windows

Estaba buscando que me ayudara a cerrar todas las ventanas en Windows, ya que cuando salgo de mi trabajo y tengo mucha prisa, me molesta tener que cerrar ventana por ventana (se que se puede hacer apretando  la tecla de F4 pero también es una por una) y me encontré con esta página que se llama NtWind (desarrolla utilidades para Windows ), una de sus muchisimas aplicaciones  que tiene es una que cierra todas las ventanas abiertas (Close All Windows) y la verdad es que ya la probé y me gusto mucho ya que ahorra mucho tiempo en cerrar todas las ventanas  y lo mejor de todo es que no necesita instalación.

Download: Close All Windows.

1.- Se bajan el .ZIP

2.- Lo agregan a su barra de tareas (para un acceso más rápido)

3.- Listo!!, lo ejecutan cuando tengan prisa (flojera)jajajaj

Spring 2.5.5 and 2.5.6: What happened since the previous release

Spring 1 de March del 2010

1 Star2 Stars3 Stars4 Stars5 Stars (No Ratings Yet)
Loading ... Loading ...

Me encontré esta página que se llama xdepend y que realiza un reporte del análisis del los cambios que tiene Spring desde una versión anterior hasta la nueva versión que haya salido.

This page is a code analysis report about Spring auto-generated by XDepend.
In this report, you will find useful project metrics about the 2.5.6 release of Spring such as the most used types.
This report detailled also what has changed since the previous release 2.5.5 and also the evolution between abstractness and instability.

Ahora  ha echo el análisis entre la versión 2.5.5. con la versión 2.5.6 y que en su informe podemos encontrar:

  • Jars Metrics
  • Abstractness Versus Instability
  • What happened since the previous release
  • Types Metrics
  • etc.

Así que no estaría mal echarle un ojo, pera ver que les puede interesar.

MyJDB: Versión 1.1.0 beta saldrá el día 1 de Marzo

Base de datos, Javascript, Open Source 28 de February del 2010

1 Star2 Stars3 Stars4 Stars5 Stars (No Ratings Yet)
Loading ... Loading ...

Hoy se lanza un proyecto que es muy interesante y sobretodo muy innovador, y se trata de un base de datos basada en Javascript que se llama JavascriptDB. Hoy en día Javascript esta teniendo mucho desarrollo y no dudo que en un tiempo no muy largo se convierta en uno de los lenguajes más importantes y novedosos… aquí la página principal para que vayan probando.

* Relicenciamiento a GPL 3.
* Documentación interna completa y en Ingles, así como las variables que pasan del catalán al ingles para internacionalizar el proyecto.
* Reestructuración completa del código.
* Nuevo analizador sintactico del Select sobre un 40% más rápido.
* Tipado de datos de los campos de las tablas, lo que nos ayuda a evaluar correctamente números, cadenas y sobre todo fechas.
* El algoritmo para realizar JOIN entre dos tablas es alrededor de 640 veces más rápido.
* Se ha añadido el uso de between, el uso de parentesis, reconocimiento de ‘<=>’.
* Implementación de la clausula limit.
* Reconocimiento de is, is not, is null, is not null y unknown.
* Realización de un select con sólo contando el tiempo de la clausula where alrededor de un 40 veces más rápido.
* Evaluación de la clausula where alrededor de un 94% más rápido.
* La evaluación de una condición LIKE es alrededor de 8 veces más rápida.
* La clausula Order by es alrededor de 2 veces más rápido.

Exception axis2: com.ctc.wstx.exc.WstxEOFException: Unexpected EOF in prolog at [row,col {unknown-source}]: [1,0]

Java, Programación, Web Services 26 de February del 2010

1 Star2 Stars3 Stars4 Stars5 Stars (No Ratings Yet)
Loading ... Loading ...

Estaba creando un cliente con Acxist2 y es que no sabía por que me estaba dando esta exception,  chencando por Internet y sobre todo revidando las cabeceras (Headers) y con la confirmación de algunas páginas, me encontré que hay un poco de problemas de comunicación (SOAP) entre un servidor de web Services que esta en IIS y un cliente que esta en Axis2 1.4.1, después de darle muchas vueltas, y con un poco de ayuda, resolví esta exeption: de la siguiente manera:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
- OMException in getSOAPBuilder
 
org.apache.axiom.om.OMException: com.ctc.wstx.exc.WstxEOFException: Unexpected EOF in prolog
 
 at [row,col {unknown-source}]: [1,0]
      at org.apache.axiom.om.impl.builder.StAXOMBuilder.next(StAXOMBuilder.java:249)
      at org.apache.axiom.soap.impl.builder.StAXSOAPModelBuilder.getSOAPEnvelope(StAXSOAPModelBuilder.java:156)
      at org.apache.axiom.soap.impl.builder.StAXSOAPModelBuilder.<init>(StAXSOAPModelBuilder.java:105)
      at org.apache.axis2.builder.BuilderUtil.getSOAPBuilder(BuilderUtil.java:677)
      at org.apache.axis2.transport.TransportUtils.createDocumentElement(TransportUtils.java:182)
      at org.apache.axis2.transport.TransportUtils.createSOAPMessage(TransportUtils.java:112)
      at org.apache.axis2.transport.TransportUtils.createSOAPMessage(TransportUtils.java:88)
      at org.apache.axis2.description.OutInAxisOperationClient.handleResponse(OutInAxisOperation.java:353)
      at org.apache.axis2.description.OutInAxisOperationClient.send(OutInAxisOperation.java:416)
      at org.apache.axis2.description.OutInAxisOperationClient.executeImpl(OutInAxisOperation.java:228)
      at org.apache.axis2.client.OperationClient.execute(OperationClient.java:163)

Se puede solucionar cambiando las cabeceras (NUNCA HAY QUE TOCAS LAS CLASES AUTO GENERADAS), después de llamar al STUB:

1
2
Options options = stub._getServiceClient().getOptions();
options.setSoapVersionURI(SOAP11Constants.SOAP_ENVELOPE_NAMESPACE_URI);

claro, si estas usando SOAP1 de lo contrario sólo hay que cambiar la constante a SOAP2… y listo!!! con esto se quita la anterior exception….

Comunicación con IP Messenger en redes bloquedas o privadas

Mac, Software, Windows 21 de February del 2010

1 Star2 Stars3 Stars4 Stars5 Stars (1 votes, average: 5.00 out of 5)
Loading ... Loading ...

Hay veces que en nuestro trabajo o en cualquier  otro lugar donde tenemos  conexión a Internet  y lamentablemente tenemos bloqueado el msn, google talk, etc. y estamos acostumbrados a que nos contestes rápido y saber si esta en online la persona que buscamos,  púes para estos casos existe IP Messenger (en un trabajo que tuve lo usábamos para la comunicación interna) la verdad es que cumple su cometido:

  • No se necesita instalar nada
  • Es gratuito
  • Es multi plataforma
  • Se  puede cifrar los mensajes (es algo bueno)
  • Multi lenguajes.
  • etc.

La verdad es que tiene muchas cosas muy buenas,  yo lo probé utilizando Windows (máquina virtual con parallels) y  Mac OS y estos con los pasos a seguir…

1.- Descargamos la aplicación de aquí (en mi caso para mac y la de windows).

2.- Abrimos el .exe (windows)  ejecutamos el .dmg (mac)

3.- Buscamos la IP de Windows

ip de windows

ip de windows

4.- Agregamos la IP de Windows al IP Messenger de Mac, yendo  a ipmessenger->preferences

agregar ip de windows

agregar ip de windows

5.- Hacemos un Refresh a IP Messenger después de agregar la IP de Windows y nos debe aparecer el usuarios de windows (IP Messenger también tiene que estar abierto en Windows)

mostrar usuarios

mostrar usuarios

6.- Seleccionamos al usuario con el que queremos comunicarnos (en este caso el usuario se llama “propietario“  en Windows) y mandamos un mensaje de prueba de MAC a Windows . (nos debe aparecer el mensaje instantáneamente, esto se puedo configurar )

7.- Si lo recibimos (esta todo OK) y mandamos uno de prueba de Windows a MAC, para comprobar la comunicación.

mensaje de mac a windows

8.- Una vez recibido, ya podremos comunicarnos como si estuviéramos chateando… jajajaj así que recomiendo que lo prueben…

mensaje de prueba de windows a mac

mensaje de prueba de windows a mac

Un Ejemplo de un proxi con AOP(Aspect) y Spring Framework

Java, Programación, Spring 14 de February del 2010

1 Star2 Stars3 Stars4 Stars5 Stars (1 votes, average: 5.00 out of 5)
Loading ... Loading ...

Jajajaja la verdad es que me doy cuenta que no se programar mucho, y hay veces que pongo ejemplos de este tipo, donde las bases se supone que las tengo bien claras… jajajajaj en fin, leyendo un poco de varias cosas y con las ideas de nuevos temas que me dejan de tarea… púes me hice un ejemplo de Aspect (Programación Orientada a Aspectos) con Spring Framework, y bueno además me ayudo mucho en que es verdad que debemos de tomar muy en cuenta la forma de estructurar el proyecto, las clases, los patrones que vamos a utilizar, etc. etc. y muchas cosas que a estas alturas me falta mucho por aprender,  pero sin más rollos aburridos… aquí les dejo un ejemplo:

Este ejemplo también lo hice con JAVA 1.4, pero la verdad es que mejor les voy a poder un ejemplo utilizando Java 5:
1.- Estamos utilizando en este caso las clases que hicimos en otro ejemplo con Hessian.
2.- Aquí vamos a hacer que el Aspecto se comporte como un proxi (esto quiere decir que cada vez que se llama a un recurso que le digamos se ejecutara nuestro interceptor)
3.- Así que sólo hay que agregar las cabeceras en el application-configuration.xml de nuestra aplicación.

1
2
3
4
5
6
<beans xmlns="http://www.springframework.org/schema/beans"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xmlns:aop="http://www.springframework.org/schema/aop"
       xsi:schemaLocation="http://www.springframework.org/schema/beans
       http://www.springframework.org/schema/beans/spring-beans-2.5.xsd
       http://www.springframework.org/schema/aop

4.- y además declaramos nuestros dos beans,
1) userServices: que es nuestra interfaz
2) requestInjector: que es la clase que vamos a utilizar como nuestro interceptor( proxi)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xmlns:aop="http://www.springframework.org/schema/aop"
       xsi:schemaLocation="http://www.springframework.org/schema/beans
       http://www.springframework.org/schema/beans/spring-beans-2.5.xsd
       http://www.springframework.org/schema/aop
       http://www.springframework.org/schema/aop/spring-aop-2.5.xsd">
   <!--
    To use @AspectJ aspects in a Spring configuration you need to enable Spring support for configuring Spring AOP based on @AspectJ aspects, and autoproxying beans based on whether or not they are advised by those aspects. By autoproxying we mean that if Spring determines that a bean is advised by one or more aspects, it will automatically generate a proxy for that bean to intercept method invocations and ensure that advice is executed as needed.  
    -->
    <aop:aspectj-autoproxy />
    <bean id="requestInjector" class="com.aspect.interceptor.ResquetInterceptor" />
    <bean id="userServices" class="com.serunix.services.impl.UserServicesImpl" />
</beans>

5.- y por último creamos nuestro Interceptor.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package com.aspect.interceptor;
 
import org.apache.log4j.Logger;
import org.aspectj.lang.JoinPoint;
import org.aspectj.lang.annotation.Aspect;
import org.aspectj.lang.annotation.Before;
 
/**
 *
 * @author sergio
 */
@Aspect
public class ResquetInterceptor {
 
    private static final Logger log = Logger.getLogger(ResquetInterceptor.class);
 
   /** Es quí donde le decimos que se ejecute, que casa vez que se ejecute una clase que se encuentra en este paquete
   *   las diferente formas en que se puede ejecutar  las pueden consultar en la documentación. :)
   /
    @Before("execution(* com.serunix..*.*(..))")
    public void before(JoinPoint thisJoinPoint) {
        log.info("Before [" + thisJoinPoint.toShortString() + "]");
    }
}

6.- Y bueno eso es todo, creamos nuestro Test con JUnit o haciendo una clase main o como quieran, y les tiene que imprimir el info que tenemos dentro del método de before()

Pero para que nos puede servir esto:
1.- Para saber cuantas veces se ejecuta un recurso(estadísticas)
2.- Insertar en la DB
3.- Cambiar rutas, configuraciones, etc. etc.

lo importante es saber que debemos implementarlo si y sólo sí, es necesario ya que nos pega en el rendimiento de la aplicación.

Serunix.com les desea un “Feliz día del Amor y la Amistad” (Happy Valentine’s Day)

Personal 14 de February del 2010

1 Star2 Stars3 Stars4 Stars5 Stars (1 votes, average: 5.00 out of 5)
Loading ... Loading ...

Que se la pasen super bien este día… y que ojala  no estén leyendo este post hoy 14 de Febrero por que eso quiere decir que no estan haciendo nada bueno… jajajajaj Feliz día del Amor y la Amistad

Feliz día del amor y la amistad

Feliz día del amor y la amistad

G2ZXWXZKCVA3

Open Source: Nueva versión de Rails 3.0 Beta release

Open Source, RubyOnRails 10 de February del 2010

1 Star2 Stars3 Stars4 Stars5 Stars (1 votes, average: 5.00 out of 5)
Loading ... Loading ...

A los seguidores y a los que queremos ser seguidores y ojala futuros programadores, púes se ha liberado la nueva versión de Rails 3.0 y las características de mejoras, se pueden consultar  aquí:

* Brand new router with an emphasis on RESTful declarations
* New Action Mailer API modeled after Action Controller (now without the agonizing pain of sending multipart messages!)
* New Active Record chainable query language built on top of relational algebra
* Unobtrusive JavaScript helpers with drivers for Prototype, jQuery, and more coming (end of inline JS)
* Explicit dependency management with Bundler

Google Buzz

Google, Youtube 9 de February del 2010

1 Star2 Stars3 Stars4 Stars5 Stars (1 votes, average: 4.00 out of 5)
Loading ... Loading ...
YouTube Preview Image
http://www.wikio.es BlogESfera - Directorio de Blogs Hispanos blogarama - the blog directory Mi Ping en TotalPing.com
Internet blogs Programming Blogs - Blog Catalog Blog Directory Internet blogs Buzzear (ES) Publicidad por tu blog con Boosterblog directorio de blogs
Agregar Web - Directorio de webs Directorio webs Directorio Web