View Issue Details

IDProjectCategoryView StatusLast Update
0014871mantisbtapi soappublic2013-07-23 11:26
Reporterrombert Assigned Torombert  
PriorityhighSeverityfeatureReproducibilityN/A
Status closedResolutionfixed 
Product Version1.2.11 
Target Version1.2.13Fixed in Version1.2.13 
Summary0014871: Add support for the built-in soap extension in addition to nusoap
Description

Several problems ( corectness, performance ) should be solved by allowing the users to use the php5 extension instead of nusoap.

Issues:

  1. [done] wsdl is no longer generated automatically
  2. [done] usages of soap_fault are incompatible with the php5 extension
  3. [done] nusoap passes request parameters as arrays, while the php extension uses objects
  4. [done] timestamp functions are different
  5. [done] Attachment handling seems to be different
  6. [done] Unsure if error handling can be reused
  7. [done] Timezone handling is broken for now
  8. [done]Enable native extension by default and fallback to nusoap if native extension is not installed.
  9. [done]Update documentation

TagsNo tags attached.

Relationships

related to 0015721 closedgrangeway Functionality to consider porting to master-2.0.x 
has duplicate 0008872 closeddregad Move to a WSDL First Design and Document Centric Design 
has duplicate 0017735 closedrombert mc_projects_get_user_accessible error 
related to 0014672 closedrombert Slow performance of SOAP calls due to nusuoap 
related to 0014157 closedrombert Array to string conversion error on soap request with PHP 5.4 
related to 0015959 closeddregad SOAP: raw XML when browsing the WSDL 

Activities

dregad

dregad

2012-10-28 18:03

developer   ~0033327

That one's going to make grangeway happy ;)

rombert

rombert

2012-10-28 18:10

reporter   ~0033328

I'm all for making people happy :-) Let's see if this is actually feasible though.

rombert

rombert

2012-10-30 18:52

reporter   ~0033372

I've pushed some more changes to my repo at https://github.com/rombert/mantisbt/tree/14871-soap-extension

Things basically work, and probably faster that using nusoap. Some notes:

  1. nusoap is slower since we moved to a wsdl file instead of PHP representation
  2. set $g_mc_use_nusoap to OFF to enable the native implementation
  3. error handling is not yet updated
  4. timezone handling is probably incorrect for the native extension
  5. not all usages of nusoap-specific API have been cleaned

rombert

rombert

2012-11-04 07:07

reporter   ~0033420

I will wait for 1.2.12 to be released and them merge this back.

atrol

atrol

2012-11-13 15:20

developer   ~0034308

Please have a look at your changes in mc_project_api.php.
There are some calls of mci_soap_fault_access_denied without the required parameter $p_user_id

rombert

rombert

2012-11-14 16:50

reporter   ~0034318

Fixed, thanks for spotting the errors.

grangeway

grangeway

2013-04-05 17:56

reporter   ~0036116

Marking as 'acknowledged' not resolved/closed to track that change gets ported to master-2.0.x branch

Related Changesets

MantisBT: master 29374df2

2012-11-12 16:29

rombert


Details Diff
Fix 0014871: Add support for the built-in soap extension in addition to
nusoap

Conflicts:
api/soap/mantisconnect.php
api/soap/mc_issue_api.php
docbook/administration_guide/en/configuration.sgml
Affected Issues
0014871
mod - .gitignore Diff File
mod - api/soap/mantisconnect.php Diff File
add - api/soap/mantisconnect.wsdl Diff File
mod - api/soap/mc_api.php Diff File
mod - api/soap/mc_config_api.php Diff File
mod - api/soap/mc_config_defaults_inc.php Diff File
mod - api/soap/mc_core.php Diff File
mod - api/soap/mc_custom_field_api.php Diff File
mod - api/soap/mc_enum_api.php Diff File
mod - api/soap/mc_file_api.php Diff File
mod - api/soap/mc_filter_api.php Diff File
mod - api/soap/mc_issue_api.php Diff File
mod - api/soap/mc_issue_attachment_api.php Diff File
mod - api/soap/mc_project_api.php Diff File
mod - api/soap/mc_project_attachment_api.php Diff File
mod - api/soap/mc_tag_api.php Diff File
mod - docbook/Admin_Guide/en-US/Configuration.xml Diff File

MantisBT: master-1.2.x 10691462

2012-11-12 16:29

rombert


Details Diff
Fix 0014871: Add support for the built-in soap extension in addition to
nusoap
Affected Issues
0014871
mod - .gitignore Diff File
mod - api/soap/mantisconnect.php Diff File
add - api/soap/mantisconnect.wsdl Diff File
mod - api/soap/mc_api.php Diff File
mod - api/soap/mc_config_api.php Diff File
mod - api/soap/mc_config_defaults_inc.php Diff File
mod - api/soap/mc_core.php Diff File
mod - api/soap/mc_custom_field_api.php Diff File
mod - api/soap/mc_enum_api.php Diff File
mod - api/soap/mc_file_api.php Diff File
mod - api/soap/mc_filter_api.php Diff File
mod - api/soap/mc_issue_api.php Diff File
mod - api/soap/mc_issue_attachment_api.php Diff File
mod - api/soap/mc_project_api.php Diff File
mod - api/soap/mc_project_attachment_api.php Diff File
mod - api/soap/mc_tag_api.php Diff File
mod - docbook/administration_guide/en/configuration.sgml Diff File

MantisBT: master eac6b08a

2012-11-14 16:44

rombert


Details Diff
SOAP API: make the first parameter of mci_soap_fault_access_denied
optional

Fixes 0014871: Add support for the built-in soap extension in addition to
nusoap
Affected Issues
0014871
mod - api/soap/mc_api.php Diff File

MantisBT: master-1.2.x 8fa6a5c1

2012-11-14 16:44

rombert


Details Diff
SOAP API: make the first parameter of mci_soap_fault_access_denied
optional

Fixes 0014871: Add support for the built-in soap extension in addition to
nusoap
Affected Issues
0014871
mod - api/soap/mc_api.php Diff File