Bug #28949
closed
Uncaught TYPO3 Exception SOAP-ERROR: Parsing WSDL: Couldn't load from 'http://typo3.org/wsdl/tx_ter_wsdl.php' : failed to load external entity "http://typo3.org/wsdl/tx_ter_wsdl.php"
Added by Kay Strobach almost 13 years ago.
Updated about 12 years ago.
Category:
Extension Manager
Description
The following exception is a really big blocker ...
What does TYPO3 do here?
Why does TYPO3 periodically connect to typo3.org?
Why is it impossible to work with the backend until:
1. i login with a user without typo3.org credentials
2. i allow TYPO3 to connect to typo3.org ..
Regards
Kay
Uncaught TYPO3 Exception
SOAP-ERROR: Parsing WSDL: Couldn't load from 'http://typo3.org/wsdl/tx_ter_wsdl.php' : failed to load external entity "http://typo3.org/wsdl/tx_ter_wsdl.php"
SoapFault thrown in file
[pathWWW]/www/t3-trunk/typo3/sysext/em/classes/connection/class.tx_em_connection_soap.php in line 88.
15 SoapClient::SoapClient("http://typo3.org/wsdl/tx_ter_wsdl.php", array)
[pathWWW]/www/t3-trunk/typo3/sysext/em/classes/connection/class.tx_em_connection_soap.php:
00086:
00087: if (defined('SOAP_1_2')) {
00088: $this->client = new SoapClient($options['wsdl'], (array) $options['soapoptions']);
00089: } else {
00090: $this->client = FALSE;
14 tx_em_Connection_Soap::init(array, "kaystrobach", "XXXXXXX")
[pathWWW]/www/t3-trunk/typo3/sysext/em/classes/connection/class.tx_em_connection_extdirectsoap.php:
00319: $this->settings['fe_u'],
00320: $this->settings['fe_p']
00321: );
00322: }
00323: }
13 tx_em_Connection_ExtDirectSoap::initSoap()
[pathWWW]/www/t3-trunk/typo3/sysext/em/classes/connection/class.tx_em_connection_extdirectsoap.php:
00295: )
00296: );
00297: $this->initSoap();
00298: }
00299:
please remove my password from the trace - have overseen it :( thanks
- Category set to Extension Manager
- Status changed from New to Accepted
I think I found the cause:
Class tx_em_Connection_ExtDirectSoap is registered with t3lib_extMgm::registerExtDirectComponent() in EM's ext_tables.php
When t3lib_extjs_ExtDirectApi::generateAPI() is called it calls t3lib_div::getUserObj() on the class name to analyse the class methods. getUserObj() of course creates a new instance of tx_em_Connection_ExtDirectSoap. And the constructor of that class calls tx_em_Connection_ExtDirectSoap::setAccountData() if the username/password are sit. This function calls tx_em_Connection_Soap::init() which sets up a SOAP connection.
Maybe it's enough to catch the exception here if the actual SOAP connection fails and ? display a flash message, or ... ?
Also, it appears that the PHP soap module is required, so it should be added to tx_install::requiredPhpModules .
Wtf?
Let me sum up:
Currently every BE call initiates a connection to TER/typo3.org since latest security releases in 4.5 and 4.6 if credentials are added to em settings? Is this correct?
seems so, but the connection is not always initiated ... but it's not really sensefull to my to try to connect to typo3.org somewhere in the core - if it's not initiated by the user!!!
Perhaps it's a case for the security team?
Patch set 1 of change I4424f71d1b645ffdb46b3319409a48dbe00c7e70 has been pushed to the review server.
It is available at http://review.typo3.org/4453
- Status changed from Accepted to Under Review
Patch set 2 of change I4424f71d1b645ffdb46b3319409a48dbe00c7e70 has been pushed to the review server.
It is available at http://review.typo3.org/4453
Patch set 3 of change I4424f71d1b645ffdb46b3319409a48dbe00c7e70 has been pushed to the review server.
It is available at http://review.typo3.org/4453
- Status changed from Under Review to Resolved
- % Done changed from 0 to 100
- Status changed from Resolved to Closed
Also available in: Atom
PDF