cancel
Showing results for 
Search instead for 
Did you mean: 
Read only

MII Inbound process: Call BLT via SOAPRunner or use WSMessageListener?

Former Member
0 Kudos
298

Hi all,

we are facing some problems with messages being send to MII (12.0.2) and wondering what is the best way to ensure that the messages can be stored correctly.

Currently we have set up an underlying system so it calls a MII BLT using the SOAPRunner to deliver messages. This worked so far. However I wonder if it is better to use the possibility to send the call to the message listener, using the WSMessageListener. This way I can see both the IDoc and RFC messages from ERP as well as the webcalls from the MES system.

What is your experience for one or the other way: direct BLT call or Message Listener with rule or a job that runs through new entries of the Message Monitor? What are the advantages / disadvantages?

Michael

Accepted Solutions (1)

Accepted Solutions (1)

Former Member
0 Kudos

WSMessageListener will free you of having to build a lot of the monitoring and reproc frameworks that usually come along with these types of things.

If it isn't in the que it didnt get there. If it fails once it got into MII its super easy to reprocess once the issue can be resolved.

It works great.

I do with there was some other internal way to create messages besides a post.

Edited by: Christian Libich on Jan 6, 2009 7:06 PM

Answers (3)

Answers (3)

former_member193328
Active Participant
0 Kudos

Hi Mike

The biggest point that I would think of in choosing SoapRunner over WSMessageListener is whether you want a response from the MII transaction or not.

If you want to execute a transaction and get a result/response back then you should use SoapRunner as this executes a synchronous call.

On the other hand if you are just bothered about sending a message to MII and do some processing on the message in MII without caring for a response you should use the WSMessageListener as this works in Async mode. The added advantages are reprocessing, status check and so mentioned by Christian earlier.

Hope this helps.

best regards

Partha

Former Member
0 Kudos

Partha,

after a while we have decided to use a combination.

We have created a BLT that receives the Web call from a MES system. The only function of the BLT is to forward the message via HTTP call to the WSMessageListener and send a return to the caller as you have described.

The advantage besides giving a response to the caller is that the caller gets the response fairly quick. If a BLT is called as a webservice, it may take a while until it has processed the message and sends back the response.

Another advantage was mentioned by Christian. From a monitoring perspective it is a good point to have all incoming messages in the message monitor. You can easily reprocess messages, or find failed messages.

Concerning failed messages: The BLT which is called from the message listener should contain an error handling that ends the BLT using the terminate action in case of an error. You should also set the TerminatedWithError flag to true, otherwise the message is not marked "Failed" in the Message Monitor.

Michael

Former Member
0 Kudos

My original reply disappeared!!

Now its Back!!! Weird!!!

Edited by: Christian Libich on Jan 6, 2009 8:56 PM

agentry_src
Active Contributor
0 Kudos

Hi Michael,

I am not sure there is any great reason to use one over the other. I have used SOAPRunner quite a bit in the past. While I have not used it yet, I am interested in using the WSMessageListener. Since it is still fairly new, I am not sure how many folks have tried it out. Perhaps some others in the community have some opinions to express.

Regards,

Mike