Advanced Customization > Info*Engine User’s Guide > Info*Engine Architecture > Interacting with Info*Engine > Simple Object Access Protocol (SOAP) Web Service
  
Simple Object Access Protocol (SOAP) Web Service
By coding Info*Engine tasks and registering command delegates for them together under a common type identifier, you can use Info*Engine to expose a web service that can be consumed in a programming language agnostic way. The legacy RPC and SimpleTaskDispatcher servlets come pre-configured with your installation and are capable of exposing dynamic WS-I compliant web services that do not require additional deployment steps on your part. The schema these services make use of are dictated by the set of tasks comprising the web service and they are always protected by web server authentication.
* 
If your site is using form-based authentication, programmatic clients attempting to access the RPC or SimpleTaskDispatcher servlet must use the /protocolAuth URL prefix. For example:
http://<host>/Windchill/protocolAuth/servlet/SimpleTaskDispatcher
http://<host>/Windchill/protocolAuth/servlet/RPC
For more information about form-based authentication, see Form-based Authentication.
Alternately you can choose to generate and deploy a JAX-WS based web service that is based on a set of Info*Engine tasks and take more control over the mechanism securing that web service. It is also possible with JAX-WS based web services to write a web service purely in java code that may or may not make use of Info*Engine. In this scenario each web service is deployed as its own Java servlet.