LoggerAdapter logs only last document for multiple documents

Hi All,

I have a problem about logging with Enterprise LoggerAdapter.

For multiple documents published inside a loop step,
LoggerAdapter logs only last document in my implementation.
I want to make LoggerAdapter log every document.

My implementation includes two components, “Source” and “Target”.
“Source” publishes multiple documents inside a loop step.
“Target” is ,then ,to subscribe these documents.
Only one document type is used for this document transmission.
“Target” component’s logging checkbox is on.

I want to log every document published inside a loop step with LoggerAdpapter.
Some more settings are required? Or is my implementation bad?

Enterprise Server : 4.1.1J
Enterprise Integrator: 4.5.2J
LoggerAdapter : 4.5
OS : Solaris8(SunOS 5.8)

Could anyone advise me how to build this way?


I talked with a webMethods Tech about this about maybe 6-8 months ago.

Hi Tony,

I tried other combination with third agent component inserted between “Source” and “Target”.
But this combination works the same. Not proven.

You says the current LoggerAdapter doesn’t support this function, and complete replacement should be taken for this.
Does this replacement include both LoggerAdapter and Enterprise Server?

As long as I use Enterprise Server 4.1.1 and LoggerAdapter 4.5, is there no way to go through my poupose?
If no, I must go back to ATC.

Anyway I will ask webMethods Support and confirm this issue.

Thank you

I have worked around this by setting the envelop’s activation number inside the loop. The activiation number is part of the primary key used in the Log tables. I created a common operation called generateId. If you look at commonop EntUtilityClient.createRecord you will see the code for generateCanonical. That is the same code they use to generate activiation number. So, call this new op inside the loop and set the envelop.activation field before publishing.

HI John,

Your advise brought me a great hit.
I have thought that activation, a key to log, was not open to access (Java API vol.1 doesn’t mention activation in Chap. 3 Envelop Fields).
Now I have a way to access activation and log every document.

Following is my task this time.
Created EntUtility client of Oracle adapter (my RDBMS is Oracle),
then imported some ADL files for EntUtility,
then insert createRecord common operation into my loop,
finally mapped cannonicalId to activation.

Thank you very much