diff --git a/src/server.js b/src/server.js index 082ef7f5..38f0db1b 100644 --- a/src/server.js +++ b/src/server.js @@ -198,7 +198,8 @@ class Server extends Base { try { if (binding.style === 'rpc') { - operationName = Object.keys(body)[0]; + operationName = (Object.keys(body)[0] === (self.wsdl.options.attributesKey || 'attributes') ? + Object.keys(body)[1] : Object.keys(body)[0]); self.emit('request', obj, operationName); if (headers) @@ -214,8 +215,8 @@ class Server extends Base { style: 'rpc' }, req, callback); } else { //document style - var messageElemName = (Object.keys(body)[0] === 'attributes' ? - Object.keys(body)[1] : Object.keys(body)[0]); + var messageElemName = (Object.keys(body)[0] === (self.wsdl.options.attributesKey || 'attributes') ? + Object.keys(body)[1] : Object.keys(body)[0]); var pair = binding.topElements[messageElemName]; var operationName, outputName;