Aracılığıyla paylaş


COM+ SOAP Hizmetine Genel Bakış

HTTP, kullanıcıların ağ üzerinden uzak bir sunucudaki bilgilere kolay erişim için Bir Web tarayıcısı kullanmalarına izin vererek bilgisayar kullanımında devrim yaptı. XML web hizmetleri artık istemci uygulamalarının ağ üzerinden uzak yöntemleri kolayca çağırmasına olanak tanıyarak uygulama geliştirmede devrim yaptı.

Bir istemci uygulamasının uzak sunucuda uygulanan bir yöntemi çağırabilmesi genellikle yararlıdır. Bazen yöntem uzak sunucuda depolanan geçici bilgileri kullanır (örneğin, belirli bir değer çizgisi simgesine karşılık gelen hisse senedinin geçerli fiyatını döndüren bir yöntem). Diğer zamanlarda, geliştirici bunu kullanan tüm uygulamaları yeniden dağıtmak zorunda kalmadan yöntemler uygulamasını yükseltme olanağı ister.

Web sayfaları gibi XML web hizmetlerine de HTTP kullanılarak IIS gibi bir web sunucusu üzerinden erişilir. Ancak, HTML ile kodlanmış web sayfaları yerine, bu HTTP paketleri sunucuda uygulanan ve SOAP ile kodlanmış bir yönteme yapılan çağrıların giriş ve çıkış parametrelerini içerir.

XML web hizmeti kullanmak için hizmetin kullanıma sunulduğu URL'yi ve çağırmak istediğiniz yöntemin adını bilmeniz ve yönteme giriş parametrelerini sağlamanız gerekir. SOAP 1.1 standart, https://www.stockquoteserver.com/StockQuotekonumundaki bir XML web hizmetine uzak çağrı içeren ve belirli bir değer çizgisi simgesine karşılık gelen hisse senedinin geçerli fiyatını döndüren http paketinin aşağıdaki örneğini sağlar.

POST /StockQuote HTTP/1.1
Host: www.stockquoteserver.com
Content-Type: text/xml; "charset=utf-8"
Content-Length: nnnn
SOAPAction: "Some-URI"

<SOAP-ENV:Envelope
xmlns:SOAP-ENV="https://schemas.xmlsoap.org/soap/envelope/"
SOAP-ENV:encodingStyle="https://schemas.xmlsoap.org/soap/encoding/">
<SOAP-ENV:Body>
<m:GetLastTradePrice xmlns:m="Some-URI">
<symbol>DIS</symbol>
</m:GetLastTradePrice>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>

Yukarıdaki örnekte gösterildiği gibi SOAP, BIR HTTP isteğine katıştırılabilir bir XML örneğidir. Benzer şekilde, sonuç aşağıdaki örnekte gösterildiği gibi SOAP yüküne sahip bir HTTP paketi olarak döndürülür.

HTTP/1.1 200 OK
Content-Type: text/xml; "charset=utf-8"
Content-Length: nnnn

<SOAP-ENV:Envelope
xmlns:SOAP-ENV="https://schemas.xmlsoap.org/soap/envelope/"
SOAP-ENV:encodingStyle="https://schemas.xmlsoap.org/soap/encoding//">
<SOAP-ENV:Body>
<m:GetLastTradePriceResponse xmlns:m="Some-URI">
<Price>34.5</Price>
</m:GetLastTradePriceResponse>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>

XML web hizmetlerini temel alan altyapı hakkında bilgi sahibi olmak yararlı olsa da, COM+ XML web hizmetlerini oluşturmayı ve kullanmayı o kadar kolay hale getirir ki bu düzeye inmek zorunda kalmazsınız.

Yapılandırılmış COM bileşenlerinin varsayılan arabirimlerindeki yöntemleri herhangi bir COM+ uygulamasında XML web hizmeti olarak kullanıma sunun. Bileşenleri yazarken programlamada dikkat edilmesi gereken özel noktalar yoktur, ancak kullanıma açmak istediğiniz yöntemlerin varsayılan arabirimde olması ve bileşenin yapılandırılması gerekir (sunucunuzun COM+ kataloğunda). Ağ arabirimi aracılığıyla iletişim kurmak veya SOAP'yi ayrıştırmak için kod yazmanız gerekmez. XML web hizmeti oluşturmak için COM+ SOAP hizmetini kullanma hakkında ayrıntılı yönergeler için bkz. XML Web Hizmetleri oluşturma.

BIR COM+ uygulamasını XML web hizmeti olarak kullanıma açtığınızda, XML web hizmetinden kullanılabilen tüm yöntemlerin söz dizimi hakkında ayrıntılı bilgiler, Web Hizmetleri Açıklama Dili (WSDL) kullanılarak otomatik olarak yayımlanır. Bu bilgiler XML web hizmetinizi kullanan istemciler tarafından kullanılır.

COM+, bir uzak XML web hizmetine erişmeniz ve bunları kullanmanız için aşağıdaki gibi iki yol sağlar:

  • iyi bilinen nesne (WKO) modu, sözdizimini WSDL kullanarak yayımlayan herhangi bir XML web hizmetine erişmek için kullanılabilir, hatta bu XML web hizmeti COM+ veya Microsoft Windows kullanılarak oluşturulmamış olsa bile.
  • İstemci tarafından etkinleştirilmiş nesne (CAO) modu yalnızca COM+ uygulamalarını kullanıma sunarak oluşturulan XML web hizmetlerine erişmek için kullanılabilir. CAO modu, geçerli SOAP standardı tarafından desteklenmeyen bir özellik olan kalıcı bağlantıları kullanarak performansı artırır.

Her iki yöntem de istemci uygulamalarının ağ arabirimi aracılığıyla iletişim kurmak veya SOAP ayrıştırmak için kod yazmak zorunda kalmadan XML web hizmetlerinin yöntemlerini basit bir şekilde uzaktan çağırmasına olanak tanır. XML web hizmetlerine her iki modda da erişme hakkında ayrıntılı bilgi için bkz. CAO Modunda XML Web Hizmetlerine Erişme ve WKO Modunda XML Web Hizmetlerine Erişme.

Not

COM+, SOAP-Document belirtimini değil yalnızca SOAP-RPC belirtimini destekler.

 

COM+, MEVCUT COM+ uygulamalarını CAO modunda tamamen saydam bir şekilde XML web hizmetleri olarak kullanmanıza olanak tanıyarak XML web hizmetlerini kullanmayı özellikle kolaylaştırır. Sunucunuzdan XML web hizmeti olarak kullanıma sunulan bir COM+ uygulaması dışarı, içeri aktaran tüm istemciler içeri aktarılan uygulama kullanıldığında sunucunun XML web hizmetini saydam bir şekilde kullanabilir. Bu tesis, mevcut COM+ uygulamalarının XML web hizmetlerine dönüştürülmesini ve bu hizmetlerin bir ağ üzerinden dağıtımını çok kolaylaştırır.

XML web hizmetlerinin kullanılması, aşağıdakiler de dahil olmak üzere uzak yordam çağrılarının (RPC) alternatif uygulamalarına göre çeşitli benzersiz avantajlara sahiptir:

  • SOAP, birlikte çalışabilirliği artıran gerçek bir platformlar arası RPC uygulamasıdır.
  • XML web hizmetleri hem giriş hem de çıkış parametrelerine sahip yöntemleri destekler.
  • XML web hizmetleri, genellikle diğer RPC uygulamalarını engelleyebilecek güvenlik duvarlarına nüfuz eden HTTP üzerinden çalışır.
  • BIR XML web hizmeti COM+ kullanılarak uygulandığında, geliştiricinin herhangi bir özel kod yazması gerekmez; bu, alternatif RPC mekanizmalarına göre muazzam bir avantajdır.

Not

XML web hizmetleri zaman uyumsuz veya saydam işlem çağrılarını desteklemez. Bu işleve ihtiyacınız olduğunda COM+ Kuyruğa Alınmış Bileşenler hizmetini kullanın.

 

COM+ SOAP Hizmeti Güvenlik konuları