Wednesday, December 17, 2008

Reading as a Business Center in UK

Reading is a small city near to London and Heathrow airport. -There are train and couches directly from these centers.- As far as I could see, it is supported to have your business in Reading even though the infrastructure of the city is not sufficient.

Hotels in down town(Novotel, Malmaison, Crowne Plaza, etc) are almost fully booked and if you do not do your reservation in advance, most probably you will have problem! So watch out of this!!

If you need to reach to Thames Valley Park there is a free shuttle service starting from the train station every 8 minutes in rush hours. It is better to take this bus, cause buses and some taxis have a private line. Considering an unbelievable traffic in rush hours, you've better take my advice:) Roads are not big enough and during weekdays you will be surprised to see such traffic.
There is a high street for shopping but most of the shops are closed after 6pm. There is only "The Oracle Shopping Mall" left both for dining and shopping.

This record aims to share knowledge of the city Reading as a business center. Hope you will make use of it!!

AIA Installation Steps

Basic Installation Steps are as follows:

- Install SOA Suite 10.1.3.1
- Upgrade SOA Suite to 10.1.3.3
- Install AIA required patches on 10.1.3.3 (at least 10 patches)
- Install OSR (Oracle Service Registry)
- Deploy BRM Adapter if required
- Install AIA on the same SOA home

You need to take care of installing all the softwares with Oracle user and pay special attention to env variables.
Most importantly, even if the Oracle Universal Installer says the installation is successful, it is crucial to check the installation log files: lessons learned from my experience..
If you need further info, do not hesitate to contact.
Cheers!!

Wednesday, November 5, 2008

Jdev 11g available!!

Jdev 11g is officially released on October 2008 and available on OTN(yuppiiiii).
It is certified on Windows NT/2000/XP/Vista, Linux, and Macintosh and requires JDK 6.
Here is the link to download, enjoy it!!
PS: Please feel free to comment here about your feedbacks. I am sure it will be useful for the readers to have a comparision.

Passive connection 127.0.0.1,6101 missing connect

If you cannot make opmn run during soa installation and get some irrelevant errors on ui and see this error log on opmn.log, do not worry:) You can handle this issue with an easy configuration change on db.

I faced this error when db and soa_suite are designed to be running on the same server. And most probably the default ports are conflicting.

Go to the ons.conf which is under opmn conf of your db_home. Change the settings from "localport=6100 remoteport=6200 loglevel=3" to something like "localport=7100 remoteport=7200 loglevel=3" (of course if they are not in use!). Restart the listener.
Retry the soa installation and enjoy!!

File does not exist: /$SOA_HOME/Apache/Apache/htdocs/em

This error log appears on $SOA_HOME/Apache/Apache/logs/error_log.* when you try to access http://yourhost.port/em and cannot access it.
It just happened to me after successfully installing SOA 10.1.3.1
What you need to do is check whether the ascontrol application is up or not.
Run this to see the applications , their status ,etc
  • opmnctl status -app

You will most probably see that it was down:

15831 ascontrol stopped g_rt_id external true

For ASControl to be functional httpserver must be running and the ascontrol application of one of the oc4j should be up. .So you know what to do now:

  • opmnctl startproc process-type=home application=ascontrol

Check the status now and retry to access it.
Cheers!!

Wednesday, October 15, 2008

Jdev 11g is available now!!

It has been a long time that we were waiting for official Jdev 11. Now is has been released and available on OTN for windows, linux and base(without JDK) install.
Here you go :
http://www.oracle.com/technology/software/products/jdev/htdocs/soft11.html

Friday, June 13, 2008

Update on Blog

It has been some time since I did not update the blog. During this time my team within Oracle has changed. Since it is a regional role starting from June 2008, I prefer to go on in English. My technical focus will be on AIA ( Application Integration Architecture) but still integrated with Oracle Fusion Middleware, SOA and even more.
Thanks for your interest until now and hope to get more..

Friday, February 29, 2008

AD4J(Oracle Application Diagnostic for Java)


Orjini Auptyma JVM Memory Analysis (JAM)'e dayanan AD4J uygulama sunucunuza artı yük getirmeden(ya da min düzeyde diyelim daha realist olsun:)) JVM statüsü hakkında ayrıntılı bilgi edinebileceğiniz bir uygulama. Serverda ya da herhangi başka bir clientda konsol uygulamasını kurup bu konsole da gözlemlemek istediğiniz JVMler için jamagent.war adındaki uygulamayı servera deploy ediyorsunuz.(Öncesinde agent içindeki web.xml de konsolun çalıştığı host u vererek bağlıyorsunuz.)

Servera yaptığınız agent deploymentından sonra restart dahi gerektirmeden konsol uygulamasında JVM ile ilgili ayrıntılı bilgi alabiliyor, o anki heap dumpu bir txt dosyasına alarak sonradan load ederek analiz ettirebiliyor ve hatta daha sonra alınan heap dump ile karşılaştırarak memory leak i tespit edebiliyorsunuz.

Kurulum ve kullanım ile ilgili bilgi için dökümantasyon tabii ki mevcut:
- install guide
- admin guide


Wednesday, February 20, 2008

Jdeveloper 11g Technical Preview

SOA Suite 'in vazgeçilmez parçası olan Jdeveloper'ın 11g technical preview versiyonu hazır ve OTN den ücretsiz indirilebilirsiniz. Bu yeni versiyona şöyle bir baktığımızda 11g ile SOA projelerine farklı bir konsept geldiği rahatlıkla söylenebilir. BPEL, ESB, Workflow vb uygulamaların entegrasyonu için composite kavramı getirilmiş. Artık daha entegre daha uyumlu çalışacakları görülüyor.

ESB yerine mediator kavramı getirilmiş, deployment ve versiyon kontrolü için eksiklikler kapatılmış. Hatta ve hatta SOA kavramı dahi SCH ile değişmiş. Bu kavramsal değişiklikleri kullandıkça yine yazıyor olacağım.

Jdeveloper ile SVN Merge

SVN Pluginini Jdeve indirmek ile ilgili bir yazı yazmıştım daha önce. Ancak SVN Plugininin kullanımında en çok merak edilen ve benim de en çok beğendiğim özelliği 'merge' oldu. Diğer clientların da merge için arayüzleri var ancak ben Jdev'inkini çok beğendim(Hakkını vermek lazım!!). Burada da paylaşmak istedim.
Kod geliştireceğiniz dosya sizin checkout tarihinizden sonra başka biri tarafından commit edildiyse merge ihtiyacı ortaya çıkar. (Commit' e izin verilmez, out-of-date hatası alırsınız.)Zira sizdeki kodun base versiyonu artık değişmiştir. Burada yapılacak şey önce projenizi update etmek(update son versiyonu lokalinize almak değil, sizin lokalinizdeki kod ile repositorydeki son kodu eşleştirmek benzeri bir işlem oluyor!!). Eğer sizin değiştirdiğiniz alanlar ile sonradan gelen koddaki değişen alanlar birbirinden farklı ise sorun yok. Update işleminden hemen sonra projenizi commit edebilirsiniz. Ancak aynı satılarda değişiklik var ise bir conflict durumu söz konusu demektir. Artık conflict olan dosyalarınız ikonlarında bir ünlem işareti belirir(Durum feci anlamında:))

Ünlem işareti çıkan dosya için sizin lokalinizdeki dosya(dosyaadı.mine gibi isimlendirilir) haricinde repositorydeki hali(dosyaadı.rxxx gibi isimlendirilir) ve de conflictten arındırılmış hali(dosyaadı) projede bulunur. Versioning menüsü altında da artık 'Resolve Conflicts' opsiyonu çıkar.
Bu opsiyonu seçtiğimizde karşımıza harkulade bir arayüz geliyor. Bakınız şekil 1-a:

Bu arayüzde sol tarafta sizin commit etme girişiminizden önce gelen son versiyon sağ tarafta sizin versiyonunuz bulunur. Farkılıklar açıkça işaretlenir ve o satırın yanında çıkan ok işareti ile ortada bulunan merge işleminin sonucunda ortaya çıkacak dosyaya eklenir. Kendi versiyonunuzdaki doğruysa sağ taraftaki ok, sizden öceki versiyon doğruysa sol taraftaki ok seçilerek ortadaki alana otomatik olarak eklenir. Yok ikisi de yanlışsa ortadaki file editable dır. O anda edit ederek conflicti çözebilirsiniz. Dosyada birden fazla çakışan alan varsa sol üstte yer alan ok tuşları ile conflictler arasında dolaşabilirsiniz.

Tüm çakışmalar bitince zaten 'merge is completed' yazısını görürsünüz ve projeye eklenen .mine ve .rxx uzantılı dosyalar kaybolur. Projenizi artık gönül rahatlığıyla commit edebilirsiniz.
NOT : Burada önemli olan merge işleminin nasıl yapılması gerektiğini dosyaları edit eden son 2 developerın oturup birlikte karar vermeleridir.
Sorularınız olursa çekinmeyin efem, şimdilik bu kadar.

Thursday, February 14, 2008

DVM(Domain Value Mapping) Yaratmak ve Taşımak

Entegrasyon projelerinde en çok ihtiyaç duyulan şeylerden birisi DVM ler olsa gerek. Her sistemin kendisine göre kabul ettiği değerler vardır. Örneğin x sistemi şehir bilgisini plaka koduna göre kabul ederken y sistemi aynı bilgiyi açık olarak şehrin ismi olarak tutabilir. Bu durumda bu iki sistemin entegrasyonunda şehir değerleri arasında bir dönüşüm yapmak gerekecek ancak SOA nın mantığı gereği de bu değişim kodun içerisinde olmayacaktır. İşte burada ihtiyaca DVM cevap vermektedir. Sistemler arası çevrim xml formatında serverda tutulup, ihtiyaç halinde başka makineye(genellikle dev- test- prod arasında) de taşınabilirliği sağlanmış olmaktadır.
Peki bu DVMler nereden girilir, nasıl kullanılır, nasıl taşınır?
ESB konsolda sol üst köşede yer alan ikonların sonuncusu DVM ile ilgili arayüze götürür. Bu arayüzden yeni DVM yaratabilir, var olanı silebilir, değiştirebilir, elimizdeki DVM xml lerini sistemimize import edebilir veyahut da sistemimizde varolan DVM tanımlarını export edebiliriz.
Biz şimdi ilk etapta yeni DVM yaratarak başlayalım. DVM arayüzüne girdikten sonra sol taraftaki create menüsünden Create a new map seçilir. Açılan arayüz aşağıdaki gibidir.
New DVM yazılı alan yarattığınız DVM in adıdır ve çift tıklayarak değiştirebilirsiniz. Aynı şekilde Domain1 ve Domain2 kolonları sistemlerinizi ifade eder. Yaratmış olduğunuz DVM ile ilgili açıklama Description bölümüne girilirken sistemlere karşılık gelen değerler de satırlara eklenir. Add menüsünden yeni sistemler(kolon) veya sistemlerde değerler(satır) girilebilir. Tüm değerler girildikten sonra sağ üstteki menüden save edilir. Artık makinenize xml li eklemiş bulunuyorsunuz. İsterseniz diğer ortamlara bu DVM leri kaydırmak için export(lokalinize save penceresi açar) ve import u kullanabilirsiniz.
Şehir örneğine göre girilmiş DVM aşağıdaki gibi olacaktır. Daha sonra yarattığınız DVM i transformasyonlarınızda look-up DVM fonksiyonu ile çağırarak, kullanabilirsiniz.

Saturday, February 2, 2008

TOEIC

Bugün itibariyle TOEIC sınavına girmiş bulunmaktayım. ve konuyla ilgili tecrübelerimi paylaşmak istedim.
TOEIC, Test Of English for International Communication, daha çok iş ingilizcesine yönelik TOEFL dan daha kolay olduğunu söyleyebileceğim bir sınav. Türkiye'de de yaygınlaşmaya başlamış. İstanbuldaki sınav merkezi Şişli'de bulunan Standart Test Eğitim. Sınav Amerika kökenli ve yine TOEFL gibi ETS tarafından hazırlanmakta. Sınav için önceden randevu almanız gerekmekte, hatırladığım kadarıyla alabileceğiniz randevu saatleri hafta içi 9:00 ve 13:00 cumartesi 10:00 ve 13:00. Sınava 10-15 dk kala gelmek faydalı oluyor zira optik okuyucu için bilumum kodlama yapmak gerekiyor. Sınav merkezindeki yetkili sınavla ilgili ve sınav esnasında neler yapılabileceği ile ilgili bilgi veriyor.
Listening ve reading olmak üzere 2 ana bölümden oluşan sınavda, listening için her adaya kulaklık dağıtmak gibi bilgisayar bazlı sınavlardaki imkan bulunmamakta. Bunun yerine ortaya konulan bir CD çalardan sadece 1 kez dinlediğiniz bir parça için birkaç soruyu cevaplamanız beklenmekte. Sınav yerinde gürültü olmamasına özen gösterilmesine rağmen dışarıdan gelen bir ezan sesi ya da adaylardan birisinin öksürmesi bile soru kaçırmanıza neden oluyor. Listening sorularının tamamı boyunca hiçbir yere not almaya izin verilmiyor. Bu da işi biraz zorlaştırıyor. Allahtan metinler çok uzun ve karmaşık değil. Genellikle çok açık, anlaşılır bir ingilizce ile gündelik yaşamdan kesitler veriliyor.
100 soruluk listeningden sonra hiç ara vermeden reading bölümüne geçiliyor(Toplam 200 soru 2 saat, süre yetişmiyor gibi bir söylenti olsa da ben 10 dakika kala bitirdim ve çıktım). Reading dediysek öyle diğer sınavlardaki gibi çok uzun metinleri analiz etmenize ana fikri bulmanıza yönelik sorular değil. Çok daha basit bir konsept ile iş mektupları, emailler, formlar gibi metinler üzerinden 1 pasajdan en çok 4 soru geliyor. TOEFL daki gibi normalde hiç kullanılmayan ama sınav için özel olarak hazırlanmanız gereken kelimeler yok. Listeningteki gibi gündelik yaşam yine baz alınmış.
Sınav sonucumu henüz bilmemekle birlikte, upper-intermediate seviyedeki bir adayın özellikle kursa gitmesine, hazırlanmasına gerek olmayan bir sınav olduğunu düşünüyorum. Yine de merak ettiğiniz, aklınıza takılan birşey olursa iletişime geçmekten çekinmeyin derim ben:)

Wednesday, January 30, 2008

MOA'ya giriş

Çalışma arkadaşımız, pek sayın müşterimiz Mustafa Tan'ın da desteklemesi ile yazmaya başladığım blogumda genellikle bana sıkça sorulan soruları yazma isteğindeyim. İlk gönderilerim de bu doğrultuda oldu. Ancak SOA dışında da akıp giden bir hayat, pek tabii ki bizim de kendimizce görüşlerimiz var. Teknik olmayan, non-SOA, gönderilerimi de MOA başlığı altında toplamayı düşünüyorum.
Sizden şu ana kadar gelmeyen yorumlar belki böylece gelir(:)), ne dersiniz??

Thursday, January 24, 2008

BPEL Logger Seviyeleri

Bpel instance larını track etmek için en çok başvurduğumuz yol logları kontrol etmek. Ancak tüm logları en iyi seviyede tutmak serverınızda hem fazladan yer tutmasına hem de log dosyasının okunabilirliğinin ,anlaşılabilirliğinin azalmasına neden olmakta. İşte bu nedenle hangi loggerı ne seviyede açık tutmak gerektiğini bilmek lazım geliyor. Buradaki kaynağımız Oracle Technology Network (OTN)ünde yer alan dökümanlardan BPEL ADMIN GUIDE .
Ayrıntısını yukarıdaki linkten de takip edebileceğiniz logger classları için hangi seviyenin seçilmesi gerektiği ise karıştırılabilinen bir konu:

Off :Log tamamen kapalı. Cehalet mutluluktur modu:)
Fatal :Sadece kritik logları yazdırma. Büyük ihtimalle uygulamanız logu attıktan sonra terminate olmuştur. Artık iş bu logun ne anlama geldiğini çözüp gerekli aksiyonu almaktadır. Şimdiden kolay gelsin:)
Error :Uygulamadaki hata mesajlarını loga yazdırma. Uygulama logu attıktan sonra da normal çalışmasına devam eder. En çok işinize sanırım bu seviye yarayacaktır. Hata varsa yasın yoksa gerisi beni ilgilendirmez modu olarak da bilinir.
Warn :Uyarı mesajlarını loga yazdırma. Uygulama sorunsuz olarak çalışmaya devam eder. Herşey güzeldir.
Info :Hayli ayrıntılı log yazdırma.
Debug :Production ortamında olmaması gereken loglama seviyesi. Debug modda herşeyi yazar. Öyle ki bir transformasyonun tüm adımlarını görürsünüz:) Yüzlerce binlerce satır arasında aradığınızı bulabilirseniz aşkolsun!!
All :Herbişiyi loga yazdırma durumu. Performans olsun, makinede yer olsun hiçbir kaygım yok çatır çatır yazsın diyorsanız kullanın:)

Friday, January 18, 2008

Jdev Performans Konusu

--Save your Jdev!!--
Java IDE lerinin genelinde yaşanan memory sorununu Jdev de de yaşıyorsanız(normalde yapmaz Jdev öyle şeyler ama diyelim ki yaptı:)) ne yapmalısınız?
Jdeveloper, olabildiğinde çabuk cevap verebiliyor olmak için cacheleme mantığını sonuna kadar işletir ve dolayısıyla mümkün olduğunca çok memory kullanır. Jdeveloper ile birlikte OS üzerinde çalışan başka uygulamalarınızın da memory ihtiyacı olduğunda, bunlar aralarında kapışmaya başlarlar ve swap denilen hiç sevmediğimiz o ekran donmasına neden olan hadise meydana gelir. Bu kavgaya elle müdahele etmek isterseniz fiziksel memory nize ve nasıl bir performans ile çalışmak istediğinize bağlı olarak(genellikle fiziksel memory/2) JDEV_HOME->jdev->bin->jdev.conf dosyasındaki xmx (max heap size) parametresini M cinsinden set edin. Jdeveloperınızı başka uygulamarla kavga etmekten kurtarın!!

Thursday, January 17, 2008

"The ordinal 3212 could not be located in the dynamic link library LIBEAY32.dll"

Bu hatayı Jdeve SVN plugini indirdikten sonra Jdevi başlatırken almaya başladıysanız korkmayın!!

libeay21.dll dosyası SSL iletişiminde şifreleme gibi fonksiyonları içerir ve opensource uygulamaların çoğu tarafından kullanılır. Daha önce bilgisayarınıza kurduğunuz bir yazılım dolayısıyla dosyanın bir versiyonu zaten bilgisayarınızda olduğundan svn client için başka bir versiyonu geldiğinde hangisini kullanacağını bilemeyen Jdev açılırken hata verir(onu kim suçlayabilir ki:))

Sorunun çözümü olarak sistem değişkenlerinizde path de SVN clientın yerini başlarda bir yere alarak Jdevi baştan başlatın.

Bu da sorunu çözmezse restart edin:)

Jdev Svn Plugin

CVS ten sonraki versiyon yönetim sistemi(VYS) favorisi olan SVN i Jdeveloper ile de kullanabiliyoruz. Bunun için gerekli olan plugini Jdev Help menüsünden erişebileceğiniz "Check for Updates" linkini kullanarak indirebilirsiniz. Official updateler arasında olan plugini indirdikten sonra versiyonlama sitemi olarak gelen CVS yerine SVN i seçerek devam edebilirsiniz.
Ayrıntılı bilgiyi Oracle Technology Network den edinebilirsiniz. http://www.oracle.com/technology/products/jdev/htdocs/partners/addins/exchange/subversion/subversion.html