AR System web services architecture
Information flows between and client applications for web services published in . Information also flows between and an external web service consumed by a application.
Information flow for web services published in
When a client contacts a web service, the interaction works as follows:
- The external client sends a Simple Object Access Protocol (SOAP) request to the . The URL for the service is built into the application, or the URL is obtained from the web services registry at run time.
- The extracts the web service name, the operation name, and the authentication information from the SOAP request packet. The retrieves the web service object corresponding to the web service name from the and searches the web service for details about the operation, such as the operation type (Get, Create, Set, or Service), the query string, and the input and output mappings. Then, the expands the XPATH expressions in the query string, extracts the XML document from the SOAP request packet, and sends the document to the along with the operation type, the input and output mappings, and the expanded query string.
- The parses the XML document using the mapping information and converts it into field data. The operation type determines how the treats the data:
- For Get, the server ignores the input fields.
- For Create, the server creates an entry with the input fields.
- For Set, the server searches for an entry using the expanded query string and then modifies the data using the input fields.
- For Service, the server sends the input fields to the Service Entry call.
For complex documents, the data is pushed into one or more forms. This action might trigger some filters.
- The uses the mapping information to get the data from one or more records and generate an XML document. The operation type determines how the treats the data:
- For Get, the server performs a query based on the query string.
- For Create, the server reads the record that was created.
- For Set, the server reads the record that was modified.
- For Service, the server reads the output fields from the Service Entry call. This action might also trigger some filters.
- The XML document is returned to the .
- The packages the XML document as a SOAP response and returns it to the external client.
Information flow for consuming a web service in
An external web service can be created on another , or it can be based in some other environment, such as one that provides stock quotes, weather information, or currency exchange rates.
communicates with the web service through the Web Service plug-in, using the third-party web service server (Apache AXIS) installed with the Java plug-in server.
The flow for consuming a web service in is as follows:
- A filter process triggers a Set Fields filter action that sets fields using data from a web service.
- The filter uses the mapping information stored on the server to construct an XML document with data from the base form and the child form (if any).
- The sends the XML document to the web service plug-in.
- The web service plug-in receives the XML document, packages it into a SOAP request packet, and calls the external web service.
- The external web service replies with the SOAP response packet.
- The web service filter plug-in extracts an XML document from the SOAP packet and returns it to the .
- The receives the XML document and uses the mapping information to parse the document and push data into the current record and any child forms.
- The Set Fields filter action is finished.
Tip: For faster searching, add an asterisk to the end of your partial query. Example: cert*