View Full Version : web services
Anonymous
01-13-2005, 03:03 AM
Hi,
Just wondering whats been planned regarding asp.net web services integration with spring.
rob
Mark Pollack
01-16-2005, 12:51 PM
Hi,
The first thing I was planning to do was provide better support for polymorphic interface based web services. This is inspired by John Lowy's programming .NET components book and the appendix of that book is on the web (http://www.fawcette.com/archives/premier/mgznarch/vbpj/2001/10oct01/ws0110/ws0110-1.asp).
The idea is that you can define your business interface and then rely on the object factory/container to create the web client for you. This would be done via an object factory class that creates an an AOP proxy of the business interface and delegates all calls to SoapHttpClientProtocol. The 'invoke' methods of the AOP framework match up very nicely with SoapHttpClientProtocol's invoke method. Here is a snip of how I would see it looking.
<object name="myCalculator" class="Spring.Web.Services.SoapHttpClientFactoryObject, Spring.Services">
<property name="ServiceInterface">
<value>Interfaces.ICalculator, Interfaces</value>
</property>
<property name="ServiceUrl">
<value>tcp://localhost:8015/MyWebServiceCalculator</value>
</property>
</object>
This is similar in spirit to the .NET remoting client support which you can take a look at in CVS and the docs. Spring.NET will then let you very easily switch between the implementations, be they test, local, .NET remoting, web service, or whatever else comes up down the road.
Cheers,
Mark
[/url]
Anonymous
02-22-2005, 10:32 AM
I am a newbie. Can you give me how to access your cvs server to get this version supports .net remoting? Thanks
Hi,
The first thing I was planning to do was provide better support for polymorphic interface based web services. This is inspired by John Lowy's programming .NET components book and the appendix of that book is on the web (http://www.fawcette.com/archives/premier/mgznarch/vbpj/2001/10oct01/ws0110/ws0110-1.asp).
The idea is that you can define your business interface and then rely on the object factory/container to create the web client for you. This would be done via an object factory class that creates an an AOP proxy of the business interface and delegates all calls to SoapHttpClientProtocol. The 'invoke' methods of the AOP framework match up very nicely with SoapHttpClientProtocol's invoke method. Here is a snip of how I would see it looking.
<object name="myCalculator" class="Spring.Web.Services.SoapHttpClientFactoryObject, Spring.Services">
<property name="ServiceInterface">
<value>Interfaces.ICalculator, Interfaces</value>
</property>
<property name="ServiceUrl">
<value>tcp://localhost:8015/MyWebServiceCalculator</value>
</property>
</object>
This is similar in spirit to the .NET remoting client support which you can take a look at in CVS and the docs. Spring.NET will then let you very easily switch between the implementations, be they test, local, .NET remoting, web service, or whatever else comes up down the road.
Cheers,
Mark
[/url]
Mark Pollack
02-22-2005, 01:52 PM
Hi Mahendra,
This is not yet available for web services, it was more an explination of what we are going to do - were working on it for the AOP release after 0.6.0 final. That would be 1.5-2 months from now - though it will be in CVS before that. The current CVS does support this approach for .NET remoting (http://www.springframework.net/doc/reference/html/remoting.html) now if that is useful to you. Going forward this will apply to Indigo services as well - basically allowing you to code to an interface (provide a plain object implementation in some cases) and let a proxy create a specific 'remoting' technology.
You can use anonymous CVS access to get at our latest code now. See the instructions on SourceForge (http://sourceforge.net/cvs/?group_id=106751). A nice CVS GUI client is Tortoise CVS (http://www.tortoisecvs.org/).
Let me know if you need some additional help and I'll let you know when we implement that functionality.
Cheers,
Mark
Anonymous
02-23-2005, 05:25 AM
Thank, I have succed checkout cvs from cvs.sf.net, but I am unable to find Spring.Web.Services.SoapHttpClientFactoryObject class. Can you tell we what is the filename and its location?
Thanks,
Mahendra
[quote="Mark Pollack"]Hi Mahendra,
This is not yet available for web services, it was more an explination of what we are going to do - were working on it for the AOP release after 0.6.0 final. That would be 1.5-2 months from now - though it will be in CVS before that. The current CVS does support this approach for .NET remoting (http://www.springframework.net/doc/reference/html/remoting.html) now if that is useful to you. Going forward this will apply to Indigo services as well - basically allowing you to code to an interface (provide a plain object implementation in some cases) and let a proxy create a specific 'remoting' technology.
You can use anonymous CVS access to get at our latest code now. See the instructions on SourceForge (http://sourceforge.net/cvs/?group_id=106751). A nice CVS GUI client is Tortoise CVS (http://www.tortoisecvs.org/).
Mark Pollack
02-23-2005, 03:12 PM
Hi Mahendra,
The SoapHttpClientFactoryObject is not yet available - sorry about that. We will address this when we start down the road for the 0.7 release with AOP.
Cheers,
Mark
twalker
05-11-2005, 09:17 PM
I am new to Spring.NET and I was trying to follow the sample that was posted by Aleksandar Seovic on "Web Services Support"; is that functionality in any accessible version of Spring.NET right now. I am working on a project where we need to have the capability in our framework to support Web Services, Remoting, and Enterprise Services and I have the remoting piece working, however I am having problems with getting the Web Services piece going. It is telling me that it can't find Spring.Web.Services.WebServiceHandlerFactory. I have downloaded the 3-30-05 build.
Help is appreciated.
Thanks,
Mark Pollack
05-11-2005, 09:29 PM
Hi,
You can get the code from the interium build link on our download page (http://www.springframework.net/download.html). Aleks really did a ton a work - I am going to be going over it myself tonight in detail since there is also an outstanding question regarding enterprise services.
Cheers,
Mark
twalker
08-30-2005, 03:35 PM
I have been using the Remoting and Web Services functionality in Spring.NET for a few months now and I was wondering when this is going to be included in an official release. I noticed in the 1.0 documentation that under Chapter 9 it says that this will be available in 1.1. If this is true when is 1.1 going to be released? I like this functionality for Remoting and Web Services and my team is planning on using it in our application, however my company will not be happy if I am using a CVS version of Spring.NET.
Thanks for you help.
Mark Pollack
08-30-2005, 03:47 PM
Hi,
I understand completely. We are laying out the plans right now for a 1.1 release. I'll let you know as soon as we settle on a date - probably ~ 1-2 months for a milestone/preview release, followed by RC then quickly into 1.1. The 1.0 release is scheduled for Sept 14. What is your time frame out of curiosity?
Cheers,
Mark
twalker
08-30-2005, 05:06 PM
Mark,
Thanks for the quick response. We can get by with the CVS version but I really need the real release by Nov 1. We have an offshore component to our application and I need to be able to send them our Architecture components which includes Spring.NET very soon.
Thanks for your help.
Aleks Seovic
09-02-2005, 01:02 AM
Hmm, November 1 might be too agressive timeframe for 1.1, especially because remoting support is not even complete yet.
We will have a preview release for all of the functionality that's currently in CVS for the VSLive! Orlando (Oct 9-13), so that might be your best bet if you need to send it to your offshore developers. It will have an installer, documentation, signed assemblies and all the other good stuff that you don't get when you use CVS head.
Later,
Aleks
twalker
09-12-2005, 08:02 PM
When can we get this preview release that you mentioned for VSLive?
Thanks,
Aleks Seovic
09-12-2005, 08:05 PM
By October 10 at the latest (and most probable). Presentation is on the 11th, so we need to have it by then.
- Aleks
twalker
10-12-2005, 08:31 PM
Spring Team,
Today I downloaded the 1.1 Web preview release and installed it and I still don't see the Spring.Services.dll which contains the Remoting stuff. I hope that you are planning on releasing it very soon because we are using a 5-10-05 cvs version which I would rather not have to go to production with.
Thanks,
Mark Pollack
10-13-2005, 12:57 AM
Hi,
Hmm yea Aleks and were debating to include that or not that as we were bundling that release late at night. Now in retrospect we probably should have included the services that but time was short and I was inclined not to until we had the full dynamic proxy support for remoting. The immediate need was driven by the recent talk at VSLive that demonstrated ASP.NET features and turns out that didn't depend on Spring.Services. We will not have everything we would like in 1.1 by Nov 1st, which is your deadline, but I can bundle up what we currenlty have for you by then - in particular the current services - including docs and sample programs. I gather you do not need the ASP.NET functionality right? Can you make due with the current remoting support or do you need the full blown dynamic proxy version? Thanks for hanging in there!
Cheers,
Mark
twalker
10-13-2005, 06:39 PM
Mark,
You are correct, currently we don't need the ASP.NET functionality right now but I definitely need the Remoting support. I am not sure what you mean by “the full blown dynamic proxy version”, I am using the 5-10-05 build of Spring. If the Remoting functionality that is in that build can be bundled up then that would be exactly what I need.
Thanks
twalker
10-14-2005, 09:22 PM
Spring Team,
I would really like to get this into a release as soon as possible. When do you guys think that you can bundle this stuff up for me?
Thanks,
Mark Pollack
10-14-2005, 09:55 PM
Hi,
I will bundle up what you need by the end of the month in another Spring 1.1 preview release. I will add the .net remoting Calculator example and docs. What I meant by 'full blown remoting support' was to remove the need to inherit from MBR in your service, instead that would be done for you at runtime dynamically. Thanks!
Cheers,
Mark
Bruno Baia
10-25-2005, 12:13 PM
Hi,
The first thing I was planning to do was provide better support for polymorphic interface based web services. This is inspired by John Lowy's programming .NET components book and the appendix of that book is on the web (http://www.fawcette.com/archives/premier/mgznarch/vbpj/2001/10oct01/ws0110/ws0110-1.asp).
The idea is that you can define your business interface and then rely on the object factory/container to create the web client for you. This would be done via an object factory class that creates an an AOP proxy of the business interface and delegates all calls to SoapHttpClientProtocol. The 'invoke' methods of the AOP framework match up very nicely with SoapHttpClientProtocol's invoke method. Here is a snip of how I would see it looking.
<object name="myCalculator" class="Spring.Web.Services.SoapHttpClientFactoryObject, Spring.Services">
<property name="ServiceInterface">
<value>Interfaces.ICalculator, Interfaces</value>
</property>
<property name="ServiceUrl">
<value>tcp://localhost:8015/MyWebServiceCalculator</value>
</property>
</object>
This is similar in spirit to the .NET remoting client support which you can take a look at in CVS and the docs. Spring.NET will then let you very easily switch between the implementations, be they test, local, .NET remoting, web service, or whatever else comes up down the road.
Cheers,
Mark
[/url]
How goes the "Spring.Web.Services.SoapHttpClientFactoryObject" ?
Can be interesting to use with webservices generated by WebServiceExporter.
Mark Pollack
10-25-2005, 03:40 PM
Hi,
Yea - we've had something like this for a while now, I didn't think to post back here :oops: The approach I initailly suggested was not to easy to implement. The approach now creates a proxy for the one generated by the wsdl utility that implements the specified service interface. Take a look at the docs on our 'wiki. (http://opensource2.atlassian.com/confluence/spring/display/NET/Web+Services+Support), the section "Client-side Proxy Creation" would be what you are after.
Config file usage looks like this
<object id="HelloWorld" type="Spring.Web.Services.WebServiceProxyFactory, Spring.Services">
<property name="ProxyClass"><value>MyCompany.WebServices.HelloWorld, MyClientApp</value></property>
<property name="ServiceInterface"><value>MyCompany.Services.IHelloWorld, MyServices</value></property>
</object>
Let us know how it goes!
Cheers,
Mark
Bruno Baia
10-25-2005, 03:49 PM
yeah i saw that in the wiki page, but i don't find the "WebServiceProxyFactory" class in the CVS repository.
i looked here : "cvs: springnet/Spring.Net/src/Spring/Spring.Web/Web/Services"
Mark Pollack
10-25-2005, 03:55 PM
Hi,
Ah, ok. It is sitting under src\Spring\Spring.Services\Web\Services. It was separated from Spring.Web under the assumption that the client should have to link w/ the 'server side' web stuff. We can rethink the packaging...
Here is the viewcvs url
http://cvs.sourceforge.net/viewcvs.py/springnet/Spring.Net/src/Spring/Spring.Services/Web/Services/
You can also download the "interium" build on the download page - essentially a cvs tarball which I'll be refreshing later today.
Cheers,
Mark
Bruno Baia
10-25-2005, 04:01 PM
It was separated from Spring.Web under the assumption that the client should have to link w/ the 'server side' web stuff.
u're right, better like that
You can also download the "interium" build on the download page - essentially a cvs tarball which I'll be refreshing later today.
Thks, that's perfect, cause i can't use CVS at work :)
Mark Pollack
10-25-2005, 04:06 PM
Hi,
cause i can't use CVS at work
I was in the same situation for a long while at a client site - annoying to say the least!
Cheers,
Mark
Bruno Baia
10-25-2005, 04:24 PM
Yea - we've had something like this for a while now, I didn't think to post back here :oops: The approach I initailly suggested was not to easy to implement.
The old approach was nice, do u watched the code of the wsdl.exe tool ?
Mark Pollack
10-26-2005, 05:23 AM
Hi,
FYI, the download page is now updated with a new cvs build. I can't remember the details of what makes Aleks abandon the "raw" proxy approach. I'll ping him.
Cheers,
Mark
vBulletin® v3.7.3, Copyright ©2000-2008, Jelsoft Enterprises Ltd.