From:             marcus at synchromedia dot co dot uk
Operating system: *
PHP version:      5CVS-2005-10-13 (snap)
PHP Bug Type:     Feature/Change Request
Bug description:  Extend SOAPClient WSDL param to take literal string or local 
path

Description:
------------
This is a minor thing that's been troubling me, making it 
difficult to deploy a salesforce.com SOAP client across 
multiple projects. Salesforce is a particular interest 
because its WSDL files are not available directly online - 
you have to download and save local copies manually.

When constructing a SOAPClient object, the WSDL parameter 
provided is treated like a URL (because it will usually BE a 
URL). For 'local' URLs, it searches the current directory, 
including any relative path that it uses. However, because 
it is fundamentally a URL and not a file request like an 
include, it does not search the include path. The net result 
of this is that I'm having to copy my WSDL files into every 
place that my class library is called from because the URL 
resolution will only ever look in the calling directory and 
not in the include path that allowed it to find my classes.

An alternative would be to allow providing the WSDL as a 
literal string, probably read using file_get_contents() 
which does support using the include path.

A worse solution is to provide the WSDL contents as the 
response to a separate HTTP call (i.e. act like the WSDL is 
online after all). This would work, but it's way less 
efficient. It's also hard to configure across multiple 
installations.

I can't use an absolute path as it's deployed in multiple 
configurations on multiple servers, and config is bad enough 
already.

So, please can you either extend the WSDL parameter to 
accept a literal string or a local path that's not handled 
as a URL.



-- 
Edit bug report at http://bugs.php.net/?id=34854&edit=1
-- 
Try a CVS snapshot (php4):   http://bugs.php.net/fix.php?id=34854&r=trysnapshot4
Try a CVS snapshot (php5.0): 
http://bugs.php.net/fix.php?id=34854&r=trysnapshot50
Try a CVS snapshot (php5.1): 
http://bugs.php.net/fix.php?id=34854&r=trysnapshot51
Fixed in CVS:                http://bugs.php.net/fix.php?id=34854&r=fixedcvs
Fixed in release:            http://bugs.php.net/fix.php?id=34854&r=alreadyfixed
Need backtrace:              http://bugs.php.net/fix.php?id=34854&r=needtrace
Need Reproduce Script:       http://bugs.php.net/fix.php?id=34854&r=needscript
Try newer version:           http://bugs.php.net/fix.php?id=34854&r=oldversion
Not developer issue:         http://bugs.php.net/fix.php?id=34854&r=support
Expected behavior:           http://bugs.php.net/fix.php?id=34854&r=notwrong
Not enough info:             
http://bugs.php.net/fix.php?id=34854&r=notenoughinfo
Submitted twice:             
http://bugs.php.net/fix.php?id=34854&r=submittedtwice
register_globals:            http://bugs.php.net/fix.php?id=34854&r=globals
PHP 3 support discontinued:  http://bugs.php.net/fix.php?id=34854&r=php3
Daylight Savings:            http://bugs.php.net/fix.php?id=34854&r=dst
IIS Stability:               http://bugs.php.net/fix.php?id=34854&r=isapi
Install GNU Sed:             http://bugs.php.net/fix.php?id=34854&r=gnused
Floating point limitations:  http://bugs.php.net/fix.php?id=34854&r=float
No Zend Extensions:          http://bugs.php.net/fix.php?id=34854&r=nozend
MySQL Configuration Error:   http://bugs.php.net/fix.php?id=34854&r=mysqlcfg

Reply via email to