You are viewing a plain text version of this content. The canonical link for it is here.
Posted to c-dev@axis.apache.org by Nabeel <na...@wso2.com> on 2006/04/25 08:39:00 UTC

[Axis2] Implementing Service Client API

Keeping inline with the Axis2 Java Service Client API, I am implementing 
a similar client API for Axis2 C.
It has the following interfaces:
axis2_svc_client.h
axis2_op_client.h
axis2_options.h

Once this is implemented, axis2_call.h interface can be removed. (This 
will affect all the existing samples, documentations, PHP & Firefox 
extensions written on top of Axis2 C)

thanks
-Nabeel

Re: [Axis2] Implementing Service Client API

Posted by Deepal jayasinghe <de...@gmail.com>.
Hi Nabeel;

great !!

Nabeel wrote:

> Keeping inline with the Axis2 Java Service Client API, I am
> implementing a similar client API for Axis2 C.
> It has the following interfaces:
> axis2_svc_client.h

can we use some other name (just a suggestion)

> axis2_op_client.h
> axis2_options.h
>
> Once this is implemented, axis2_call.h interface can be removed. (This
> will affect all the existing samples, documentations, PHP & Firefox
> extensions written on top of Axis2 C)
>
> thanks
> -Nabeel
>


-- 
Thanks,
Deepal
................................................................
~Future is Open~ 


Re: [Axis2] Implementing Service Client API

Posted by Sahan Gamage <sa...@wso2.com>.
+1 from me.

- Sahan

Samisa Abeysinghe wrote:

> Nabeel wrote:
>
>> Keeping inline with the Axis2 Java Service Client API, I am
>> implementing a similar client API for Axis2 C.
>> It has the following interfaces:
>> axis2_svc_client.h
>> axis2_op_client.h
>> axis2_options.h
>>
>> Once this is implemented, axis2_call.h interface can be removed.
>> (This will affect all the existing samples, documentations, PHP &
>> Firefox extensions written on top of Axis2 C)
>
>
> +1. Better do this now despite the amount of changes we have to do to
> samples and the extentions.
>
> Samisa...
>
>>
>> thanks
>> -Nabeel
>>
>
>


Re: [Axis2] Implementing Service Client API

Posted by Samisa Abeysinghe <sa...@gmail.com>.
Nabeel wrote:

> Keeping inline with the Axis2 Java Service Client API, I am 
> implementing a similar client API for Axis2 C.
> It has the following interfaces:
> axis2_svc_client.h
> axis2_op_client.h
> axis2_options.h
>
> Once this is implemented, axis2_call.h interface can be removed. (This 
> will affect all the existing samples, documentations, PHP & Firefox 
> extensions written on top of Axis2 C)

+1. Better do this now despite the amount of changes we have to do to 
samples and the extentions.

Samisa...

>
> thanks
> -Nabeel
>


Re: [Axis2] Implementing Service Client API

Posted by Samisa Abeysinghe <sa...@gmail.com>.
I think for the benefit of the users, we should not remove call API from 
next release (0.91), rather deprecate it.
We should be removing the call API in the release after (0.92)
However samples and the docs should be updated.

Samisa...

Sahan Gamage wrote:

>hi Pete,
>
>Pete Robbins wrote:
>
>  
>
>>Thanks guys. This is really helpful. One final question (for now!): Do
>>you have a release planned to contain this new client api?
>>    
>>
>
>Yes
>
>  
>
>>If so when? (yes I know that was 2 questions).
>>    
>>
>
>Preferebly within 2 or 3 weeks.
>
>  
>
>> 
>>Cheers,
>>
>>-- 
>>Pete
>>    
>>
>
>
>- Sahan
>
>
>  
>


Re: [Axis2] Implementing Service Client API

Posted by Sahan Gamage <sa...@wso2.com>.
hi Pete,

Pete Robbins wrote:

> Thanks guys. This is really helpful. One final question (for now!): Do
> you have a release planned to contain this new client api?

Yes

> If so when? (yes I know that was 2 questions).

Preferebly within 2 or 3 weeks.

>  
> Cheers,
>
> -- 
> Pete


- Sahan


Re: [Axis2] Implementing Service Client API

Posted by Samisa Abeysinghe <sa...@gmail.com>.
Pete Robbins wrote:

> Thanks guys. This is really helpful. One final question (for now!): Do 
> you have a release planned to contain this new client api?

Yes

> If so when? (yes I know that was 2 questions).

Probably in the second week of may, given that we have to pdate all 
samples as well as docs to align with new API.

Samisa...

>  
> Cheers,
>
> -- 
> Pete



Re: [Axis2] Same source file compiled multiple times in the build

Posted by Damitha Kumarage <da...@gmail.com>.
Hi Samisa
Samisa Abeysinghe wrote:

> Hmmm, looks like it build twice; one for static lib and one for 
> dynamic link.
> I tried using --enable-static=no with configure and then it compiles 
> only once.
>
> May be we should include --enable-static=no in build.sh

Good idea. Acutally since we don't use static libs I can do this in our 
build.sh. Actually enabling this reduced my complete build time by 
nearly 1 min.

thanks
damitha

>
> Thanks,
> Samisa...
>
> Damitha Kumarage wrote:
>
>> Hi Samisa,
>> This happens only when it compile a library. When it compile an 
>> executable it won't happen twice. For example if you test this for an 
>> client executable you can see it compile only once. But if you go to 
>> server samples you can see that it build twice. I think this is how 
>> GNU build works and we can't do anything about it. To verify this I 
>> looked at other two projects(libdvdcss and wsdl pull) using GNU build 
>> system and found that there same thing happen.
>> thanks
>> damitha
>>
>> Samisa Abeysinghe wrote:
>>
>>> Damitha, the problem is partially fixed but not completely.
>>>
>>> Digging further into the problem, I found that almost all source 
>>> files are compiled twice.
>>> 1. Source file compiled with "-fPIC -DPIC" options and object placed 
>>> in .libs folder inside source folder
>>> 2. Source file compiled without "-fPIC -DPIC" options and object 
>>> placed in source folder
>>>
>>> I do not think that this is necessary, we should have only one 
>>> compiling of a given source.
>>>
>>> Thanks,
>>> Samisa...
>>>
>>> Damitha Kumarage wrote:
>>>
>>>> Hi Samisa,
>>>> Thanks very much for pointing this out.  I found the reason for 
>>>> this and fixed it.
>>>>
>>>> Damitha
>>>> Samisa Abeysinghe wrote:
>>>>
>>>>> It looks to me that the same source file is compiled more than 
>>>>> once  in some cases when I do a full build.
>>>>> This must be the reason for the *very* slow build time.
>>>>>
>>>>> To verify this do a 'make clean' and then 'sh build.sh > out'
>>>>> Then 'vi out' and '/http_worker.c' and search next. There are 
>>>>> multiple occurences.
>>>>>
>>>>> This we have to fix. It is annyoing to wait till a build finishes 
>>>>> - takes *so long* :-(
>>>>>
>>>>> Samisa...
>>>>>
>>>>
>>>>
>>>
>>>
>>
>>
>
>


Re: [Axis2] Same source file compiled multiple times in the build

Posted by Samisa Abeysinghe <sa...@wso2.com>.
Hmmm, looks like it build twice; one for static lib and one for dynamic 
link.
I tried using --enable-static=no with configure and then it compiles 
only once.

May be we should include --enable-static=no in build.sh

Thanks,
Samisa...

Damitha Kumarage wrote:

> Hi Samisa,
> This happens only when it compile a library. When it compile an 
> executable it won't happen twice. For example if you test this for an 
> client executable you can see it compile only once. But if you go to 
> server samples you can see that it build twice. I think this is how 
> GNU build works and we can't do anything about it. To verify this I 
> looked at other two projects(libdvdcss and wsdl pull) using GNU build 
> system and found that there same thing happen.
> thanks
> damitha
>
> Samisa Abeysinghe wrote:
>
>> Damitha, the problem is partially fixed but not completely.
>>
>> Digging further into the problem, I found that almost all source 
>> files are compiled twice.
>> 1. Source file compiled with "-fPIC -DPIC" options and object placed 
>> in .libs folder inside source folder
>> 2. Source file compiled without "-fPIC -DPIC" options and object 
>> placed in source folder
>>
>> I do not think that this is necessary, we should have only one 
>> compiling of a given source.
>>
>> Thanks,
>> Samisa...
>>
>> Damitha Kumarage wrote:
>>
>>> Hi Samisa,
>>> Thanks very much for pointing this out.  I found the reason for this 
>>> and fixed it.
>>>
>>> Damitha
>>> Samisa Abeysinghe wrote:
>>>
>>>> It looks to me that the same source file is compiled more than 
>>>> once  in some cases when I do a full build.
>>>> This must be the reason for the *very* slow build time.
>>>>
>>>> To verify this do a 'make clean' and then 'sh build.sh > out'
>>>> Then 'vi out' and '/http_worker.c' and search next. There are 
>>>> multiple occurences.
>>>>
>>>> This we have to fix. It is annyoing to wait till a build finishes - 
>>>> takes *so long* :-(
>>>>
>>>> Samisa...
>>>>
>>>
>>>
>>
>>
>
>


Re: [Axis2] Same source file compiled multiple times in the build

Posted by Damitha Kumarage <da...@gmail.com>.
Hi Samisa,
This happens only when it compile a library. When it compile an 
executable it won't happen twice. For example if you test this for an 
client executable you can see it compile only once. But if you go to 
server samples you can see that it build twice. I think this is how GNU 
build works and we can't do anything about it. To verify this I looked 
at other two projects(libdvdcss and wsdl pull) using GNU build system 
and found that there same thing happen.
thanks
damitha

Samisa Abeysinghe wrote:

> Damitha, the problem is partially fixed but not completely.
>
> Digging further into the problem, I found that almost all source files 
> are compiled twice.
> 1. Source file compiled with "-fPIC -DPIC" options and object placed 
> in .libs folder inside source folder
> 2. Source file compiled without "-fPIC -DPIC" options and object 
> placed in source folder
>
> I do not think that this is necessary, we should have only one 
> compiling of a given source.
>
> Thanks,
> Samisa...
>
> Damitha Kumarage wrote:
>
>> Hi Samisa,
>> Thanks very much for pointing this out.  I found the reason for this 
>> and fixed it.
>>
>> Damitha
>> Samisa Abeysinghe wrote:
>>
>>> It looks to me that the same source file is compiled more than once  
>>> in some cases when I do a full build.
>>> This must be the reason for the *very* slow build time.
>>>
>>> To verify this do a 'make clean' and then 'sh build.sh > out'
>>> Then 'vi out' and '/http_worker.c' and search next. There are 
>>> multiple occurences.
>>>
>>> This we have to fix. It is annyoing to wait till a build finishes - 
>>> takes *so long* :-(
>>>
>>> Samisa...
>>>
>>
>>
>
>


Re: [Axis2] Same source file compiled multiple times in the build

Posted by Samisa Abeysinghe <sa...@wso2.com>.
Damitha, the problem is partially fixed but not completely.

Digging further into the problem, I found that almost all source files 
are compiled twice.
1. Source file compiled with "-fPIC -DPIC" options and object placed in 
.libs folder inside source folder
2. Source file compiled without "-fPIC -DPIC" options and object placed 
in source folder

I do not think that this is necessary, we should have only one compiling 
of a given source.

Thanks,
Samisa...

Damitha Kumarage wrote:

> Hi Samisa,
> Thanks very much for pointing this out.  I found the reason for this 
> and fixed it.
>
> Damitha
> Samisa Abeysinghe wrote:
>
>> It looks to me that the same source file is compiled more than once  
>> in some cases when I do a full build.
>> This must be the reason for the *very* slow build time.
>>
>> To verify this do a 'make clean' and then 'sh build.sh > out'
>> Then 'vi out' and '/http_worker.c' and search next. There are 
>> multiple occurences.
>>
>> This we have to fix. It is annyoing to wait till a build finishes - 
>> takes *so long* :-(
>>
>> Samisa...
>>
>
>


Re: [Axis2] Same source file compiled multiple times in the build

Posted by Damitha Kumarage <da...@gmail.com>.
Hi Samisa,
Thanks very much for pointing this out.  I found the reason for this and 
fixed it.

Damitha
Samisa Abeysinghe wrote:

> It looks to me that the same source file is compiled more than once  
> in some cases when I do a full build.
> This must be the reason for the *very* slow build time.
>
> To verify this do a 'make clean' and then 'sh build.sh > out'
> Then 'vi out' and '/http_worker.c' and search next. There are multiple 
> occurences.
>
> This we have to fix. It is annyoing to wait till a build finishes - 
> takes *so long* :-(
>
> Samisa...
>


[Axis2] Same source file compiled multiple times in the build

Posted by Samisa Abeysinghe <sa...@gmail.com>.
It looks to me that the same source file is compiled more than once  in 
some cases when I do a full build.
This must be the reason for the *very* slow build time.

To verify this do a 'make clean' and then 'sh build.sh > out'
Then 'vi out' and '/http_worker.c' and search next. There are multiple 
occurences.

This we have to fix. It is annyoing to wait till a build finishes - 
takes *so long* :-(

Samisa...

Re: [Axis2] Implementing Service Client API

Posted by Pete Robbins <ro...@googlemail.com>.
Thanks guys. This is really helpful. One final question (for now!): Do you
have a release planned to contain this new client api? If so when? (yes I
know that was 2 questions).

Cheers,

--
Pete

Re: [Axis2] Implementing Service Client API

Posted by Nabeel <na...@wso2.com>.
Samisa Abeysinghe wrote:

> Pete Robbins wrote:
>
>> Hi, I'm currently working on the Tuscany project using Axis2C for 
>> webservice support. I'm sure this change will affect me ;-)
>>  
>> I've been coding an Axis2C client in Tuscany and did struggle a bit 
>> trying to guess what the "official" client interface is supposed to 
>> be. Is there any documentation on what the client side api is? The 
>> samples are a starting point but there is a fair bit of assumed 
>> knowledge required to follow them.
>
>
> Yes it is a problem that we do not have document on the client API. 
> Basically the new API would look similar to the Java API define in here:
> http://ws.apache.org/axis2/0_95/userguide3.html#Writing_Web_Service_Clients_using_Axis2's_Primary_APIs 
>
>
> Basically the idea of comming up with this improved API is to help the 
> end users. This new API will be the "offcial" client API, and we would 
> try and put some erroft to document this before we make the release.
> We are sorry for the inconveniances caused.
> Nabeel, please post the new API for the time being, so that Pete could 
> get some idea on what it would look like.

I have attached the main user interface (axis2_svc_client.h and 
axis2_options.h) which I am working. Hope this help you to get a grasp 
of what is to come.
-Nabeel

>
> Thanks,
> Samisa...
>
>
>>  
>> Cheers,
>>
>>  
>> On 25/04/06, *Nabeel* <nabeel@wso2.com <ma...@wso2.com>> wrote:
>>
>>     Keeping inline with the Axis2 Java Service Client API, I am
>>     implementing
>>     a similar client API for Axis2 C.
>>     It has the following interfaces:
>>     axis2_svc_client.h
>>     axis2_op_client.h
>>     axis2_options.h
>>
>>     Once this is implemented, axis2_call.h interface can be removed. 
>> (This
>>     will affect all the existing samples, documentations, PHP & Firefox
>>     extensions written on top of Axis2 C)
>>
>>     thanks
>>     -Nabeel
>>
>>
>>
>>
>> -- 
>> Pete 
>
>
>
>



Re: [Axis2] Implementing Service Client API

Posted by Samisa Abeysinghe <sa...@gmail.com>.
Pete Robbins wrote:

> Hi, I'm currently working on the Tuscany project using Axis2C for 
> webservice support. I'm sure this change will affect me ;-)
>  
> I've been coding an Axis2C client in Tuscany and did struggle a bit 
> trying to guess what the "official" client interface is supposed to 
> be. Is there any documentation on what the client side api is? The 
> samples are a starting point but there is a fair bit of assumed 
> knowledge required to follow them.

Yes it is a problem that we do not have document on the client API. 
Basically the new API would look similar to the Java API define in here:
http://ws.apache.org/axis2/0_95/userguide3.html#Writing_Web_Service_Clients_using_Axis2's_Primary_APIs

Basically the idea of comming up with this improved API is to help the 
end users. This new API will be the "offcial" client API, and we would 
try and put some erroft to document this before we make the release.
We are sorry for the inconveniances caused.
Nabeel, please post the new API for the time being, so that Pete could 
get some idea on what it would look like.

Thanks,
Samisa...


>  
> Cheers,
>
>  
> On 25/04/06, *Nabeel* <nabeel@wso2.com <ma...@wso2.com>> wrote:
>
>     Keeping inline with the Axis2 Java Service Client API, I am
>     implementing
>     a similar client API for Axis2 C.
>     It has the following interfaces:
>     axis2_svc_client.h
>     axis2_op_client.h
>     axis2_options.h
>
>     Once this is implemented, axis2_call.h interface can be removed. (This
>     will affect all the existing samples, documentations, PHP & Firefox
>     extensions written on top of Axis2 C)
>
>     thanks
>     -Nabeel
>
>
>
>
> -- 
> Pete 



Re: [Axis2] Implementing Service Client API

Posted by Sahan Gamage <sa...@wso2.com>.
Hi Pete,

My first quick answer is to wait sometime (may be 1 week). We are in the
process of improving the client api. This would not take much time. Once
we are done we will come up with a somewhat comprehensive documentation
on how to write clients.
The decision we took to change the API right now is to limit the number
of ppl who need to change their client code. If we have gone 1.0 with
the current API and go on changing it, it would be a very difficult
task. In my personal sense I like to do the changes right now rather
than waiting for some time.
But the bad side is we are gonna scrap out the older api - which implies
that the current sample base will be invalid (if you also have some
client code those will not work once the change happens). But I am quite
sure once the new API is in place (which goes aligned with current Axis2
java code) you would be much comfortable with it.

Thanks
- Sahan


Pete Robbins wrote:

> Hi, I'm currently working on the Tuscany project using Axis2C for
> webservice support. I'm sure this change will affect me ;-)
>  
> I've been coding an Axis2C client in Tuscany and did struggle a bit
> trying to guess what the "official" client interface is supposed to
> be. Is there any documentation on what the client side api is? The
> samples are a starting point but there is a fair bit of assumed
> knowledge required to follow them.
>  
> Cheers,
>
>  
> On 25/04/06, *Nabeel* <nabeel@wso2.com <ma...@wso2.com>> wrote:
>
>     Keeping inline with the Axis2 Java Service Client API, I am
>     implementing
>     a similar client API for Axis2 C.
>     It has the following interfaces:
>     axis2_svc_client.h
>     axis2_op_client.h
>     axis2_options.h
>
>     Once this is implemented, axis2_call.h interface can be removed. (This
>     will affect all the existing samples, documentations, PHP & Firefox
>     extensions written on top of Axis2 C)
>
>     thanks
>     -Nabeel
>
>
>
>
> -- 
> Pete 



Re: [Axis2] Implementing Service Client API

Posted by Pete Robbins <ro...@googlemail.com>.
On 25/04/06, Deepal jayasinghe <de...@gmail.com> wrote:
>
> Pete Robbins wrote:
>
> > Hi, I'm currently working on the Tuscany project using Axis2C for
> > webservice support. I'm sure this change will affect me ;-)
>
> yes :(
>
> >
> > I've been coding an Axis2C client in Tuscany and did struggle a bit
> > trying to guess what the "official" client interface is supposed to
> > be. Is there any
>
> I am not sure abt Axis2 C , but you can get an idea by reading Axis2
> java documents (user guide)


Thanks. I just read the Java guide. This interface looks a lot cleaner ;-))

> documentation on what the client side api is? The samples are a
> > starting point but there is a fair bit of assumed knowledge required
> > to follow them.
> >
> > Cheers,




--
> Pete

Re: [Axis2] Implementing Service Client API

Posted by Deepal jayasinghe <de...@gmail.com>.
Pete Robbins wrote:

> Hi, I'm currently working on the Tuscany project using Axis2C for
> webservice support. I'm sure this change will affect me ;-)

yes :(

>  
> I've been coding an Axis2C client in Tuscany and did struggle a bit
> trying to guess what the "official" client interface is supposed to
> be. Is there any

I am not sure abt Axis2 C , but you can get an idea by reading Axis2
java documents (user guide)

> documentation on what the client side api is? The samples are a
> starting point but there is a fair bit of assumed knowledge required
> to follow them.
>  
> Cheers,
>
>  
> On 25/04/06, *Nabeel* <nabeel@wso2.com <ma...@wso2.com>> wrote:
>
>     Keeping inline with the Axis2 Java Service Client API, I am
>     implementing
>     a similar client API for Axis2 C.
>     It has the following interfaces:
>     axis2_svc_client.h
>     axis2_op_client.h
>     axis2_options.h
>
>     Once this is implemented, axis2_call.h interface can be removed. (This
>     will affect all the existing samples, documentations, PHP & Firefox
>     extensions written on top of Axis2 C)
>
>     thanks
>     -Nabeel
>
>
>
>
> -- 
> Pete 



-- 
Thanks,
Deepal
................................................................
~Future is Open~ 


Re: [Axis2] Implementing Service Client API

Posted by Pete Robbins <ro...@googlemail.com>.
Hi, I'm currently working on the Tuscany project using Axis2C for webservice
support. I'm sure this change will affect me ;-)

I've been coding an Axis2C client in Tuscany and did struggle a bit trying
to guess what the "official" client interface is supposed to be. Is there
any documentation on what the client side api is? The samples are a starting
point but there is a fair bit of assumed knowledge required to follow them.

Cheers,


On 25/04/06, Nabeel <na...@wso2.com> wrote:
>
> Keeping inline with the Axis2 Java Service Client API, I am implementing
> a similar client API for Axis2 C.
> It has the following interfaces:
> axis2_svc_client.h
> axis2_op_client.h
> axis2_options.h
>
> Once this is implemented, axis2_call.h interface can be removed. (This
> will affect all the existing samples, documentations, PHP & Firefox
> extensions written on top of Axis2 C)
>
> thanks
> -Nabeel
>



--
Pete