of course you can add padding, but your sending / receiving programs will need to be adjusted each time anyways to insert and extract the additional element(s) anyways, so adjusting the lengths is not a big deal, just something to remember to do. Adding padding can create some overhead since the padding is then transmitted on each call, so the amount of padding becomes a trade off between maintaining the program partners and the overhead involved.
With ACI, you can write applications that dynamically identify what their content is and calcuate the actual length on every call…but why bother? Seriously…if your communication model is satisfied by synchronous request / reply, you will be better off using RPC for 90+% of your applications!! If you do have a subset of the applications with very variable requirements then do that portion with ACI.
Don’t underestimate the amount of programming effort needed to interpret those message strings - and it has to be coordinated on both sides (sender and receiver), in addtion to the code required to maintain the infrastructure (server program and client calls). Adding or removing an element and regenerating a wrapper is a small effort and will reduce your possibilities of programming errors. With RPC the server is provided and most of the client programming is done for you.
As I said earlier, if you can use RPC, you probably should!
#webMethods#Mainframe-Integration#EntireX