martes, 19 de noviembre de 2013

Import bean Spring vía xml

En Spring existen dos formas de importar beans; vía anotaciones o por xml.


<import resource="classpath:META-INF/clients-binding-context.xml" />


La documentación se encuentra acá

Y vía stackoverflow.com puedes revisar el siguiente link

viernes, 15 de noviembre de 2013

Inyección de dependencias entre dos bean en Spring.

Deje este ejemplo por aquí.
La fuernte es:

stackoverflow.com

<beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:jaxws="http://cxf.apache.org/jaxws"
 xsi:schemaLocation="
 http://www.springframework.org/schema/beans 
 http://www.springframework.org/schema/beans/spring-beans.xsd">
    
    <bean id="permisosSwagger" class="com.xx.config.swagger.PermisosSwagger">
  <property name="mapPermisos">
   <bean id="map" class="java.util.HashMap" scope="prototype" >
       <constructor-arg>
           <map key-type="java.lang.String" value-type="com.xx.config.swagger.MapClienteServicio">
               <entry key="listaEmpresas" value-ref="clientesList" />
               <entry key="validarEmpresa" value-ref="clientesCheck" />
           </map>
       </constructor-arg>
   </bean>
  </property>
 </bean>

 <bean id="clientesList" class="com.xx.config.swagger.MapClienteServicio">
  <property name="clientes">
   <map>  
    <entry value-ref="swaggerCliente2">
     <key>
      <bean
       class="org.springframework.beans.factory.config.PropertyPathFactoryBean">
       <property name="targetObject" ref="swaggerCliente2" />
       <property name="propertyPath" value="token" />
      </bean>
     </key>
    </entry>
    <entry value-ref="swaggerCliente1">
     <key>
      <bean
       class="org.springframework.beans.factory.config.PropertyPathFactoryBean">
       <property name="targetObject" ref="swaggerCliente1" />
       <property name="propertyPath" value="token" />
      </bean>
     </key>
    </entry>

   </map>
  </property>
 </bean>
 
 <bean id="clientesCheck" class="com.xx.config.swagger.MapClienteServicio">
 <property name="clientes">
  <map>
  
   <entry value-ref="swaggerCliente2">
    <key>
     <bean
      class="org.springframework.beans.factory.config.PropertyPathFactoryBean">
      <property name="targetObject" ref="swaggerCliente2" />
      <property name="propertyPath" value="token" />
     </bean>
    </key>    
   </entry>
  </map>
 </property>
</bean>
 
  <bean id="swaggerCliente1" class="com.xx.config.swagger.ClienteToken">
   <property name="cliente" value="udla"/>
   <property name="token" value="123456"/>   
 </bean>
 
  <bean id="swaggerCliente2" class="com.xx.config.swagger.ClienteToken">
   <property name="cliente" value="tbj"/>
   <property name="token" value="012345"/>   
 </bean>
    
    </beans>
    

miércoles, 25 de septiembre de 2013

java.lang.NoSuchMethodError: org.apache.ws.commons.schema.XmlSchemaForm.getValue()

Hace muchos años que no escribo, pero pretendo ir volviendo con post cortos como ayuda memoria.

A lo nuestro, estoy trabajando en un proyecto utilizando CXF y nos encontramos con el siguiente error:

java.lang.NoSuchMethodError: org.apache.ws.commons.schema.XmlSchemaForm.getValue()

Estábamos utilizando la versión 2.3.0, googleando se supone que con la versión 2.4.2 el problema se solucionaba, en nuestro caso nos quedamos con la 2.7.6 y problema resuelto.

El pom.xml quedaría algo así:

<dependency>
<groupid>org.apache.cxf</groupid>
<artifactid>cxf-rt-frontend-jaxws</artifactid>
<version>2.7.6</version>
</dependency>

Saludos