Talend ESB Örnek Uygulama

TALEND ÖRNEK BİR UYGULAMA

Talend ESB Nedir ? Öğrenmek için aşağıdaki linkten yazımıza ulaşınız :

TALEND ESB NEDİR ? NASIL KULLANILIR?

 

Öncelikle Örneğimizi Yapmamız İçin Gerekenler:

  • Talend Open Studio for ESB :
  • Talend Kullanacağımız Bilgisayarda Java jdk nın kurulu olması gerekli.
  • Talend i indirdikten sonra winrar dan klasöre çıkarıp Studio klasöründeki işletim sistemimize uygun olan TOS_ESB uygulamasını çalıştırmamız yeterli herhangi bir kuruluma ihtiyaç duymaz.
  • Örneğimizde football pool Soap Web service ini kullanacağız bunun için web service in soap message gerekli olucak ,  kullanıcı adı ve şifresi istemediği için herhangi bir giriş işlemi yapmayacağız.

web servis linki : http://footballpool.dataaccess.eu/data/info.wso?wsdl

  • Programımızı kullanırken Java NullPointerException Hatasıyla karşılaşmamak için Java jre nin yolunun doğru olduğunu kontrol edelim.

Talend ‘in üst menüsünden WindowàPreferences kısmından Talend kısmınıdan Java interpreter alanına Jdk nızın klasöründeki  JREàbinàjava.exe nin doğru tanımlı olduğunu kontrol ediniz .

1

Şimdi Örnek Uygulamamıza Başlayalım.

 

 [raw] [/raw]

Örnek Senaryosu:

  • football pool a ait bir SOAP web servisten AllPlayerNames Bilgileri Çekilecek.
  • Çekilecek veriler Veritabanına yazılacak.
  • Hata Durumunda Hata Maili Başarılı Durumunda Başarılı Maili atılacak.
  • Başarılı Olan işlemlerin verileri bir excel tablosuna kaydedilip mail atılacak.

 

Örneğimizde kullanacağımız Bileşenler (Components):

2-inputxml  tFileInputXML: Xml Dosyalarını input etmeye yarar.

 

3-tsoaptSOAP : Web servise “Soap Message” la input verisi göndermemize ve   gönderdiğimiz inputa göre bize geri dönüş verilerini almamıza yarar.

4-tsendmailtSendMail: Mail Gönderme işlemi yapmaya yarar.

5-tlogrow tLogRow: Yaptığımız işlemlerin loglarını görmemize yarar.

6-textractxmlfieldtExtractXMLField: Gelen bir XML verisini Xpathlerine göre parçalamamıza ve verileri kullanmamıza yarar.

 7-treplicatetReplicate: Gelen veriyi çoğaltmaya kopyalamaya yarar.

8-mssqloutputtMSSQLOutput: MSSQL Veritabanına veri kaydı yapmamıza yarar.

9-exceloutputtFileOutputExcel: Excel e veri kaydı yapmamıza yarar.

91tmap tMap : Gelen verileri Maplemeye yarar.

 

[raw] [/raw]

Uygulama Özeti:

Öncelikle Bir XML dosyasında bulunan soap message ı tFileInputXML ile okutup  tSoap a girdi olarak vereceğiz ve tSoap tan geri dönen verileri tLogRow ile logları gözlemliyeceğiz sonra  gelen verilileri tExtractXMLField ile parçalayacağız ve verileri tReplicate e verip  kopyalayacağız verileri hem tMSSQLOutput hem de tFileOutputExcel e çıktı olarak vereceğiz ve verilerimizi veritabanımıza ve bir excel dosyasına kaydetmiş olacağız. tSendMail ile de bilgi mailleri göndereceğiz.

 

Uygulamaya başlayalım:

Job Designs kısmına sağ tıklayıp Creat Job diyoruz ve yeni bir iş oluşturuyoruz.

10

Sağ Kısımda bulunan Palette kısmından kullanacağımız componentleri sürükleyip bırakarak seçiyoruz.

11-palet

14

tFileInputXML, tSOAP, tSendMail, tLogRow, tExtractXMLField, tReplicate, tMSSQLOutput, tFileOutputExcel,tMap

Soap Mesajımızı Bir Xml e kaydediyoruz ve xml imizin yolunu tFileInputXML da gösteriyoruz

[raw] [/raw]

 

Soap Mesajı :

13

<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
  <soap:Body>
    <AllPlayerNames xmlns="http://footballpool.dataaccess.eu">
      <bSelected>true</bSelected>
    </AllPlayerNames>
  </soap:Body>
</soap:Envelope>

tFileInputXML seçince alt menüden component kısmından özellik ve aralarını görüceksiniz.oradan gerekli ayarlmaları yapacağız.

 

Edit schema kısmından bir sütun oluşturup XPath query olarak “.” Giriyoruz gelen xml imizi tamamını maplemek için.

2

Eğer Webservisimiz bizden bağlantı için kullanıcı adı şifre istiyorsa Need authentication ı seçip bu kısma bilgilerimizi giriyoruz.

ENDPOİNT kısmına webservis linkimizi giriyoruz

SOAP Action ımız varsa giriyoruz bizim örneğimizde boş olduğu için boş bıraktık.

Use a Message Kısmında tFileInputXML  componenti ile verdiğimiz için belirlediğimiz xpath i seçiyoruz.

Bu kısım seçili değilse bu kısma kendimiz girebiliriz .Başka bir örnekte kullandığımız ekran görüntüsü:

1

Burada dikkat etmemiz gereken kısım içerideki çift tırnakları anlaşılabilmesi için önüne” \ “ işareti koyulmalı

 

tSOAO çıktımızı Document olarak vermek istiyoruz o nedenle Output in Document i seçiyoruz.

tSOAP ın çıktısının loglarını görmek için tLogRow componentini ekliyorum ve ardından gelen verileri parçalamak için tExtractXMLField componentini  ekliyorum component ayarlarını yapıyorum

3

tSOAP tan gelen documant ı parçalayacağız gelen xml verimizin içinde bulunan ürün özelliklerimizin ana dizininin yolunu Loop XPath query  alanına giriyoruz.

Edit schema kısmından da gelen ürünlerimizin ekleneceği alan adlarını ve geldikleri XPath query yani xml imizde tanımlı olduğu etiketleri yazıyoruz ve bu sayede gelen xml verimizi anlamlı bir şekilde parçalayıp bilgileri kullanabileceğiz. Gelen verilerimizi hem Excel hem de MSSql Veritabanımıza göndereceğimiz için tReplicate componenti ekliyoruz ve ondanda tMSSQLOutput ve tFileOutputExcel çıktı olarak veriyoruz.

tMSSQLOutput component ayarlarımızı yapıyoruz burada veritabanı bilgilerimizi giriyoruz.

4

Action on table : kısmında Clear table seçili bunun anlamı her çalıştığında tablomuzu temizleyip yeni veriler ekleyeceği. Farklı seçenekleri de seçebilirsiniz.

19

Daha Sonra TMap Ekliyoruz ve Excel Dosyamıza Eklenecek verilerimizi mapliyoruz.

[raw] [/raw]

5

Daha sonra TMap ten verilerimizi tExcelOutput a çıktı olarak gönderiyoruz ve tExcelOutput  un ayarlarını yapıyoruz Excel Dosyamızın yolunu ve hangi Sayfasına kaydedileceğini belirtiyoruz.

6

Şimdi de işlemlerimizin durumlarını mail olarak almak için tSendMail Componentlerimizi ekliyoruz ve tSOAP componenti Hata verince tetiklenip çalışmasını istediğim bir Mail Atmasını istiyorum bunun için tSOAP ın üzerine sağ tıklayıp Trigger àOn Component Error u seçip tSendMail e bağlıyorum

22

tSendMail ayarlarını yapıyoruz ben kendi Gmail hesabımdan yine kendime mail göndereceğim gmail ayarlarımı giriyorum

SMTP Host: smtp.gmail.com

SMTP port : 465

kullanıcı adı ve parola

7

 

Aynı Şekilde TMSSqlOutput doğru çalıştığında veya hata verdiğinde gönderilicek mailleri hazırladık.

tFileOutputExcel ede Doğru çalıştığında Mail ile bilgilendiriyoruz ve ek olarak Oluşan Excel Dosyamızı ekliyoruz Emailimize Bunuda tSendMail ayarlarından Atachments kısmına Excel dosyamızın bulunduğu yolu yazıyoruz.

8

ve uygulamamız hazır şimdi Run kısmından uygulamamızı çalıştırıyoruz . tLogRow un ekranda gösterdiği loglarımız.

[raw] [/raw]

MSSQL ve Excel çıktımız.

 

10

 

11

 

 

 

Hazırlayan : Salih ŞEKER izinsiz kopyalanıp kullanılması hoş değildir .

 

Print Friendly, PDF & Email

You may also like...

Bir cevap yazın