More specifically, I got stuck with the request/response call, with code
snippet as the follows (with little renaming):
adb_isOkResponse_t* axis2_stub_op_system_isOk( axis2_stub_t *stub, const
axutil_env_t *env,
adb_isOk_t* _isOk)
{
... ...
soap_action = axis2_options_get_action( options, env );
if (NULL == soap_action)
{
is_soap_act_set = AXIS2_FALSE;
soap_action = "\"\"";
soap_act = axutil_string_create(env, "\"\"");
axis2_options_set_soap_action(options, env, soap_act);
axis2_options_set_action( options, env, soap_action );
}
axis2_options_set_soap_version(options, env, AXIOM_SOAP12 ); // or with
AXIOM_SOAP11
ret_node = axis2_svc_client_send_receive_with_op_qname( svc_client, env,
op_qname, payload);
if (!is_soap_act_set)
{
axis2_options_set_soap_action(options, env, NULL);
axis2_options_set_action( options, env, NULL);
}
if ( NULL == ret_node )
{
return NULL; // it always goes here
}
... ...
}
The return node, or ret_node, in this case is always "NULL", while all input
params are okay with op_qname being empty.
Could someone tell me what could be the possible causes of the failed response
at this point, assuming the service side up and running properly?
Thanks again,
Mike
From: [EMAIL PROTECTED]: [EMAIL PROTECTED]: RE: Novice questions regarding
Axis2C client development.Date: Sat, 3 May 2008 00:43:07 +0000
It's excellent advice/guidance, Bill! Yeah. The source code/files generated
thru the WSDL looked overwhelming initially from the complex services I need to
handle. However, by looking into the code more closely, it seemed that I'd just
need to start with the pair axis2_stub_xxx.c/.h files with each service. In
my case, I'd have to serialize/deserialize each function call, which would have
up to 6~7 parameters. Didn't quite understand these params and the creation and
use of them. Could someone share a piece of sample code that demonstrates a
request/response scenario, with the request serialized while response
deserialized? I looked into the provided Axis2c sample but couldn't find
anything close. Thanks again and have a great weekend, Mike
From: [EMAIL PROTECTED]: [EMAIL PROTECTED]: RE: Novice questions regarding
Axis2C client development.Date: Fri, 2 May 2008 17:12:43 -0500
Mike, I am accessing a web service where the service side is accessed through
Java just fine from a C++ application using Axis2C. If the WSDL is defined,
you can use the WSDL2C tool to generate C stub wrappers that represent the
information from the WSDL and make the use of the Axis2C client interfaces
easier. Obviously on the conversion to the SOAP messages, Axis2C takes care of
converting the C data to SOAP character format on the client-side, and the Java
SOAP interface code on the service side handles the conversion between SOAP and
Java types. So if there is a WSDL for the service and the service is thus
accessible through SOAP, you should only need to worry about the client side.
When I started my development, then, I chose one of the simplest methods in my
WSDL to invoke and worked out the issues accessing it, then expanded my client
code to use the other interfaces. This gives you the chance to learn how to
use the methods in the generated stub wrappers to access one service, then
incrementally expand to implement the full application. Once you have worked
through the details to make the client application find and link to the Axis2C
DLLs and related libraries, and find the Axis2C repo directory on the client,
accessing the services after the first becomes fairly straightforward.
Good luck,
Bill Mitchell
From: Mike Zhao [mailto:[EMAIL PROTECTED] Sent: Friday, May 02, 2008 4:44 PMTo:
Apache AXIS C Developers ListSubject: RE: Novice questions regarding Axis2C
client development.
Thank you for the concise and definite answer! Then came to the implementation.
Does the server side have to do something extra, besides providing a service
WSDL, for the Axis2C based client to invoke its functions? I mean has to the
service side provide a particular wrapper around itself, in order for the
client to interface to it? If not necessarily, then how could client talk to
the service since it's implemented in Java? Any suggestions and advice will be
appreciated! Mike > Date: Sat, 3 May 2008 00:00:25 +0530> From: [EMAIL
PROTECTED]> To: [email protected]> Subject: Re: Novice questions
regarding Axis2C client development.> > Mike Zhao wrote:> > Hi There,> > > >
I'm trying to use Axis2C to develop a SOAP client that would > > need interface
with the Apache CXF based web services. These > > services were largely
implemented in Java, though the client needs to > > be in C++.> > > > The first
question I have is how feasible this could be? Or simply, > > would this be
possible, and if it'd, what could be the impact to the > > performance due to
the message/method conversions between two language > > implementations.> >
Yes, it is possible.> > > > > Assuming this scenario would be feasible, then
technically, my guess > > was I'd need to create a C/C++ wrapper/skeleton
around the services, > > which would interface with/invoke the functions of
interest.> > > > Yes.> > Samisa...> > >
---------------------------------------------------------------------> To
unsubscribe, e-mail: [EMAIL PROTECTED]> For additional commands, e-mail: [EMAIL
PROTECTED]>
Windows Live SkyDrive lets you share files with faraway friends. Start sharing.
Windows Live SkyDrive lets you share files with faraway friends. Start sharing.
_________________________________________________________________
Back to work after baby–how do you know when you’re ready?
http://lifestyle.msn.com/familyandparenting/articleNW.aspx?cp-documentid=5797498&ocid=T067MSN40A0701A