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 <[EMAIL PROTECTED]>/* 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]