0001-utils-allow-SOAP-services-address-overwrite.patch
passerelle/apps/cartads_cs/models.py | ||
---|---|---|
89 | 89 |
def get_wsdl_url(self, service_type='ServicePortail'): |
90 | 90 |
return self.wsdl_base_url + service_type + '.svc?singleWsdl' |
91 | 91 | |
92 |
def soap_client(self, **kwargs): |
|
93 |
client = super(AbstractCartaDSCS, self).soap_client(**kwargs) |
|
94 |
# fix URL that should have been changed by reverse proxy |
|
95 |
parsed_wsdl_address = urlparse.urlparse(client.service._binding_options['address']) |
|
96 |
parsed_real_address = urlparse.urlparse(self.wsdl_base_url) |
|
97 |
client.service._binding_options['address'] = urlparse.urlunparse( |
|
98 |
parsed_real_address[:2] + parsed_wsdl_address[2:]) |
|
99 |
return client |
|
100 | ||
101 | 92 |
def get_token(self): |
102 | 93 |
token_data = { |
103 | 94 |
'date': datetime.datetime.now().strftime('%d/%m/%Y %H:%M:%S'), |
passerelle/utils/__init__.py | ||
---|---|---|
317 | 317 |
transport_class = getattr(resource, 'soap_transport_class', SOAPTransport) |
318 | 318 |
transport = transport_class(resource, wsdl_url, session=resource.requests, cache=InMemoryCache()) |
319 | 319 |
super(SOAPClient, self).__init__(wsdl_url, transport=transport, **kwargs) |
320 |
wsdl_base_url = getattr(resource, 'wsdl_base_url', None) or kwargs.pop('wsdl_base_url', None) |
|
321 |
if wsdl_base_url: |
|
322 |
# fix URL that should have been changed by reverse proxy |
|
323 |
parsed_wsdl_address = urlparse.urlparse(self.service._binding_options['address']) |
|
324 |
parsed_real_address = urlparse.urlparse(wsdl_base_url) |
|
325 |
self.service._binding_options['address'] = urlparse.urlunparse( |
|
326 |
parsed_real_address[:2] + parsed_wsdl_address[2:]) |
|
320 | 327 | |
321 | 328 | |
322 | 329 |
def export_site(): |
323 |
- |