10.5. JBoss AspectManager サービス

AspectManager サービスは、 http://localhost:8080/jmx-console の JMX コンソールを使用してランタイム時に管理することができます。 AspectManager サービスは ObjectName jboss.aop:service=AspectManager で登録されています。 起動時に設定を行いたい場合は、 設定ファイルを編集する必要があります。
JBoss Enterprise Application Platform 5 では、 AspectManager サービスは JBoss Microcontainer bean を使用して設定されます。 設定ファイルは jboss-as/server/PROFILE/conf/bootstrap/aop.xml です。 AspectManager サービスは次の XML にてデプロイされます。
    <bean name="AspectManager" class="org.jboss.aop.deployers.AspectManagerJDK5">
     
    <property name="jbossIntegration"><inject bean="AOPJBossIntegration"/></property>
                               
    <property name="enableLoadtimeWeaving">false</property>
    <!-- only relevant when EnableLoadtimeWeaving is true.
    When transformer is on, every loaded class gets transformed.
    If AOP can't find the class, then it throws an exception.  
    Sometimes, classes may not have all the classes they reference.  
    So, the Suppressing is needed.  (For instance, JBoss cache in the default configuration) -->
    
    <property name="suppressTransformationErrors">true</property>
    
    <property name="prune">true</property>
    
    <property name="include">org.jboss.test., org.jboss.injbossaop.</property>
    
    <property name="exclude">org.jboss.</property>
    <!-- This avoids instrumentation of hibernate cglib enhanced proxies
    
    <property name="ignore">*$$EnhancerByCGLIB$$*</property> -->
    
    <property name="optimized">true</property>
    
    <property name="verbose">false</property>
    <!-- Available choices for this attribute are: org.jboss.aop.instrument.ClassicInstrumentor (default)
    org.jboss.aop.instrument.GeneratedAdvisorInstrumentor -->
    
    <!-- <property name="instrumentor">org.jboss.aop.instrument.ClassicInstrumentor</property>-->
    
    <!-- By default the deployment of the aspects contained in 
    ../deployers/jboss-aop-jboss5.deployer/base-aspects.xml
    are not deployed. To turn on deployment uncomment this property
    <property name="useBaseXml">true</property>-->
</bean>
AspectManager サービスのクラス変更については後ほど説明します。 クラスを変更するには、 bean 要素の class 属性の内容を置き換えます。