Hi Dimuthu/Samisa, Nice to see your responses. Thanks. I read Axis2c handles the REST request aswell by just chaning the config file axis.xml or through the function axis2_options_set_enable_rest(...). 1. Does this tool handles the REST requests? 2. How to test the REST handling? 3. How to compare the SOAP code flow and REST code flow? 4. Manjula: What do you mean by REST like REST support in your response "Axis2/C 1.3 and 1.4 have REST like REST support. Please see the echo_rest sample of those releases." for my question number 4 in the below thread. I tried to figure out the difference in following ways: A. When I tried to see the backtrace (on GDB) of a soap request sample [of Calculator sample] and the rest request sample [echo_rest sample], I got exactly same dump for both the flows. B. When i tried to print out the request message constructed in echo_rest.c it printed me: <ns1:echoString xmlns:ns1="http://ws.apache.org/axis2/services/echo"><text>Hello World!</text></ns1:echoString> Now I commented the axis2_options_set_enable_rest(...) statement and tried to print the same request message constructed and got the following message printed: <soapenv:Envelope xmlns:soapenv="http://www.w3.org/2003/05/soap-envelope"><soapenv:Header/><soapenv:Body><ns1:echoString xmlns:ns1="http://ws.apache.org/axis2/services/echo"><text>Hello World!</text></ns1:echoString></soapenv:Body></soapenv:Envelope> Is this what the difference is? Is this the REST request which got printed? FYI: I am using the Axis2/C 1.3.0 version. Eagerly waiting for your response. Thanks & Regards, Vamsi Krishna M
Dimuthu Gamage <[EMAIL PROTECTED]> wrote: Hi , If you want a tutorial on using stubs and skels with the codegen tool, just visit here, http://wso2.org/library/3534 Thanks Dimuthu On Mon, May 19, 2008 at 10:11 PM, Samisa Abeysinghe wrote: > vamsi krishna wrote: >> >> Hi Manjula and Dimuthu, >> Thanks a lot for the response. >> 1. Manjula, do you mean LibXML2 is not of pull parsing >> machanism? if yes, How is Axiom model achieving the advantage of full >> parsing machanism with LibXML2 as a default parser? > > Libxml2 has a Pull API. We use that and wrap it with an StAX like API. > >> 2. If pull parsing machanism is not related to LibXML2 or >> Guththilla parsers, where is it implemented? > > As mentioned libxml2 has a pull API, and so does guththila. Guththila > implements StAX like behavior ground up, where as the wrapper does the job > in case of libxml2. > >> 3. If it is implemented in Guthilla parser through Stax >> machanism and not in libxml2? How is Axiom model advatageous with libxml2 as >> a default parser? Why should we have a Axiom model at all? do we have any >> other advantages of using Axiom model other than pull parsing machanism? > > If you look at the Axis2 architecture, it is based on the XML in-out model. > The pull model becomes advantages, in the fact that, you parse to the point > that you need, and leave the rest as it is. This is quite useful if you want > to just look at the headers and route the messages. Also helps with "doing > the work, when it really matters" scenarios. > > AXIOM model is important, because all the handlers of the engine expect to > see the message in that form. Being able to pull is one important feature of > AXIOM. That is one of the key performance secrets of Axis2. > > Samisa... > >> Sorry if the doubts are trivial but i very badly need the >> answers. Waiting for your response. >> Thanks and regards, >> Vamsi Krishna M >> >> >> */Manjula Peiris /* wrote: >> >> >> On Mon, 2008-05-19 at 13:07 +0530, Dimuthu Gamage wrote: >> > Answering some of the question that I m bit familiar with, >> > >> > On Mon, May 19, 2008 at 11:47 AM, vamsi krishna wrote: >> > > Hi, >> > > I started to use Axis2C tool recently. I need the following >> > > clarifications regarding the same: >> > > 1. How are Axiom, Stax and LibXML2 related in Axis2C? >> >> Axiom is the XML model used in Axis2/C. That means any piece of valid >> XML document is represented as an Axiom object inside Axis2/C engine. >> Axis2/C can be used with two parsers. The default Guththila XML parser >> or libxml2 parser. Guththila is a stax parser. >> >> > > 2. Given a structure for Serialization, what is the flow of >> > > serialization in terms of Axiom, Stax and LibXML2? >> > > 3. Where exactly is the pull parsing machanism implemented in >> the code? >> > > 4. How does Axis2C supports REST? When I tried to see the >> backtrace (on >> > > GDB) of a soap request sample [of Calculator sample] and the >> rest request >> > > sample [echo_rest sample], I got exactly same dump for both >> the flows. >> > > Please help me understand the implementation for REST support. >> >> Axis2/C 1.3 and 1.4 have REST like REST support. Please see the >> echo_rest sample of those releases. >> >> > > >> > > 5. what is the purpose of the auxutil_env_t structure? this >> structure is >> > > passed in all the functions of axis2c. >> > >> > env structure keeps information on logging, memory management and >> > threading aspects. The idea is you can plug any logging or memory >> > management implementations to axis2 using axis2_env_t structure. >> This >> > has been used in embedding effort of axis2 to php, ruby and other >> > languages. >> > >> > > 6. What is the purpose of axis2_stub_t structure? >> > >> > It keeps user option and the service client structure which keep >> > information on invoking the service. Normally to customize the >> service >> > call (i.e. to enable mtom, addressing, etc..), you take out the >> option >> > structure using axis2_stub_get_options and set the values to the >> > axis2_options structure >> > >> > > 7. Given a WSDL, once we convert them to respective .h and .c >> files >> > > using the WSDL2C.sh script, how do we go about developing the >> client side >> > > code? do we have any specific way to write the client side code? >> > >> > There are samples about using generated code in the samples/codegen >> > directory >> >> (https://svn.apache.org/repos/asf/webservices/axis2/trunk/c/samples/codegen) >> > >> > > 8. I have read some article which says Every component of >> Axis2C is >> > > pluggable [Transport, XML, Parser, Memory machanisms, etc]. >> but, no where >> > > did i found the procedure to do this. Please help me out in >> understanding >> > > the pluggability and how can i play with the tool to add my >> own pluggable >> > > components. >> Following is an article on plugging your own memory mechanism. >> http://wso2.org/library/3412 >> >> You need to implement that Transport and plug in to Axis2/C. Axis2/C >> currently support HTTP, TCP and XMPP transports. Please have a look at >> Axis2/C TCP transport implementation. >> >> https://svn.apache.org/repos/asf/webservices/axis2/trunk/c/src/core/transport/tcp >> >> In order to plug your Parser you need to implement the parser wrapper >> layer . Following is an example. >> >> https://svn.apache.org/repos/asf/webservices/axis2/trunk/c/axiom/src/parser/libxml2 >> >> >> >> > > 9. Please suggest me any book/online links/any reference >> material to be >> > > able to understand the Axis2C tool better and start consuming the >> > > webservices. Even after going through the complete set of >> links on the >> > > official website of Axis2C, I am unable to explain the >> concepts to my peers >> > > and am unable to write a piece of code to consume the >> webservices available >> > > on internet. >> > >> > You may find some resources here, http://wso2.org/taxonomy/term/254 >> >> The Axis2/C manual is here, >> http://ws.apache.org/axis2/c/docs/axis2c_manual.html >> >> > >> > >> > Thanks >> > Dimuthu >> > >> > > >> > > Please do this favour by clearing all the doubts above and make me >> > > understand the tool better and have me part of your group. >> > > >> > > Eagerly waiting for your reply. >> > > >> > > Thanks and Regards, >> > > Vamsi Krishna M >> > > >> > > Vamsi, IIIT-Hyd. >> > >> > >> --------------------------------------------------------------------- >> > To unsubscribe, e-mail: [EMAIL PROTECTED] >> > For additional commands, e-mail: [EMAIL PROTECTED] >> > >> >> >> --------------------------------------------------------------------- >> To unsubscribe, e-mail: [EMAIL PROTECTED] >> For additional commands, e-mail: [EMAIL PROTECTED] >> >> >> >> >> Vamsi, IIIT-Hyd. >> >> ------------------------------------------------------------------------ >> >> >> No virus found in this incoming message. >> Checked by AVG. Version: 8.0.100 / Virus Database: 269.23.20/1453 - >> Release Date: 5/18/2008 9:31 AM >> > > > -- > Samisa Abeysinghe Director, Engineering; WSO2 Inc. > > http://www.wso2.com/ - "The Open Source SOA Company" > > > --------------------------------------------------------------------- > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] > > --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] Vamsi, IIIT-Hyd.