Results 1 to 3 of 3

Thread: Proxied object export problem

  1. #1
    Join Date
    Nov 2007
    Location
    Belarus
    Posts
    72

    Default Proxied object export problem

    Hello, dear community.

    I have a proxied object with transaction management advices applied to it. I am trying to get the target from it:

    Code:
    myProxiedObject.getTargetSource().getTarget()
    and publish the resulting target with MBeanExporter:

    Code:
    <bean class="org.springframework.jmx.export.MBeanExporter">
        <property name="beans">
          <map>
            <entry key="Systems:someName" value-ref="target" />
          </map>
        </property>
      </bean>
    but in jconsole I still see a bulk of methods and fields from proxy and more - I can invoke them! But i'd like to have only business logic methods from the target (as I see in jconsole when not applying any advice) and not aop-proxy related stuff.

    What wrong am I doing?
    Last edited by Bohtvaroh; Jan 13th, 2008 at 01:29 AM.
    Alexander Semenov

    My Jabber ID: bohtvaroh@jabby.org

  2. #2
    Join Date
    Nov 2007
    Location
    Belarus
    Posts
    72

    Default

    As debugger says:

    target.getClass().getName() -xxxxxx.somesystem.solution1.service1.service.Servi ce1Impl

    proxy.getClass().getName() - $Proxy9

    But it looks like $Proxy9 is exported anyway. :-S
    Alexander Semenov

    My Jabber ID: bohtvaroh@jabby.org

  3. #3
    Join Date
    Nov 2007
    Location
    Belarus
    Posts
    72

    Default

    This helps, but it's not right problem solution.

    Code:
      <!-- Register Service as MBean -->
      <bean class="org.springframework.jmx.export.MBeanExporter">
        <property name="beans">
          <map>
            <entry key="Systems:name=somename" value-ref="myObjectProxy" />
          </map>
        </property>
        <property name="assembler" ref="serviceMBeanInfoAssembler" />
      </bean>
    
      <bean name="serviceMBeanInfoAssembler" class="org.springframework.jmx.export.assembler.InterfaceBasedMBeanInfoAssembler">
        <property name="managedInterfaces">
          <list>
            <value>myBusinessObjectInterface</value>
          </list>
        </property>
      </bean>
    Alexander Semenov

    My Jabber ID: bohtvaroh@jabby.org

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •