Scriptcase - NuSOAP x extensão nativa SOAP

Bom dia,
Hoje travei uma luta, em um suporte, para encontrar um erro no NuSOAP em meu servidor compartilhado.

A conclusão que chegamos é que:

1) NuSOAP foi criado para php 4 e agora no php 5 e 7 temos nativo a extensão SOAP.
A última atualização do NuSOAP foi em 13-01-2011, versão 0.9.5 -> https://sourceforge.net/projects/nusoap/files/nusoap/
Há forks ou atualizações com patchs, mas ainda assim NuSOAP falha nos quesitos 2 e 3 abaixo.

2) NuSOAP conflita com a extensão nativa do SOAP.
A extensão nativa do SOAP esta na maioria das distribuições vindo compilado e não carregado como módulo.
Ou seja, nestas distros não há como desabilitar o SOAP para que o NuSOAP possa trabalhar corretamente.
Pois muitas funções do NuSOAP e SOAP tem a mesma sintaxe e entram em conflito provocando erros inesperados.

3) Mesmo que a extensão SOAP, quando carregada como módulo, seja desabilitada no php.
Os webservices feitos com Nu_SOAP não conseguem trabalhar direito com php 5.6 ou php 7.
Uma das causas para o NuSOAP não trabalhar direito nestas versões são funções que ser tornaram obsoletas no php 5.6 e já foram descartadas no php 7.

Exemplos:

a) HTTP_POST_RAW_DATA
https://github.com/Dolibarr/dolibarr/issues/2973 -> Webservices doesn’t work with PHP 5.6
Since HTTP_POST_RAW_DATA is deprecated into PHP 5.6, nusoap seems to be broken :frowning:
Yes HTTP_POST_RAW_DATA is deprecated and must be replaced with php://input
deprecated in 5.6 and removed in php 7.

b) deprecated constructor
http://stackoverflow.com/questions/39616448/php7-nusoap-nusoap-client-has-a-deprecated-constructor
ErrorException in class.soapclient.php line 26: Methods with the same name as their class will not be constructors in a future version of PHP; nusoap_client has a deprecated constructor
[size=12pt]
Sei que é mais trabalhoso começar do zero com SOAP, mas será muito mais trabalhoso ter que refazer seus projetos ao se deparar com o php7 usando o NuSOAP.[/size]

[size=12pt]Logo, não usem NuSOAP.[/size]

Obrigada por avisar, Alexandre! Já estava pesquisando a respeito.

Obrigado pelo aviso, Alexandre !

Olá Alexandre. Você ja testou essa release com suporte a Php7 ?

https://github.com/codecasts/nusoap-php7

Att;

Leia http://stackoverflow.com/questions/39616448/php7-nusoap-nusoap-client-has-a-deprecated-constructor e veja o link indicado (https://github.com/codecasts/nusoap-php7) neste post.

Já fiz vários testes e tenho sistemas em produção funcionando perfeitamente com php 7.3

Obrigado pelo retorno.
Eu continuo optando pelo que vem nativo. SOAP na cabeça.

1 Curtida