Merhaba,
Herkese Hayırlı Ramazanlar, Hayırlı Kandiller...
Web Servisler konusunda çok bir bilgim yok. Sormak istediğim soru ya gelirsek; delphi de yazılmış bir web servisin wsdl i ile php de yazılmış aynı servisin wsdl i ya da C# ta yazılmıs aynı web servisin wsdl leri neden birbirinden farklı? Hepsi aynı parametre ve fonksiyonları içeriyor. Hepsi aynı servis ama yazıldıkları programlama dilleri farklı ve aynı zamanda wsdller de farklı? Birisi için yazılan client uygulaması digeri için calışamıyor?
Bu konuda bilgili üstadlar,hocalar mutlaka forumda vardır. Bizleri aydınlatırlarsa çok seviniriz...
İyi çalışmalar,kolay gelsin...
WSDL Farklılıkları
Forum kuralları
Forum kurallarını okuyup, uyunuz!
Forum kurallarını okuyup, uyunuz!
Re: WSDL Farklılıkları
WSDL'den ziyade SOAP servis diye anlatalım, doğrusu bu. WSDL sadece SOAP servisi tanımlar.
Bildiğiniz gibi SOAP servisler XML teknolojisini kullanır. Bir SOAP servisini tanımlayan ana parametreler şöyledir:
SOAPAction: url değildir sizin vereceğiniz bir isim havuzu diyebiliriz, eğer atanmazsa programlama dili kendince atama yapar
Operation: sizin yazdığınız fonksiyon adına karşılık gelir, yine kullandığınız dilde kullanılması yasaklı karakterler içerebileği için çevrime uğrayabilir
Son olarak da
Giriş ve çıkış veri tipleri: XML'deki veri tipleri ile kullanmakta olduğunuz veri tipleri her zaman uyuşmaz, ekstra çevrimler gerektirebilir. Yinede kullandığınız dilde SOAP servise XML'deki veri tipini kullanması için zorlayabilirsiniz. Örneğin C# 'da [System.Xml.Serialization.XmlTextAttribute(DataType = "time")] tanıtıcısı ile yapılır.
Ayrıca kullanmakta olduğunuz giriş/çıkıp tipindeki özelliklerin (property) isimleri de standarda uymadığında değiştirilir, yine bu isimlendirmeyi de kontrol edebilirsiniz.
Veri tipleri için SOAPAction'da olduğu gibi name space kavramı vardır, yine bunu da atayabilirsiniz. Eğer atama yapmazsanız kullandığınız programlama dili kendince doldurur.
Yukarıda bahsi geçen parametreleri kontrol altında tutarsanız hangi dilde üretirseniz üretin ortaya benzer bir WSDL çıkar. Şekilsel olarak WSDL benzemese bile aynı client çalışır.
Bildiğiniz gibi SOAP servisler XML teknolojisini kullanır. Bir SOAP servisini tanımlayan ana parametreler şöyledir:
SOAPAction: url değildir sizin vereceğiniz bir isim havuzu diyebiliriz, eğer atanmazsa programlama dili kendince atama yapar
Operation: sizin yazdığınız fonksiyon adına karşılık gelir, yine kullandığınız dilde kullanılması yasaklı karakterler içerebileği için çevrime uğrayabilir
Son olarak da
Giriş ve çıkış veri tipleri: XML'deki veri tipleri ile kullanmakta olduğunuz veri tipleri her zaman uyuşmaz, ekstra çevrimler gerektirebilir. Yinede kullandığınız dilde SOAP servise XML'deki veri tipini kullanması için zorlayabilirsiniz. Örneğin C# 'da [System.Xml.Serialization.XmlTextAttribute(DataType = "time")] tanıtıcısı ile yapılır.
Ayrıca kullanmakta olduğunuz giriş/çıkıp tipindeki özelliklerin (property) isimleri de standarda uymadığında değiştirilir, yine bu isimlendirmeyi de kontrol edebilirsiniz.
Veri tipleri için SOAPAction'da olduğu gibi name space kavramı vardır, yine bunu da atayabilirsiniz. Eğer atama yapmazsanız kullandığınız programlama dili kendince doldurur.
Yukarıda bahsi geçen parametreleri kontrol altında tutarsanız hangi dilde üretirseniz üretin ortaya benzer bir WSDL çıkar. Şekilsel olarak WSDL benzemese bile aynı client çalışır.
-
- Üye
- Mesajlar: 62
- Kayıt: 04 Oca 2009 06:36
Re: WSDL Farklılıkları
mkysoft verdiğiniz bilgiler için teşekkürler. Delphi için konuşursak dediğiniz parametreleri nasıl değiştirebiliriz. StandAlone bir webservice yazdım da...
Bunu mevcut client ile çalıştırmak istiyorum.
Bunu mevcut client ile çalıştırmak istiyorum.
Re: WSDL Farklılıkları
Delphi'de web servis host etmedim hiç, biraz googlelamak lazım. Malasef Delphi web servis konusunda biraz sıkıntılı, genel olarak XML konusunda sıkıntılı diyelim.
-
- Üye
- Mesajlar: 62
- Kayıt: 04 Oca 2009 06:36
Re: WSDL Farklılıkları
Yardımlarınız için teşekkürler ...