bilgilerinizi tazeleyin. http://www.w3schools.com/ Dojo örneklerini inceleyin. http://dojotoolkit.org http://dojocampus.com/explorer/ XPages ile ilgili temel bilgileri öğrenin. Jumpstart video’ları Ücretsiz eğitimler (tlcc.com, IBM Virtual Innovation Center...) Beginner düzeyindeki video’lar Wiki makaleleri
ve temalar nasıl kullanılmış? SSJS ve CSJS library’lerin eski tip Script Library’lerden ne farkı var? Extension Library’yi indirin. Kurun, demo veritabanıyla oynayın. Discussion, Teamroom gibi uygulamaları inceleyin. Extension Library’nin nasıl kullanıldığını inceleyin. İleri düzey kontrolleri anlamaya çalışın Küçük bir proje seçin ve deneyin. Soru sorun! LUGTR Forumu, Stackoverflow...
destekler. (!) Türkçe problemleri var Lotusscript Script Library’ler Extension Library hataları Windows 7 problemleri Internal HTTP viewer Port’u değiştirilebilir Source Control desteği (SVN, Mercurial)
için belirli bir Java hafızası kullanır. Varsayılan olarak 48 mb ile başlar ve 256 mb’ı geçmez. Eğer 2 gb üstü RAM’iniz varsa 768 mb – 1024 mb’a kadar hafıza kullanabilirsiniz. Başlangıç seviyesini ise 256 mb üstü bir değere çekerek açılışı hızlandırırsınız.
değiştirmek için şu dosyayı bulun: <Notes Program klasörü>\framework\rcp\deploy\jvm.properties vmarg.Xmx=-Xmx256m vmarg.Xms=-Xms48m Bu değişikliği her versiyon değişikliğinde yapmalısınız (fix pack’ler dahil) Kaynak: http://www.tlcc.com/admin/tips.nsf/tipurlref/20120217
veritabanı kullanıyorsanız Applications listesi uzadıkça uzar. Birden fazla veritabanı içeren projeler için ya da mantıksal ayrım olan veritabanları için gruplamalar yapabilirsiniz (Xpages Projeleri, Satınalma uygulaması gibi...)
yere kaydetmemizi sağlar. Bu sayede birden fazla geliştirici, geliştirdiklerini ortak bir alana taşıyabilir. Versiyonlama, branch oluşturma gibi yararlar da sağladığı için tek başına bir geliştirici için de faydalı bir araçtır. Designer 8.5.3 itibariyle Source Control desteği geldi. SVN, Mercurial ve GitHub desteği var. Detaylar: Declan Sciolla-Lynch’in LS12-AD102 sunumu
Preview özelliği çok yetersiz kalıyor. Authentication yok, log’lara bakmak zor, hata ayıklamak işkence, HTTP’yi kapatıp açmak uğraştırıcı vs. Bilgisayarınızda en az bir domino sonucu çalıştırmak işinizi çok kolaylaştıracaktır. Alternatif olarak, iki partitioned sunucu ile hem geliştirme hem de test platformunu kendi bilgisayarınızda kurabilirsiniz. Örnek: Bir sunucu Extension Library, diğer sunucu Upgrade pack çalıştırabilir. Sanal makineler (VMWare Player ya da Microsoft Virtual PC) ile versiyon ve browser testlerinizi yapabilirsiniz. Test kullanıcıları ve özel login sayfası da işinizi kolaylaştıracaktır.
Hızlı geliştirme (ağ haberleşmesinden kaynaklanan yavaşlık), anında konsolu (Alt- Tab) ve log’ları görebilmek, hızlıca konfigürasyon değiştirebilmek, rahatlıkla kapatıp açmak ve güvenliği gevşek tutabilmek. Geliştirme sunucusu: Birden fazla geliştirici için mutlaka gereklidir. Test sunucusu: Gerçek platformla (production) birebir aynı kuruluma sahip olmalı. Performans kontrolleri, UA testleri ve sürüm demoları için hazır tutulmalı. Lisanslamaya Dikkat! Bu üç tip sunucu da lisans gerektirir...
Kurları Bu arada, Lotus hesabı olmayanlar için de form doldurulacak... Unutmadan, müdürlerimiz sekreterlerinin kendi adlarına form doldurabilmesini istiyor. LOGO tcmb.gov.tr Bu formu avans için de kullanabiliriz sanırım... Yöneticileri SAP’den alalım Olmadı, yöneticileri biz girelim. İki gün içinde onay vermezse üst yöneticiye gitsin... CEO formlarını CFO onaylasın Formları limitlerine göre ayıralım blah blah blah... vs. vs. vs.
System.our.println(XXX) > Domino Console/Log.nsf (veya Java Console) CSJS: console.log(XXX) > Firebug veya türevleri Hata Logları Server üzerinde: [Domino Data Klasörü]\domino\workspace\logs Designer üzerinde: [Notes Data Klasörü]\workspace\logs Ayrıca [Data Klasörü]\IBM_TECHNICAL_SUPPORT\xpages_exc*.log Her zaman: try {...} catch(e) {...}
duyarlı (Özellikle formula’lar: @DbLookup(...)) Context sorunsalı (Scope Variable kullanın!) Java kullanılabilir Java – JavaScript notasyonları farklıdır! Deklarasyon ve casting yok. SSJS, derlenen bir dil değildir. Performansı düşüktür, Designer yalnızca notasyon ve gramer hatalarına karşı uyarır. SSJS, Lotusscript yerine Formula diline bir alternatif olarak düşünülmeli.
harcamayın). Notes objeleri depolamayın Yalnızca ‘Serializable’ objeler için kullanın! Scope Detay applicationScope Her nsf için bir tane yaratılır. HTTP kapatılır ve açılırsa temizlenir. sessionScope Her session için bir tane yaratılır. Belli bir time-out sonrası temizlenir. *** session != authentication *** viewScope Her page için yaratılır. (Aynı sayfada olduğunuz sürece korunur) requestScope Her request için yaratılır. (Sayfa yüklendikten sonra temizlenir)
source tanımlarken WebQuerySave agent çalıştırılabilir. Eski Lotusscript kodları? Çok karmaşık olanları agent’lara aktarabilirsiniz. Ama basit olanları tekrar yazmanız yerinde olur.
büyük sorunu. Geleneksel geliştirmeden farklı olarak XPage‘lerde bazen sunucu tarafında bazen browser tarafında çalışırsınız. İki taraf arasında bilgi alışverişi yapmanız gerektiğinde işler karışır. Alternatifler Pasif veri alışverişi (yükleme sırasında server-side > client-side) Aktif veri alışverişi (partial-refresh ile server-side > client-side) Aktif çift taraflı (RPC ile server-side < > client-side)