diff --git a/esp/bindings/http/platform/httpbinding.cpp b/esp/bindings/http/platform/httpbinding.cpp index 1bf570588c4..b8065f2c128 100644 --- a/esp/bindings/http/platform/httpbinding.cpp +++ b/esp/bindings/http/platform/httpbinding.cpp @@ -1844,7 +1844,8 @@ int EspHttpBinding::onGetVersion(IEspContext &context, CHttpRequest* request, CH } void getServiceSchema(const char *serviceQName, const char *methodQName, double version, const char *nstr, - const StringBuffer &xmlFilename, Owned ¶ms, EsdlXslTypeId EsdlXslType, StringBuffer &schema) + const StringBuffer &xmlFilename, Owned ¶ms, EsdlXslTypeId EsdlXslType, + IProperties *opts, StringBuffer &schema) { Owned esdlDef; Owned defHelper; @@ -1856,13 +1857,13 @@ void getServiceSchema(const char *serviceQName, const char *methodQName, double xmlFilePath.append("esdl_files").append(PATHSEPSTR).append(xmlFilename.str()); esdlDef->addDefinitionsFromFile(xmlFilePath.c_str()); unsigned optFlags{DEPFLAG_COLLAPSE|DEPFLAG_ARRAYOF}; - Owned structs = esdlDef->getDependencies(serviceQName, methodQName, ";", version, nullptr, optFlags ); + Owned structs = esdlDef->getDependencies(serviceQName, methodQName, ";", version, opts, optFlags ); StringBuffer xlstFile(getCFD()); xlstFile.append("xslt").append(PATHSEPSTR).append("esp_service_xml2xsd.xslt"); defHelper->loadTransform(xlstFile, params, EsdlXslType); - defHelper->toWSDL(*structs, schema, EsdlXslType, version, nullptr, nstr, optFlags); + defHelper->toWSDL(*structs, schema, EsdlXslType, version, opts, nstr, optFlags); } @@ -1913,7 +1914,7 @@ int EspHttpBinding::getServiceWsdlOrXsd(IEspContext &context, CHttpRequest* requ StringBuffer schema; getServiceSchema(serviceQName.str(), methodQName.str(), version, nstr.str(), xmlFilename, - params, isWsdl ? EsdlXslToWsdl : EsdlXslToXsd, schema); + params, isWsdl ? EsdlXslToWsdl : EsdlXslToXsd, context.queryRequestParameters(), schema); response->setContent(schema.length(), schema.str()); response->setContentType(HTTP_TYPE_APPLICATION_XML_UTF8);