SOAP Web Services Plugin
- Goal: Technical
- Developer: Diego Ruiz(TrekGlobal)
- Feature Ticket: IDEMPIERE-6955
SOAP Web Services Plugin
The SOAP Web Services bundle has been extracted from iDempiere core and is now available as a standalone optional plugin, installable via the Extension Manager.
Repository: https://github.com/idempiere/idempiere-soap-webservices
Background
Since its early versions, iDempiere included the SOAP Web Services bundle (org.idempiere.webservice) as part of its core. This bundle provided the CompositeService and ModelADService endpoints used for XML-based enterprise integrations.
Over time, the REST API became the recommended and widely-adopted approach for integrating with iDempiere, making the SOAP bundle optional for most implementations. Additionally, the SOAP bundle carried a significant amount of heavy third-party libraries (Apache CXF, WSDL tooling, etc.) that added unnecessary overhead to deployments that did not require SOAP.
What Changed
The SOAP Web Services bundle has been removed from the iDempiere core repository and moved to its own dedicated repository. This reduces the core footprint and makes SOAP support an explicit opt-in.
| Aspect | Before | After |
|---|---|---|
| Distribution | Bundled in iDempiere core | Separate plugin repository |
| Installation | Always present | Optional, via Extension Manager |
| Core footprint | Heavier (CXF + WSDL libs included) | Lighter. Libraries removed from core |
| REST API impact | None | None - REST API is unaffected |
| SOAP Endpoint URLs | Same | Same (once plugin is installed) |
Who Is Affected
- Implementations using SOAP Web Services: You must install the plugin after upgrading. The SOAP endpoints will not be available until the plugin is installed.
- Custom plugins depending on SOAP WS classes: You must update your dependency declarations to reference the new standalone bundle instead of core.
Installing the Plugin
- Log in to iDempiere as a System Administrator.
- Navigate to Extension Manager.
- Add and install the extension iDempiere SOAP Web Services (ADInterface)
- Verify the SOAP endpoints are accessible at:
http://<your-host>:8080/ADInterface/services/ModelADServicehttp://<your-host>:8080/ADInterface/services/CompositeService
Impact on Custom Plugin Developers
If your plugin had a compile-time or runtime dependency on SOAP web service classes (e.g., org.idempiere.webservice.*), you must:
- Add a dependency on the
idempiere-soap-webservicesbundle in your plugin'sMANIFEST.MF. - Ensure your build references the new standalone repository instead of core.
- Re-test your plugin against the updated bundle to verify it compiles and functions correctly.
Failing to update your plugin dependencies will result in compilation errors and potential runtime failures after upgrading iDempiere.