Я внедрил сервер SOAP (в качестве модуля для Apache23), начиная с WSDL, опубликованного третьей стороной (Итальянское налоговое агентство).
Я импортировал WSDL, а затем реализовал класс и все необходимые методы.
Теперь возникает проблема, связанная с тем, как имена SOAPActions отображаются и, следовательно, недоступны для внешнего клиента (что явно не может быть изменено).
Если быть точным, значение SOAPAction, предоставляемого моим сервисом, составляет
"TransmissionFatture # AttestazioneTrasmissioneFattura"
(где "TrasmissioneFatture" - это имя класса, а вместо "AttestazioneTrasmissioneFattura" - это имя вызываемой процедуры).
Вызов, поступающий извне, содержит в SOAPAction значение
"http://miosito.xxx.it/soap/TrasmissioneFatture/AttestazioneTrasmissioneFattura"
.
Здесь возникает проблема .... Если я изменю значение SOAPAction таким образом
InvRegistry.RegisterInterface (TypeInfo (TransmissionFatture), 'https://miosito.xxx.it/soap/TrasmissioneFatture/', 'UTF-8');
В wsdl теперь SOAPActions все изменены в "http://miosito.xxx.it/soap/TrasmissioneFatture/#AttestazioneTrasmissioneFattura".
Есть ли способ удалить тег "#" из имени метода?
Большое спасибо.