View Issue Details
ID | Project | Category | View Status | Date Submitted | Last Update |
---|---|---|---|---|---|
0008872 | mantisbt | api soap | public | 2008-02-09 09:56 | 2014-01-24 11:08 |
Reporter | kingargyle | Assigned To | dregad | ||
Priority | normal | Severity | minor | Reproducibility | N/A |
Status | closed | Resolution | duplicate | ||
Summary | 0008872: Move to a WSDL First Design and Document Centric Design | ||||
Description | The current design for the SOAP API is via an RPC/Literal design. Unfortunately this design doesn't pass the WS-I Interoperability tests. We are also currently using a bottom up approach to the design, when an overal better design for various tool interoperability is to do a WSDL first design, and implement the interfaces that the WSDL and schema require. This will require moving from NuSOAP to some of the newer SOAP frameworks that are avaiable with PHP 5. In the long run having a wsdl and supporting schemas defined outside of the api itself works better in the long run, and allows for easier maintenance. RPC interfaces are being deprecated in preference to Document centric interfaces. | ||||
Tags | No tags attached. | ||||
In 1.2.x development branch we have dropped support for PHP 4.x, hence, we can use the SOAP extension shipped with PHP 5. The question is whether the extension is enabled by default or not. And if it is not enabled, whether we want to fall back to NuSoap or not. The issue that we need to be aware of is the shared hosting scenario. It would be useful is you provide some examples of the document centric WSDLs that you are referring to. Another option is to create the Wiki page associated with this issue and start writing requirements of what you are suggesting. |
|
There are several articles out there that help describe a the document style versus the RPC style. In order to pass the WS-I Basic Profile a Document/Literal form is recommended. Currently the RPC/Encoded format is what is used by Mantis and it doesn't pass the WS-I Basic profile. Here is an article that describes the differences. http://www.ibm.com/developerworks/webservices/library/ws-whichwsdl/ The advantage also for going for a WSDL first design is that it defines what the data formats and interfaces are to be, and doesn't rely on the back end implementation or api's available. It is up to the back end implementation to conform the data specification. In most cases it's the data that is important, not necessarily how it is retrieved or what the underlying api of the back end system is. |
|
Per the PHP Manual section for SOAP: "This extension is only available if PHP was configured with --enable-soap." As a customer of Dreamhost, one of the largest shared hosting providers, there's almost nothing that DH doesn't have enabled/offered with their service, but even with PHP5, SOAP is disabled. So my point is that Mantis should most certainly plan for people to not have the core SOAP API enabled on their installation of PHP5. |
|
I agree, and it is why I wouldn't look at using the built in support because it might not be enabled. But I do think it is time to go beyond NuSOAP, and to a framework that has wider support and more interoperable support across the soap framework. One such framework is: http://wso2.org/projects/wsf/php It's designed with the WS-I specification in mind and modern support for the approved WS-* specifications. |
|
PHP SOAP extension is available since 1.2.13 (see 0014871) and NuSoap removed entirely in 1.3.x (0016444) |
|