Well, all is not resolved.  In the process of fixing the sandbox, I broke the 
development environment.

The way things are going now, it seems that the service() method's around 
advice is being invoked more than once per message, which means that the 
message gets consumed on the first pass and is therefore null on the second 
pass through the advice.

There is obviously some complexity to the path through the Sonic ESB container. 
 What tools do I have at my disposal to actually see all the calls and pick the 
spot where I want to advise the method call?  I'm flying blind, and I have no 
idea how to fix this now.

To make things even more interesting, tomorrow is my last day at this job, and 
I don't want to leave this problem for them.  I really need to get this worked 
out this week.

Help!

Thanks,
Lee

________________________________
From: aspectj-users-boun...@eclipse.org 
[mailto:aspectj-users-boun...@eclipse.org] On Behalf Of Grey, Lee
Sent: Wednesday, April 06, 2011 7:07 PM
To: aspectj-users@eclipse.org
Subject: Re: [aspectj-users] Aspect runs on laptop but not on server

I'll answer my own question for the benefit of others:

The problem was that the container in the sandbox had different services 
deployed into it than the container on my laptop.  In particular, the services 
in the sandbox were a subset of the services in the laptop container.  And, 
therefore, the pointcuts were just a little bit different, in a way that 
matched on the laptop but not in the sandbox.

By making the pointcuts a bit more inclusive, they started matching in the 
sandbox.

Thanks for wringing your hands with me,  ;-)
Lee

________________________________
From: aspectj-users-boun...@eclipse.org 
[mailto:aspectj-users-boun...@eclipse.org] On Behalf Of Grey, Lee
Sent: Wednesday, April 06, 2011 3:30 PM
To: aspectj-users@eclipse.org
Subject: [aspectj-users] Aspect runs on laptop but not on server

I've built an aspect to wrap around Sonic ESB's XQService.service() method, and 
it's been working perfectly on my laptop (Windows XP, JRE 1.5.0_22, Sonic 
Workbench).

Now, I'm trying to deploy the same exact jars in the same exact way to our 
sandbox pre-production environment (Red Hat 4.1.2-48, JDK 1.5.0_22, Sonic MQ 
and ESB installation), but things aren't working.

What seems to be happening is that on my laptop, the aspect weaving takes place 
and the aspect is instantiated at the time the container starts up.  In the 
sandbox, however, I see the same message regarding weaving, so I am pretty 
confident that the -javaagent parameter did its thing, but my pointcuts don't 
seem to match anything, either at initialization or during normal runtime.  I 
am printing out a message in my advice when SonicMQ messages are processed, and 
it appears on my laptop but not on the server.  I see no signs of my advice 
ever executing on the server.

This is the message I see in both environments during container startup, so I 
believe that means the ltw happened:

[DelegatingLoader@10d0eae] warning javax.* types are not being woven because the
 weaver option '-Xset:weaveJavaxPackages=true' has not been specified

I don't know what might account for this kind of problem.  I am open to any 
suggestions for getting to the bottom of this.

Thanks,
Lee Grey
_______________________________________________
aspectj-users mailing list
aspectj-users@eclipse.org
https://dev.eclipse.org/mailman/listinfo/aspectj-users

Reply via email to