PERL AXIS EXTENTION
The objective of this project is to develop an extention for Perl, based on Axis2/C, to provide Web Services support. By using this extention perl client can easily access webservices through axis2. Objective of this extension is to get the users request for service and then send it to axis2 in compatible manner(Using soap message). And also it gets the responce message from axis and give the required result to the perl client.
06-07-2006 Current progress of project
I have work with perl Develop system and develop a sample extention for perl. I successful in linking axis2 libraries to the extension from Perl Build System. so I can call axis2/c functions from inside the extensions. Anyway I still not decided a sutiable API for the extension. First I ll test invoking web services with simple API and update the results. I hope to discuss an API thereafter And I have study about axis2c programming model In these days I study about perl XML object module.
24-07-2006 Current progress
Currently I was able to implement a simple API for the perl using XS. Anyway I couldnt figure out the programming interface of the OM in perl. So I was little late in responding to the mailing list. I tested my code passing serialized text to the perl send_recieve function and inside that I build AXIOM from the om buffer.
Here is the API we come across at the end. This is mainly derived from the firefox API and the service client API.
$svc_client = SvcClient->new();
%options = (
$response = $svc_client->send_recieve($content);
Our next target is to understand the perl XML Object model and associate the send_recieve functions to them. So user can fill the content with following way.
- $doc = new XML::DOM;
$new_elt= $doc->createElement( "echo"); # elements are created in a document $new_elt_pcdata= $doc->createTextNode("some text"); $new_elt->appendChild( $new_elt_pcdata);
I do the perl extension for which manipulate with strings. That remains in perl side. All the stuffs regarding C and intermediate language XS is already completed. I think, I have finished the framework. Using it in proper manner is up to user.