2 Replies Latest reply on Dec 4, 2007 11:36 AM by elysch

    JBoss AOP ear and maven-jbossaop-plugin

    elysch

      Hi.

      (Sorry for such a long message)

      I've been trying for the past few weeks now to add some aspects to my application with no success.

      What I want to do, as my first step, to add some interceptors to add functionality to already existing classes.

      My questions are:
      a) I managed to run the inJbos example (great one, by the way), and it wasn't clear if it's possible to aop the classes of an ear file with a .aop file in it, or if it must wave the classes at runtime. What I mean is: Can I run apoc with the intercepted classes before I pack my .aop file?

      b) If I modify some entity classes, how should hibernate configuration files get modified? For instance, if I add a new attribute that should be referred by a database field? (I'm not sure about how to add completely new functionalities to classes)

      c) I managed to create a maven2 structure in order to have my bpm2struts, spring, hibernate, etc added with an “aop� project. I hope someone can help me

      What should happen with the example, is that some messages should get printed on the adviced constructor. I could send the sources if needed.

      When I deploy the project, nothing get's transformed. I'm sure the jboss-aop.xml is being parsed by JBoss.4.2.1.GA server because I didn't put all the “ org.andromda.samples.aop.sades.domain.SolicitudProfesorGrupoDaoImpl� name but only the class name (SolicitudProfesorGrupoDaoImpl) and it complained.

      Two days ago I discovered an error message on compile, and I can't figure out how to fix it:

      [ERROR] java.io.FileNotFoundException: C:\AplicacionTesis\sades-aop\null (El sistema no puede hallar el archivo especificado)
      [ERROR] at java.io.FileInputStream.open(Native Method)
      [ERROR] at java.io.FileInputStream.<init>(Unknown Source)
      [ERROR] at java.io.FileInputStream.<init>(Unknown Source)
      [ERROR] at sun.net.www.protocol.file.FileURLConnection.connect(Unknown Source)
      [ERROR] at sun.net.www.protocol.file.FileURLConnection.getInputStream(Unknown Source)
      [ERROR] at java.net.URL.openStream(Unknown Source)
      [ERROR] at org.jboss.aop.AspectXmlLoader.loadURL(AspectXmlLoader.java:1276)
      [ERROR] at org.jboss.aop.AspectXmlLoader.deploy(AspectXmlLoader.java:1208)
      [ERROR] at org.jboss.aop.AspectXmlLoader.deployXML(AspectXmlLoader.java:1234)
      [ERROR] at org.jboss.aop.AspectXmlLoader.deployXML(AspectXmlLoader.java:1219)
      [ERROR] at org.jboss.aop.Deployment.deployXmlFile(Deployment.java:179)
      [ERROR] at org.jboss.aop.Deployment.preconfigThroughSystemProperty(Deployment.java:161)
      [ERROR] at org.jboss.aop.Deployment.deploy(Deployment.java:51)
      [ERROR] at org.jboss.aop.AspectManager$1.run(AspectManager.java:281)
      [ERROR] at java.security.AccessController.doPrivileged(Native Method)
      [ERROR] at org.jboss.aop.AspectManager.instance(AspectManager.java:207)
      [ERROR] at org.jboss.aop.AspectManager.instance(AspectManager.java:200)
      [ERROR] at org.jboss.aop.standalone.Compiler.compile(Compiler.java:196)
      [ERROR] at org.jboss.aop.standalone.Compiler.main(Compiler.java:90)
      [ERROR] java.lang.RuntimeException: [error] failed to load aop path: null
      [ERROR] at org.jboss.aop.Deployment.preconfigThroughSystemProperty(Deployment.java:170)
      [ERROR] at org.jboss.aop.Deployment.deploy(Deployment.java:51)
      [ERROR] at org.jboss.aop.AspectManager$1.run(AspectManager.java:281)
      [ERROR] at java.security.AccessController.doPrivileged(Native Method)
      [ERROR] at org.jboss.aop.AspectManager.instance(AspectManager.java:207)
      [ERROR] at org.jboss.aop.AspectManager.instance(AspectManager.java:200)
      [ERROR] at org.jboss.aop.standalone.Compiler.compile(Compiler.java:196)
      [ERROR] at org.jboss.aop.standalone.Compiler.main(Compiler.java:90)
      [ERROR] Caused by: java.io.FileNotFoundException: C:\AplicacionTesis\sades-aop\null (El sistema no puede hallar el archivo especificado)
      [ERROR] at java.io.FileInputStream.open(Native Method)
      [ERROR] at java.io.FileInputStream.<init>(Unknown Source)
      [ERROR] at java.io.FileInputStream.<init>(Unknown Source)
      [ERROR] at sun.net.www.protocol.file.FileURLConnection.connect(Unknown Source)
      [ERROR] at sun.net.www.protocol.file.FileURLConnection.getInputStream(Unknown Source)
      [ERROR] at java.net.URL.openStream(Unknown Source)
      [ERROR] at org.jboss.aop.AspectXmlLoader.loadURL(AspectXmlLoader.java:1276)
      [ERROR] at org.jboss.aop.AspectXmlLoader.deploy(AspectXmlLoader.java:1208)
      [ERROR] at org.jboss.aop.AspectXmlLoader.deployXML(AspectXmlLoader.java:1234)
      [ERROR] at org.jboss.aop.AspectXmlLoader.deployXML(AspectXmlLoader.java:1219)
      [ERROR] at org.jboss.aop.Deployment.deployXmlFile(Deployment.java:179)
      [ERROR] at org.jboss.aop.Deployment.preconfigThroughSystemProperty(Deployment.java:161)
      [ERROR] ... 7 more



      The relevant parts of the principal pom.xml:

      ...
       </dependencyManagement>
      ...
      <!-- ESL!!! AOP --> <dependency>
       <groupId>org.jboss.maven.plugins</groupId>
       <artifactId>maven-jbossaop-plugin</artifactId>
       <version>1.0-SNAPSHOT</version>
       </dependency>
       </dependencies>
      ...
       </dependencyManagement>
      ...
       <modules>
       <module>mda</module>
       <module>common</module>
       <module>core</module>
       <module>web</module>
       <module>aop</module> <!-- this one was added -->
       <module>app</module>
       </modules>
      ...
       <repositories>
      ...
      <!-- ESL!!! AOP --> <repository>
       <id>snapshots.jboss.org</id>
       <name>JBoss Maven Snapshot Repository</name>
       <url>http://snapshots.jboss.org/maven2</url>
       </repository>
       </repositories>
      ...


      And my aop module pom.xml is:
      ...
       <dependencies>
      ...
      <!-- ESL!!! AOP --> <dependency>
       <groupId>org.jboss.maven.plugins</groupId>
       <artifactId>maven-jbossaop-plugin</artifactId>
       </dependency>
       </dependencies>
       <build>
       <finalName>${application.id}-aop-${pom.version}</finalName>
       <plugins>
       <plugin>
       <groupId>org.andromda.maven.plugins</groupId>
       <artifactId>andromda-multi-source-plugin</artifactId>
       </plugin>
      <!-- ESL!!! AOP --> <plugin>
       <groupId>org.jboss.maven.plugins</groupId>
       <artifactId>maven-jbossaop-plugin</artifactId>
       <version>1.0-SNAPSHOT</version>
       <executions>
       <execution>
       <id>compile</id>
       <configuration>
       <aoppaths>
       <aoppath path="src/main/resources/META-INF/jboss-aop.xml"/>
       </aoppaths>
       <includes>
       <include>../../../core/target/classes/org/andromda/samples/aop/sades/domain/SolicitudProfesorGrupoDaoImpl.class</include>
       </includes>
       </configuration>
       <goals>
       <goal>compile</goal>
       </goals>
       </execution>
       </executions>
       </plugin>
       </plugins>
       </build>
      </project>


      The jboss-aop.xml file:

      <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
      <aop>
      
       <introduction class="org.andromda.samples.aop.sades.domain.SolicitudProfesorGrupoDaoImpl">
       <mixin>
       <interfaces>
       org.andromda.samples.aop.sades.useCaseSlices.specific.solicitudProfesorGrupo.IAspectoUnoSolicitudProfesorGrupo
       </interfaces>
       <class>org.andromda.samples.aop.sades.useCaseSlices.specific.solicitudProfesorGrupo.MixinAspectoUnoSolicitudProfesorGrupo</class>
       <construction>new org.andromda.samples.aop.sades.useCaseSlices.specific.solicitudProfesorGrupo.MixinAspectoUnoSolicitudProfesorGrupo(this)</construction>
       </mixin>
       </introduction>
      
      </aop>


      My app pom.xml (is the one that builds the final ear)

      ...
       <dependencies>
      ..
       <!-- ESL!!! AOP --> <dependency>
       <groupId>${pom.groupId}</groupId>
       <artifactId>sades-aop</artifactId>
       <version>${pom.version}</version>
       </dependency>
      ...
       </dependencies>
      ...
       <plugins>
       <plugin>
       <groupId>org.apache.maven.plugins</groupId>
       <artifactId>maven-ear-plugin</artifactId>
       <version>2.1</version>
       <configuration>
       <includes>**/*.xml</includes>
       <excludes>**/jboss-app.xml</excludes>
       <version>1.4</version>
       <modules>
       <!-- ESL!!! AOP --> <javaModule>
       <groupId>${pom.groupId}</groupId>
       <artifactId>sades-aop</artifactId>
       <bundleFileName>${application.id}-aop-${pom.version}.aop</bundleFileName>
       <includeInApplicationXml>true</includeInApplicationXml>
       </javaModule>
      ...



      This way I obtain an ear file with the correct structure (as far as I can tell):

      sades-1.0-SNAPSHOT.ear
      META-INF
      application.xml
      ...
      sades-aop-1.0-SNAPSHOT.aop
      META-INF
      jboss-aop.xml
      ...


      And also my regular jar files, and the war file.


      Thank you all in advance.

        • 1. Re: JBoss AOP ear and maven-jbossaop-plugin
          elysch

          The identation of the ear structure weren't displayed in my last post, sorry. Here it goes again with some more info:

          sades-1.0-SNAPSHOT.ear
           META-INF
           application.xml
          ...
           jboss-aop-2.0.0.alpha2.jar
          ...
           sades-aop-1.0-SNAPSHOT.aop
           META-INF
           jboss-aop.xml
          ...
           sades-common-1.0-SNAPSHOT.jar
          ...
           sades-corfe-1.0-SNAPSHOT.jar
          ...
           sades-web-1.0-SNAPSHOT.war
          ...



          One more question. I guess I should add jboss-aop-2.0.0.alpha2 to my JBoss.4.2.1.GA server, instead of the one that comes with it. Right?

          • 2. Re: JBoss AOP ear and maven-jbossaop-plugin
            elysch

            I guess I didn't provide enough information in my previous post.

            Maybe this can help someone to help me find where my mistake is.

            My Interface contains:

            package org.andromda.samples.aop.sades.useCaseSlices.specific.solicitudProfesorGrupo;
            
            interface IAspectoUnoSolicitudProfesorGrupo { void metodoNuevoUno(java.lang.String parametro); }
            


            My Mixing class contains:

            package org.andromda.samples.aop.sades.useCaseSlices.specific.solicitudProfesorGrupo;
            /*
            * Ely
            */
            import org.andromda.samples.aop.sades.domain.SolicitudProfesorGrupoDaoImpl;
            /**
             *
             * @author Yo
             * @version 0.1
             */
            public class MixinAspectoUnoSolicitudProfesorGrupo implements IAspectoUnoSolicitudProfesorGrupo
            {
             SolicitudProfesorGrupoDaoImpl solicitud;
            
             public MixinAspectoUnoSolicitudProfesorGrupo(SolicitudProfesorGrupoDaoImpl solicitud)
             {
             super();
             this.solicitud = solicitud;
             System.out.println("------ADENTRO----- CREATE ");
             System.out.println("------ADENTRO----- CREATE ");
             System.out.println("------ADENTRO----- CREATE ");
             System.out.println("------ADENTRO----- CREATE ");
             System.out.println("------ADENTRO----- CREATE ");
             System.out.println("------ADENTRO----- CREATE ");
             System.out.println("------ADENTRO----- CREATE ");
             System.out.println("------ADENTRO----- CREATE ");
             System.out.println("------ADENTRO----- CREATE ");
             }
            
             public void metodoNuevoUno(java.lang.String parametro)
             {
             String a = "metodoVacioUno con el param: " + parametro;
             System.out.println("------ADENTRO-----> " + a);
             solicitud.stuff = solicitud.stuff + " " + a;
             }
            }



            My adviced class contains:
            public class SolicitudProfesorGrupoDaoImpl
             extends org.andromda.samples.aop.sades.domain.SolicitudProfesorGrupoDaoBase
            {
            
             public String stuff; // agregado para probar AOP
            
             public SolicitudProfesorGrupoDaoImpl()
             {
             super();
             System.out.println("------ADENTRO----- CREATE ORIGINAL");
             System.out.println("------ADENTRO----- CREATE ORIGINAL");
             System.out.println("------ADENTRO----- CREATE ORIGINAL");
             System.out.println("------ADENTRO----- CREATE ORIGINAL");
             System.out.println("------ADENTRO----- CREATE ORIGINAL");
             System.out.println("------ADENTRO----- CREATE ORIGINAL");
             System.out.println("------ADENTRO----- CREATE ORIGINAL");
             System.out.println("------ADENTRO----- CREATE ORIGINAL");
             }
            ...


            The messages that I thought where relevant in the JBoss console on startup:

            10:16:11,734 INFO [QuartzResourceAdapter] start quartz!!!
            10:16:11,828 ERROR [STDERR] The member PoolingConnectionProvider in org.quartz.utils.PoolingConnectionProvider uses the type org.apache.commons.dbcp.BasicDataSource which cannot be found on the classpath. Weaving is therefore skipped for this particular member
            10:16:11,843 ERROR [STDERR] The member PoolingConnectionProvider in org.quartz.utils.PoolingConnectionProvider uses the type org.apache.commons.dbcp.BasicDataSource which cannot be found on the classpath. Weaving is therefore skipped for this particular member
            10:16:12,281 INFO [SimpleThreadPool] Job execution threads will use class loader of thread: main
            ...
            10:16:50,078 INFO [EARDeployer] Started J2EE application: file:/C:/jboss-4.2.1.GA/server/default/deploy/sades-1.0-SNAPSHOT.ear
            10:16:50,265 INFO [Http11Protocol] Arrancando Coyote HTTP/1.1 en puerto http-127.0.0.1-8080
            10:16:50,390 INFO [AjpProtocol] Starting Coyote AJP/1.3 on ajp-127.0.0.1-8009
            10:16:50,406 INFO [Server] JBoss (MX MicroKernel) [4.2.1.GA (build: SVNTag=JBoss_4_2_1_GA date=200707131605)] Started in 1m:38s:453ms


            And the errors that appear in the JBoss console when I try to access the page are:

            10:22:08,734 INFO [TilesRequestProcessor] Tiles definition factory found for request processor ''.
            10:22:12,015 INFO [CollectionFactory] Commons Collections 3.x available
            10:22:12,625 INFO [XmlBeanDefinitionReader] Loading XML bean definitions from URL [jar:file:/C:/jboss-4.2.1.GA/server/default/tmp/deploy/tmp42974sades-1.0-SNAPSHOT.ear-contents/sades-core-1.0-SNAPSHOT.jar!/beanRefFactory.xml]
            10:22:13,078 INFO [ClassPathXmlApplicationContext] Bean factory for application context [org.springframework.context.support.ClassPathXmlApplicationContext;hashCode=7749777]: org.springframework.beans.factory.support.DefaultListableBeanFactory defining beans [beanRefFactory,beanRefFactoryEjb]; root of BeanFactory hierarchy
            10:22:13,203 INFO [ClassPathXmlApplicationContext] 2 beans defined in application context [org.springframework.context.support.ClassPathXmlApplicationContext;hashCode=7749777]
            10:22:13,281 INFO [ClassPathXmlApplicationContext] Unable to locate MessageSource with name 'messageSource': using default [org.springframework.context.support.DelegatingMessageSource@19ed60e]
            10:22:13,296 INFO [ClassPathXmlApplicationContext] Unable to locate ApplicationEventMulticaster with name 'applicationEventMulticaster': using default [org.springframework.context.event.SimpleApplicationEventMulticaster@1637251]
            10:22:13,296 INFO [DefaultListableBeanFactory] Pre-instantiating singletons in
            factory [org.springframework.beans.factory.support.DefaultListableBeanFactory de
            fining beans [beanRefFactory,beanRefFactoryEjb]; root of BeanFactory hierarchy]
            10:22:13,953 INFO [XmlBeanDefinitionReader] Loading XML bean definitions from class path resource [applicationContext.xml]
            10:22:16,218 INFO [DefaultListableBeanFactory] Destroying singletons in factory
             {org.springframework.beans.factory.support.DefaultListableBeanFactory definingbeans [beanRefFactory,beanRefFactoryEjb]; root of BeanFactory hierarchy}
            10:22:16,218 ERROR [STDERR] org.springframework.beans.factory.access.BootstrapException: Unable to initialize group definition. Group resource name [classpath*:beanRefFactory.xml], factory key [beanRefFactoryEjb]; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'beanRefFactory' defined in URL [jar:file:/C:/jboss-4.2.1.GA/server/default/tmp/deploy/tmp42974sades-1.0-SNAPSHOT.ear-contents/sades-core-1.0-SNAPSHOT.jar!/beanRefFactory.xml]: Instantiation of bean failed; nested exception is org.springframework.beans.FatalBeanException: Could not instantiate class [org.springframework.context.support.ClassPathXmlApplicationContext]; constructor threw exception; nested exception is org.springframework.beans.factory.BeanDefinitionStoreException: Error registering bean with name 'solicitudProfesorGrupoDao' defined in class path resource [applicationContext.xml]: Could not parse inner bean definition; nested exception is org.springframework.beans.factory.BeanDefinitionStoreException: Error registering bean with name '' defined in class path resource [applicationContext.xml]: Bean class [org.andromda.samples.aop.sades.domain.SolicitudProfesorGrupoDaoImpl] not found; nested exception is java.lang.ClassNotFoundException: org.andromda.samples.aop.sades.domain.SolicitudProfesorGrupoDaoImpl
            10:22:16,234 ERROR [STDERR] org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'beanRefFactory' defined in URL [jar:file:/C:/jboss-4.2.1.GA/server/default/tmp/deploy/tmp42974sades-1.0-SNAPSHOT.ear-contents/sades-core-1.0-SNAPSHOT.jar!/beanRefFactory.xml]: Instantiation of bean failed; nested exception is org.springframework.beans.FatalBeanException: Could not in stantiate class [org.springframework.context.support.ClassPathXmlApplicationContext]; constructor threw exception; nested exception is org.springframework.beans.factory.BeanDefinitionStoreException: Error registering bean with name 'solicitudProfesorGrupoDao' defined in class path resource [applicationContext.xml]: Could not parse inner bean definition; nested exception is org.springframework.beans.factory.BeanDefinitionStoreException: Error registering bean with name '' defined in class path resource [applicationContext.xml]: Bean class [org.andromda.samples.aop.sades.domain.SolicitudProfesorGrupoDaoImpl] not found; nested exception is java.lang.ClassNotFoundException: org.andromda.samples.aop.sades.domain.SolicitudProfesorGrupoDaoImpl
            10:22:16,234 ERROR [STDERR] org.springframework.beans.FatalBeanException: Could not instantiate class [org.springframework.context.support.ClassPathXmlApplicati onContext]; constructor threw exception; nested exception is org.springframework.beans.factory.BeanDefinitionStoreException: Error registering bean with name 's olicitudProfesorGrupoDao' defined in class path resource [applicationContext.xml]: Could not parse inner bean definition; nested exception is org.springframework.beans.factory.BeanDefinitionStoreException: Error registering bean with name '' defined in class path resource [applicationContext.xml]: Bean class [org.andromda.samples.aop.sades.domain.SolicitudProfesorGrupoDaoImpl] not found; nested exception is java.lang.ClassNotFoundException: org.andromda.samples.aop.sades.domain.SolicitudProfesorGrupoDaoImpl
            10:22:16,250 ERROR [STDERR] org.springframework.beans.factory.BeanDefinitionStoreException: Error registering bean with name 'solicitudProfesorGrupoDao' defined in class path resource [applicationContext.xml]: Could not parse inner bean definition; nested exception is org.springframework.beans.factory.BeanDefinitionStoreException: Error registering bean with name '' defined in class path resource [applicationContext.xml]: Bean class [org.andromda.samples.aop.sades.domain.SolicitudProfesorGrupoDaoImpl] not found; nested exception is java.lang.ClassNotFoundException: org.andromda.samples.aop.sades.domain.SolicitudProfesorGrupoDaoImpl
            10:22:16,250 ERROR [STDERR] org.springframework.beans.factory.BeanDefinitionStoreException: Error registering bean with name '' defined in class path resource [applicationContext.xml]: Bean class [org.andromda.samples.aop.sades.domain.SolicitudProfesorGrupoDaoImpl] not found; nested exception is java.lang.ClassNotFoundException: org.andromda.samples.aop.sades.domain.SolicitudProfesorGrupoDaoImpl
            10:22:16,250 ERROR [STDERR] java.lang.ClassNotFoundException: org.andromda.samples.aop.sades.domain.SolicitudProfesorGrupoDaoImpl
            10:22:16,250 ERROR [STDERR] at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1358)
            10:22:16,250 ERROR [STDERR] at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1204)
            10:22:16,250 ERROR [STDERR] at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:319)
            10:22:16,265 ERROR [STDERR] at java.lang.Class.forName0(Native Method)
            10:22:16,265 ERROR [STDERR] at java.lang.Class.forName(Class.java:247)
            10:22:16,265 ERROR [STDERR] at org.springframework.util.ClassUtils.forName(ClassUtils.java:109)
            10:22:16,265 ERROR [STDERR] at org.springframework.beans.factory.support.BeanDefinitionReaderUtils.createBeanDefinition(BeanDefinitionReaderUtils.java:65)
            10:22:16,265 ERROR [STDERR] at org.springframework.beans.factory.xml.DefaultXmlBeanDefinitionParser.parseBeanDefinitionElement(DefaultXmlBeanDefinitionParser.java:466)
            10:22:16,265 ERROR [STDERR] at org.springframework.beans.factory.xml.DefaultXmlBeanDefinitionParser.parseBeanDefinitionElement(DefaultXmlBeanDefinitionParser.java:432)
            10:22:16,265 ERROR [STDERR] at org.springframework.beans.factory.xml.DefaultXmlBeanDefinitionParser.parsePropertySubElement(DefaultXmlBeanDefinitionParser.java:795)
            10:22:16,265 ERROR [STDERR] at org.springframework.beans.factory.xml.DefaultXmlBeanDefinitionParser.parsePropertyValue(DefaultXmlBeanDefinitionParser.java:784)
            10:22:16,265 ERROR [STDERR] at org.springframework.beans.factory.xml.DefaultXmlBeanDefinitionParser.parsePropertyElement(DefaultXmlBeanDefinitionParser.java:722)
            10:22:16,265 ERROR [STDERR] at org.springframework.beans.factory.xml.DefaultXmlBeanDefinitionParser.parsePropertyElements(DefaultXmlBeanDefinitionParser.java:621)
            10:22:16,265 ERROR [STDERR] at org.springframework.beans.factory.xml.DefaultXmlBeanDefinitionParser.parseBeanDefinitionElement(DefaultXmlBeanDefinitionParser.java:464)
            10:22:16,265 ERROR [STDERR] at org.springframework.beans.factory.xml.DefaultXmlBeanDefinitionParser.parseBeanDefinitionElement(DefaultXmlBeanDefinitionParser.java:432)
            10:22:16,281 ERROR [STDERR] at org.springframework.beans.factory.xml.DefaultXmlBeanDefinitionParser.parseBeanDefinitions(DefaultXmlBeanDefinitionParser.java:347)
            10:22:16,281 ERROR [STDERR] at org.springframework.beans.factory.xml.DefaultXmlBeanDefinitionParser.registerBeanDefinitions(DefaultXmlBeanDefinitionParser.java:197)
            10:22:16,281 ERROR [STDERR] at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.registerBeanDefinitions(XmlBeanDefinitionReader.java:295)
            10:22:16,281 ERROR [STDERR] at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.doLoadBeanDefinitions(XmlBeanDefinitionReader.java:223)
            10:22:16,281 ERROR [STDERR] at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:173)
            10:22:16,281 ERROR [STDERR] at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:148)
            10:22:16,281 ERROR [STDERR] at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java128)
            10:22:16,281 ERROR [STDERR] at org.springframework.beans.factory.support.Abs
            tractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:144)
            10:22:16,281 ERROR [STDERR] at org.springframework.context.support.AbstractXmlApplicationContext.loadBeanDefinitions(AbstractXmlApplicationContext.java:113)
            
            10:22:16,281 ERROR [STDERR] at org.springframework.context.support.AbstractXmlApplicationContext.loadBeanDefinitions(AbstractXmlApplicationContext.java:81)
            10:22:16,281 ERROR [STDERR] at org.springframework.context.support.AbstractRefreshableApplicationContext.refreshBeanFactory(AbstractRefreshableApplicationContext.java:89)
            10:22:16,281 ERROR [STDERR] at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:262)
            10:22:16,296 ERROR [STDERR] at org.springframework.context.support.ClassPathXmlApplicationContext.<init>(ClassPathXmlApplicationContext.java:87)
            10:22:16,296 ERROR [STDERR] at org.springframework.context.support.ClassPathXmlApplicationContext.<init>(ClassPathXmlApplicationContext.java:72)
            10:22:16,296 ERROR [STDERR] at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
            10:22:16,296 ERROR [STDERR] at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
            10:22:16,296 ERROR [STDERR] at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
            10:22:16,296 ERROR [STDERR] at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
            10:22:16,296 ERROR [STDERR] at org.springframework.beans.BeanUtils.instantiateClass(BeanUtils.java:172)
            10:22:16,296 ERROR [STDERR] at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:78)
            10:22:16,296 ERROR [STDERR] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireConstructor(AbstractAutowireCapableBeanFactory.java:703)
            10:22:16,296 ERROR [STDERR] at org.springframework.beans.factory.support.Abs
            tractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:358)
            10:22:16,296 ERROR [STDERR] at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:233)
            10:22:16,296 ERROR [STDERR] at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:145)
            10:22:16,296 ERROR [STDERR] at org.springframework.beans.factory.support.Def
            aultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:283)
            10:22:16,312 ERROR [STDERR] at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:313)
            10:22:16,312 ERROR [STDERR] at org.springframework.context.access.ContextSin
            gletonBeanFactoryLocator.initializeDefinition(ContextSingletonBeanFactoryLocator.java:136)
            10:22:16,312 ERROR [STDERR] at org.springframework.beans.factory.access.SingletonBeanFactoryLocator.useBeanFactory(SingletonBeanFactoryLocator.java:386)
            10:22:16,312 ERROR [STDERR] at org.andromda.samples.aop.sades.ServiceLocator.getContext(ServiceLocator.java:106)
            10:22:16,312 ERROR [STDERR] at org.andromda.samples.aop.sades.ServiceLocator.getServicioPeriodo(ServiceLocator.java:164)
            10:22:16,312 ERROR [STDERR] at org.andromda.samples.aop.sades.web.buscarSolicitudProfesorGrupo.ControladorBuscarSolicitudesProfesorGrupoImpl.poblarPantallaBuscarSolicitudesProfesorGrupo(ControladorBuscarSolicitudesProfesorGrupoImpl.java:48)
            10:22:16,312 ERROR [STDERR] at org.andromda.samples.aop.sades.web.buscarSolicitudProfesorGrupo.BuscarSolicitudProfesorGrupo._poblarPantallaBuscarSolicitudesProfesorGrupo(BuscarSolicitudProfesorGrupo.java:75)
            10:22:16,312 ERROR [STDERR] at org.andromda.samples.aop.sades.web.buscarSolicitudProfesorGrupo.BuscarSolicitudProfesorGrupo.execute(BuscarSolicitudProfesorGrupo.java:22)
            10:22:16,312 ERROR [STDERR] at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:419)
            10:22:16,312 ERROR [STDERR] at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:224)
            10:22:16,312 ERROR [STDERR] at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1194)
            10:22:16,312 ERROR [STDERR] at org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:414)
            10:22:16,312 ERROR [STDERR] at org.andromda.presentation.bpm4struts.ActionServlet.doGet(ActionServlet.java:39)
            10:22:16,328 ERROR [STDERR] at javax.servlet.http.HttpServlet.service(HttpServlet.java:690)
            10:22:16,328 ERROR [STDERR] at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
            10:22:16,328 ERROR [STDERR] at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
            10:22:16,328 ERROR [STDERR] at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
            10:22:16,328 ERROR [STDERR] at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:687)
            10:22:16,328 ERROR [STDERR] at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:469)
            10:22:16,328 ERROR [STDERR] at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:403)
            10:22:16,328 ERROR [STDERR] at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:301)
            10:22:16,328 ERROR [STDERR] at org.apache.struts.action.RequestProcessor.doForward(RequestProcessor.java:1063)
            10:22:16,328 ERROR [STDERR] at org.apache.struts.tiles.TilesRequestProcessor.doForward(TilesRequestProcessor.java:263)
            10:22:16,328 ERROR [STDERR] at org.apache.struts.action.RequestProcessor.processForwardConfig(RequestProcessor.java:386)
            10:22:16,328 ERROR [STDERR] at org.apache.struts.tiles.TilesRequestProcessor.processForwardConfig(TilesRequestProcessor.java:318)
            10:22:16,328 ERROR [STDERR] at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:229)
            10:22:16,343 ERROR [STDERR] at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1194)
            10:22:16,343 ERROR [STDERR] at org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:414)
            10:22:16,343 ERROR [STDERR] at org.andromda.presentation.bpm4struts.ActionServlet.doGet(ActionServlet.java:39)
            10:22:16,343 ERROR [STDERR] at javax.servlet.http.HttpServlet.service(HttpServlet.java:690)
            10:22:16,343 ERROR [STDERR] at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
            10:22:16,343 ERROR [STDERR] at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
            10:22:16,343 ERROR [STDERR] at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
            10:22:16,343 ERROR [STDERR] at org.displaytag.filter.ResponseOverrideFilter.doFilter(ResponseOverrideFilter.java:125)
            10:22:16,343 ERROR [STDERR] at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
            10:22:16,343 ERROR [STDERR] at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
            10:22:16,343 ERROR [STDERR] at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
            10:22:16,343 ERROR [STDERR] at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
            10:22:16,343 ERROR [STDERR] at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
            10:22:16,343 ERROR [STDERR] at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:230)
            10:22:16,343 ERROR [STDERR] at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
            10:22:16,343 ERROR [STDERR] at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:179)
            10:22:16,359 ERROR [STDERR] at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:84)
            10:22:16,359 ERROR [STDERR] at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
            10:22:16,359 ERROR [STDERR] at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:104)
            10:22:16,359 ERROR [STDERR] at org.jboss.web.tomcat.service.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:157)
            10:22:16,359 ERROR [STDERR] at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
            10:22:16,359 ERROR [STDERR] at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:241)
            10:22:16,359 ERROR [STDERR] at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
            10:22:16,359 ERROR [STDERR] at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:580)
            10:22:16,359 ERROR [STDERR] at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
            10:22:16,359 ERROR [STDERR] at java.lang.Thread.run(Thread.java:619)