FileNet P8 Platformu ile Uygulama Geliştirme

FileNet P8 Platformu ile Uygulama Geliştirme

ibm-makaleŞimdiye kadar Doküman Yönetim Sistemi ile birlikte IBM FileNet P8 Platformu’nu  nerelerde ve nasıl kullanabileceğimizi, sistemin genel özelliklerini ve bize neler kazandırdığı hakkında genel bilgiler verdik.Bu makalemizde FileNet P8 Sistem üzerinde uygulama geliştirme üzerinde bilgiler vermiş olacağım.

2009 yılında FileNet P8 Platform 4.5.1 versiyonunu çıkardı ve biz bunun üzerinde anlatımlarımızı gerçekleştireceğiz.  FileNet 4.X versiyonundan önce 3.5.2 versiyonu kullanılmaktaydı ve bundan sonra çıkan yeni sürümde major değişiklikler mevcut, bu nedenden dolayı yazılarımızda bazen 3.5.2 sürümünde işlemlerin nasıl olduğunu aradaki farkı da anlatmış olacağım.

Öncelikle FileNet’in content yani içerik yönetimi ile ilgili geliştirmelerin nasıl yapılabileceği üzerinde  makaleler yazacağız ve birkaç makele sonra da süreç yönetimi kısmına da başlayacağız.

Bir önceki makalemizde FileNet P8 Platformunun core componentları hakkında bilgiler aktırmıştım; kodlama yapabilmek için core componentları bilmemiz gerekmektedir. Bizim için en önemli olan Content Engine ile Process Engine olarak isimlendirdiğmiz 2 adet enginedir.   Bu makalemiz de daha önce de belirttiğimiz gibi Content Engine ile ilgili olacaktır.  Content Engine geliştirmeleri için FileNet bize Java programla dili ile geliştirme yapabilmemiz için Java API olarak adlandıracağımız API desteği, Microsoft .Net ile geliştirme yapabilmemiz için API desteği, ve bizi hakkaten şaşırtacak Web Service desteği ve Visual Basic 6.0 gibi yapılar için yani COM desteği sunmaktadır; anlayabileğimiz gibi bu kadar destek sunmaları platformun çok güçlü olduğunun da bir göstergesidir.

Programlama Dili Content Engine API
Java Java API
Microsoft .NET .Net API
Web Service Content Engine Web Service
P8 3.X Versiyonu İçin Java ve COM API (Compatibility için yani eski teknolojiler diyebiliriz)

FileNet P8 Plaformunu yönetimsel olarak kullanmamızı sağlayan Sql Server Management Studio arayüzüne MMC Console kullanıldığı için çok fazla benzeyen FEM olarak adlandırdığımız FileNet Enterprise Manager’da Folder Classlar , Document Classlar , Custom Objeler gibi oluşturabildiğimiz bütün nesneleri yukarda anlattığımız API’ler veya Web Service’ler ile de oluşturabiliyoruz.  Çalıştığımız kurumda oluşturulan ve repositorye atılan dokümanlarda mutlaka uygulamalarla oluşturulmaktadır ve sonuçta her doküman oluşturulması için FEM’e gidemeyeceğiz. Bunlardan dolayı platformun bize sunmuş olduğu bu geniş yelpaze çok işimize yarayacaktır.

Örneğin : Perl ile geliştirme yapıyoruz , o zaman Web serviceler, .Net ile geliştirme yapıyorsak .Net API, Java kullanıyorsak Java API ve yukarda da tabledan da görebileceğimiz gibi COM API ile eski COM teknolojisini de kullanmak mümkündür ve kullanılmaktadır.

Content Engine Java API : Java programlama dili kullananlar için geliştirilmiş API’dır ve .Net API’ye göre performans avantajları vardır. WebSphere ile EJB transport kullanarak Content Engine’e ulaşırken Web Service ile ulaşmış olduğumuz layer’ın daha alt seviyelerine ulaştığımız için Java.API kullanmak her zaman bize performans kazandıracaktır.

Content Engine .NET API : Microsoft Platformunu kullananlar için tasarlanmış API’dir ve Java.API’nin kodlamasına çok benzer. Bunlardan biri ile kodlama yapıyorsanız biraz daha çaba göstererek diğer API ile kodlama yapabilirsiniz. .NET API transport katmanı olarak CEWS (Content Engine Web Service) kullandığı için performansda Java API kadar iyi değildir fakat .NET API’nin en büyük avantajı .Microsoft WSE 3.0 (FileNet 3.5.2 de WSE 2.0) kullandığımız için KerberosToken ile Single Sign On ile FileNet’e gidebilmesidir. Kısacası Username , password istemeden FileNet’e gidebiliriz .NET API ile.

Content Engine Web Service : Web service olduğu için her plaotformdan çağırabiliriz fakat hem .NET API hemde Java API’ye göre performans kayıpları olmaktadır.  CEWS ile de diğer iki API ile yapılanlar Content tarafında aynen yapılmaktadır.

Şunun yanlış anlaşılmasını istemiyorum: performan kaybı demek yavaş çalışacaktır anlamına gelmemeli, Java API diğerlerine göre daha performanslıdır ve .Net API de CEWS (Content Engine Web Service)’e göre daha performanslıdır ama bütün bunların kendilerine göre avantajları dezavantaları vardır , uygumalarda genellikle performans ön plana çıktığı için makelede performans ön plana çıkarılmıştır.

COM Compatibility : FileNet 3.X sürümlerinde kullandığımız bir teknolojidir, FileNet 4.X ie desteği ortadan kaldırılmıştır fakat bunu da eski uygulamalarımız kullanacaksa 4.X versiyonundan kullanmak için ara bir dll yazar bu dll’de COM API kullanır ve FileNet 4.X kullanacağımız arayüzden bunu çağırarak bu problemi ortadan kaldırırız fakat tüm desteğin daha sonraki sürümlerde kalkacağını düşünmekteyim.

Bu API’leri aynı şekilde Process tarafında da kullanabilmekteyiz ama onu daha sonraki makalelerimizde anlatacağım.

Content Engine .NET API

Microsoft .Net teknolojileri ile geliştirme yapan arkadaşlarımız yukarda da belirtildiği gibi bu API ile FileNet’e connection oluşturma, doküman oluşturma , folder oluşturma, dokümanlarla ilgili security’ler , doküman life cycle’larının kullanımı gibi konularda geliştirme yapabilmektedirler.

Bu API’yi kullanabilmek için dikkat etmemiz gereken çok önemli birkaç konu var, bunlar ;

a-) Client’tan FileNet Content Engine Server’ina ulaşabilmek için FileNet.Api.dll’i ile Microsoft.Web.Services3.dll ‘ni geliştmekte olduğumuz programa refere etmemiz gerekiyor.

b-) FileNet’e Singe Sign On (SSO) ile mi yoksa UserName , password ile mi gideceğiz buna karar veririz. SSO ile gideceksek Active Directory’den alacağımız token kerberos token olmalıdır , username password ile gideceksek de bunu user name token’ı kullanacağız.  Kerberos Token’i sadece .Net API de kullanabileceğimizi de bir kez daha belirtiyorum.

c-) FileNet.Api.dll ile Microsoft.Web.Services3.dll client da olması dışından client’a hiçbirşey kurmamıza gerek kalmayacaktır.  Fakat siz yine de client kurulum yapacağım ve onun üzerinden işlemleri yapacağım diyorsaniz FileNet client kurulumu yapar ve FN_EMNetwork.dll gibi sistemin bizim client’a kurmuş olduğu dll’ler vasıtasıyla işlemlerimizi yapabiliriz.

d-) Windows 7 ile Microsoft WSE 3.0 kullanarak FileNet’e ulaşamıyorsunuz, FileNet’e ulaşmak için WCF kullanmanız gerekiyor bu da clientların örneğin Windows XP’den Windows  7 ‘ye geçiş aşamasını çok zorlaştırıyor ve dikkat edilmesi gereken en önemli konu olarak göze çarpmaktadır.

Buraya kadar FileNet P8 Platformunun bize sunmuş olduğu API’ları kısaca anlatmaya çalıştım ve .NET API için giriş yaptık , bundan sonraki yazılarımızda API’nin kodlanması ile ilgili anlatımlar olacaktır.

Leave a Reply

Your email address will not be published. Required fields are marked *