.Net ve Java Birlikte Çalışabilirlik 2 – Web Servisler

462

Web servislerin birlikte çalışabilirliği için dikkat edilmesi gereken hususlar

Bu bölümde başlıktanda anlaşılacağı gibi birlikte çalışılabilirlik alt yapısıyla ilgili olarak en çok karşılaştığımız ve dikkat edilmesi gereken durumları inceliyor olacağız. Bu durumlar daha fazla arttırılabilir. Ve durumlar tasarlanan sisteme göre değişiklikte gösterebilir. Bu bakış açısı göz önüne alınarak sistemi tasarlarken aşağıdaki konulara dikkat etmemiz gerekmektedir.
1. XSD yi kullanmak

Birlikte çalışma alt yapısı tasarlanırken öncelikle very tasarlamakla işe başlamalısınız.Hangi verilerin gönderileceğine karar verdikten sonra xsd tanımlamlarını yapabilirsiniz. Daha sonra farklı araçlar yardımızla bunlardan sınıflar olusturabilirsiniz. Gönderilecek datalar ve bunların tipleri üstünde iyi düşünmeniz gerekmektedir.
2. Web servislerini Belge/Literal türünden oluştuguna emin olun

WS-I Temel Profil 1.0 ile uyum sağlamak için, Belge / Web tüm Hizmetler için varsayılan kodlama mekanizması olarak Literal olarak seçilmelidir.
3. Sunucu ve Port seçimi

Servis için istemcileri oluştururken bir yardımcı (Helper) sınıf ile bunların ayarlanmasını sağlayabilirsiniz. Böylece ileriki zamanlarda oluşabilecek değişimlere bir konfigürasyon dosyası yardımıyla adapte olabilirsiniz.
4. İzleme araçlarını kullanın (Trace Tools)

Bu araçlar yardımıyle istemcinizi gözünüzden kaçan hataları veya servis ile istemci arasında giden paketlerin veya verilerin doğrulugunu denetleyebilirsiniz.
5. Tarih ve saat verilerini karşılaştırmak için her zaman compareTo() methodunu kullanın

.Net ile java tarafındaki tarih veya saat verilerinin paylaşımında karşılaştırma için Java tarafında daima compareTo() methodunu kullanın. Özellikle platformlar arasında ki tarih karşılaştırmalarının doğruluğunu sağlamak için yardımcı olacaktır
6. Boş tarihler ve zamanlar Java tarafından tanınır. Fakat .Net tarafından tanınmaz

Java’da, java.util.Date ve java.util.Calendar başvuru(reference) türleri olarak sınıflandırılır. Fakat .Net teki DateTime değer (value type) tipindedir.Başvuru türleri boş (null) olabilir. Fakat değer tipleri olamaz. Bundan dolayı şayet servisiniz üzerinden boş olarak tarih veya zaman verisi göndermek istiyorsanız. Karmaşık (complex) tipleri gönderin böylece onları boş olarak gönderebilirsiniz.
7. Boş dizileri izleyin

Şayet web servisler üzerinden boş diziler göndermek isterseniz. Bu durum bazı sorunlara yol açabilir. Şayet nesne dizileri gönderecekseniz. Bu dizilerin veri doğruluğundan emin olun.
8. Datasetlerin kullanımı

Web Servisler üzerinden Dataset veya Datatable gibi yapılarak direk olarak paylaşılmamalıdır. Bu basit olarak görünmekle birlikte birlikte çalışılabilirliğe uygun değildir.

Sürç-i lisan ettiysek affola

Kubilay

Kaynaklar
Microsoft
Wikipedia
SOA OpenGroup

Yorum yaz

Email adresiniz yayınlanmayacaktır.