NonStop SOAP 4.1 User's Manual

where,
axis2_handler *handler
is the address of a handler object.
const axutil_env_t *env
is the address of the environment structure.
struct axis2_msg_ctx *msg_ctx
is the address of a message context structure. The message context structure includes information
about the XML message and the message context.
Implement the following business logic for the logging module:
1. Get the SOAP envelope from the message context structure.
2. Get the SOAP message body from the SOAP envelope.
3. Get the root node of the SOAP body.
4. Get the XML message by serializing the root node.
5. Log the XML message to the log file.
For the sample source code for invoke() method of loggingOutHandler, see the <NonStop
SOAP 4 Installation Directory
>/sample_services/modules/mod_logging/src/logging_out_handler.c file.
The logging_in_handler.c and logging_out_handler.c files contain the complete
implementation of the handlers and are located in the <NonStop SOAP 4 Installation
Directory>/sample_services/modules/mod_logging/src directory.
To build your logging module, complete the following steps:
1. Copy the logging_in_handler.c and logging_out_handler.c files to the <NonStop
SOAP 4 Deployment Directory>/modules/logging/src directory.
2. Set the environment variable AXIS2C_HOME to <NonStop SOAP 4 Deployment
Directory> using the OSS command:
OSS> export AXIS2C_HOME=<NonStop SOAP 4 Deployment Directory>
3. Build the logging module using the following command:
OSS>cd <NonStop SOAP 4 Deployment Directory>/modules/logging/src
OSS>make
The make command builds the libaxis2_mod_logging.so DLL.
NOTE: NonStop SOAP 4 obtains the name of the DLL file by adding lib to the class name
and adding the .so file extension. For example, if the class name of the module is
axis2_logging, the DLL name must be libaxis2_mod_logging.so.
Customizing the NonStop SOAP 4 Message Process Using Handlers 135