How can I add WebService to existing project in Delphi XE3? I would like to add SOAP support and next generate WDSL document.
Normally from empty project I choose:
Menu | New | Other | WebService | SOAP Server Application -> Stand-alone VCL Application
This are two projects: one to implement the WebService and another to consume it. When you have implemented the SOAP service (you can do with other platforms, like asmx or WCF webservices), create the current project to consume, go to File --> New --> Other --> Webservices --> WSDL importer, and put the url where webservice are published, Delphi will create the interfaces to "talk" with the webservice.
It could be an option to create a new, empty project with the desired settings and merge the two projects manually with a suitable comparison tool, then throw away the second project. Maybe not a neat solution from the books, but it works well for me.
Related
am new on WS.
some simple questions in my mind, please try to solve it.
i did a demo WS for Calculator on calculator(), where it has one UI where i enter values for it, internally pass it to WS. Ok i got answer/output. but if i want to create only webservice which take/give xml data or just give xml data. how can i create it.
i found some WS URL's about some fame company. is it used by using by opening Connection. how they define this URL? am using MyEclipse10 when i went to create new WS, needed to use Java Bean class for create it. ok, if i create myWS url then how it ll get call? because it is JavaBean?
and if just want to create WS then i need not required to create New WS client?
i dont know it is simple or may be foolish question, when i walk on WS i stop here. i feel like , without basic knowledge started to build it.
please, clear it.
Thanx.
MyEclipse (as well as Eclipse, IBM D Developer, etc) let you create a Java Web service server in one of two ways:
Bottom up Java Bean: you supply a bean, it turns it into a WSDL (and generates the corresponding stub code)
Top down WSDL: you supply a WSDL, and it generates the corresponding stub code
When a company creates a web page, they set up a web server and publish some HTML pages on it.
When a company publishes a WSDL, they also set up a web server ... and publish an XML WSDL on it.
The URL you go to in order to read a WSDL is just an ordinary HTTP web server, that happens to be serving an XML WSDL at that location.
The WSDL specifies where the service can be found, and what operations and data types the service uses. A WSDL you create, or a WSDL that's published by some other company.
'Hope that helps
I would like have a solution for creating a WebServices client and it needs to consume the Services which already existed.
I have code this from Netbeans ide but my requirement is the wsdl url must be a dynamic one and more specific it needs to fetch from .xml,please suggest me to do that dynamic..cheers
If you are building a Java EE application you can create a web service client in Netbeans. Otherwise you need to code it on your own or use a external tool or library.
You need to parse the XML and read the WSDL URL from it, you can find in the net for how to read the data from the XML
Once done,using the URL you got from the XML you can call the service endpoint (The code you have already)
Is it possible to develop Restful services for GET,PUT, POST and DELETE using an XML file as data source? I am using Netbeans 6.5.1 . Any references which I could use?
Sure, you can. You need to create a REST controller with the different REST methods (anotated with #GET, POST, ...). These methods will need to access the xml file. You should have a dedicated class for managing the file (with CRUD operations, etc.).
I think you can automatically generate your web service skeleton with netbeans but as it's not my IDE I am not sure. Anyway writing a REST resource is very simple. Look for Jersey examples as I guess you will select this library.
I don't want WCF, I only want web service.
Thank you.
They've obscured it, but it's easy enough:
Right-click on your solution, select Add New Project.
In the Framework selection dropdown, select .NET Framework 3.5
Select the Web installed templates listing and you'll find ASP.NET Web Service Application as the last one in the list.
In other words, you can create one in .NET 3.5, but not 4. Now, that being said, it seems like it may be possible to create a .NET 4 template for VS2010, but I'm not a VS2010 guru, so that's for someone else to elaborate on.
Edited to Add: Somebody else posted a response to your question that was also a good answer, I thought, but they deleted it themselves for some reason. I don't remember their user name. I'll repeat it here.
If you create a new Web Application in the solution, you can then Add New Item, and one of the options under Web is "Web Service" at the very bottom.
The only drawback to this is that besides the web service, you also have the usual default items for a web application, namely default.aspx, about.aspx, global.asax, and site.master, as well as the folders Account, Scripts, and Styles. But you can delete these, so no problem. Also keep in mind that the web.config in the Web Application project will be different from that of the Web Service, and that the assembly bindings for the web service will point to ASP.NET v2 & v3.5 (see its web.config), whereas the service in the web application project will default to ASP.NET v4 (through its project file). I don't know if any negative implications exist for either way of working, though I suspect that both will work just fine.
If you select the framework like mentioned above to 3.5 you can select a web service application. If you want it to be targeted at .NET 4.0 framework, go into my project --> Compile --> Advanced Compile Options --> change the target framework to .net framework 4.
You can also change your compile options to target it at a x64 or x86 (32 bit) server.
web.config in the Web Application project will be different from that of the Web Service, and that the assembly bindings for the web service will point to ASP.NET v2 & v3.5 (see its web.config), whereas the service in the web application project will default to ASP.NET v4 (through its project file). I don't know if any negative implications exist for either way of working, though I suspect that both will work just fine.
Here was my resolution:
Right-click on your project name and select to Add Service Reference.
Select the Advance button at the very bottom.
Select the Add Web Reference button at the very bottom.
Proceed as usual. :)
I am trying to consume multiple Web Services that redefine some of the same common classes in their wsdl. I currently have them referenced in a Web Site, but I want to convert to Web Application.
Since some of the same classes are redefined from multiple Web Service, the problem is that when adding them in a web Application there is no way to make the namespaces the same across multiple Web Services, like you can in a Web Site.
Is there any way to do what I am looking for?
Show all files in your project, then hand-edit the autogenerated Reference.cs files to change the namespaces (and remove duplicates)? Ugly, but it ought to work.
Alternatively, use wsdl.exe from the command line -- it can generate a single proxy for multiple services -- and then add the generated file to the project manually. The syntax is something like: wsdl http://svr/foo.asmx http://svr/bar.asmx /namespace:Fnord.Proxies