Your SlideShare is downloading. ×
Liferay
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

Liferay

2,396
views

Published on

Ceturk Liferay Semineri …

Ceturk Liferay Semineri
15 Mart 2009 Bahçeşehir Üniversitesi

Published in: Technology

0 Comments
3 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
2,396
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
88
Comments
0
Likes
3
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. Muharrem Taç www.muharremtac.com [email_address]
  • 2. Liferay Nedir
  • 3. Liferay Nedir 2000 yılında Brian Chan önderliğinde geliştirilmeye başlanmış bir proje. Önce kar amacı gütmeyen bir oluşumken 2006-2007 yıllarında şirketleşti. Tek ürünleri Portal değil. Social Office adında yeni bir ürünleri var. Bu ürün de Liferay Enterprise Portal tabanlı.
  • 4. Liferay Nedir Açık kaynak kodlu MIT lisansı Portlet container. JSR 168 ve JSR 268. Şu an portal 5.2 sürümünde. Fakat bu sürüm çok yeni Ana Frameworkler Spring ve Hibernate. MVC olarak Struts kullanılıyor. Şablonlarda Struts Tiles ve Velocity kulanılmış.
  • 5. Liferay Nedir Tema, Layout, drag- drop destekli. Türkçe desteği. Exdend edilebilir hazır proje. OpenSSO, CAS Server, OpenID gibi yeni SSO yöntemlerine ve ürünlerine destek veriyor.
  • 6. Liferay Nedir Tema Desteği
  • 7. Liferay Nedir Layout Desteği
  • 8. Liferay Nedir Authentication, SSO
  • 9. Liferay Nedir
    • Desteklenen veritabanları:
      • MySQL,
      • PostgreSQL,
      • Oracle,
      • IBM DB2,
      • Microsoft SQL Server,
      • Sybase,
      • Hipersonic,
      • Apache Derby,
  • 10. Liferay Nedir
  • 11. Liferay Installation
  • 12. Liferay Installation Liferay yükleme kolaylığı için bundle olarak dağıtıldığı gibi tek başına web uygulaması olarak da indirilip yüklenebilir. Bu durumda ilave kütüphaneler için dependencies olan dağıtım indirilmeli. SourceForge adresi : http://sourceforge.net/projects/lportal/
  • 13. Liferay Installation Bundle dağıtımlarların desteklediği; Servlet containerlar : Tomcat, Jetty , Application serverlar : Jboss, Glassfish, Geronimo, JonAS, Resin Tomcat bundle yüklemesi için örneğin liferay-portal-tomcat-5.5-5.1.2.zip açılır Açılan bu dizinde Tomcat’e herşeyiyle kurulmuş konfigüre edilmiş Liferay Portal kuruludur. Kurulu veritabanı HSQL’dir ve test kullanıcısı bulunmaktadır. Ayarlarda değişiklik mesela veritabanı değiştirmek için confCatalinalocalhostROOT.xml değiştirilebilir. webapps/ROOT dizini ana uygulama dizinidir. Portal burada kuruludur.
  • 14. Liferay Installation Portletler de webapps altına deploy edilir. Portlet deployment kullanıcı home dizini altında liferay/deploy dizinine war gönderilmesi ile gerçekleşir. Örneğin Windows için: C:Documents and Settingsmtacliferaydeployportlet.war Liferay PortletAutoDeployListener war dosyasını buradan alarak webapps dizinine kopyalar ve portletleri register etmeye başlar. Bir uygulama içerisinde pek çok portlet olabilir.
  • 15. Liferay Web MVC
  • 16. Liferay Web MVC Liferay 2000 yılından beri geliştirilmekte olduğu için oturmuş bir yapı var ve bu yapıyı tümden değiştirmek zor olduğundan Struts ile devam ediliyor. JSF ile geliştirilmeye devam edilecek söylentileri var. Struts actionları ve forwardları klasik şekilde struts-config.xml içinde tanımlı. tiles-defs.xml, forwardların nereye gideceği bilgisini taşıyor. Önemli ayar dosyaları system.properties, portal.properties Dil dosyaları Language.properties
  • 17. Liferay Extend
  • 18. Liferay Extend Liferay’in sitesinde exdend projesi bulunuyor. Proje build edildiğinde Liferay extend core librarylerini jar halinde paketlerken önemli dosyaları –ext. olarak çoğaltıyor. portal.properties -> portal-ext.properties system.properties -> system-ext.properties tiles-defs.xml -> tiles-defs-ext.xml Language-ext_tr.properties
  • 19. Portletler
  • 20. Portletler Java stadardı. Portletler portale deploy edilen uygulamalar. Birer modül gibi düşünebiliriz. Bağımsız pencereler gibi çalışıyor. Portal ile bütünleşik olabiliyor. Portal’in sağladığı API’lara erişebiliyor. Kendine ait request ve response’u var. RenderRequest RenderResponse gibi. Modern JavaEE Frameworkleri ile portlet yazılabiliyor. Spring, Struts, JSF.
  • 21. Portletler Dr.Naci DAİ’nin kazandırdığı Lomboz ile Eclipse ile entegre olarak Portlet geliştirme imkanı. http://lomboz.objectweb.org Preconfigured with Eclipse Ganymede and Europa for enteprise Java/JEE development Includes Eclipse Webtools Platform, Web Services, JSF and JPA Tools Includes BPEL Editor and builtin support for Apache ODE SOA support with REST, JAX-WS and JAXB Java Portal and Portlet Development Tools and support for Liferay and eXo Portals Bundles Spring IDE, Hibernate and Struts Tools Easy installation with cloudsmith virtual distros Support options
  • 22. Portletler Portlet deployment kullanıcı home dizini altında liferay/deploy dizinine war gönderilmesi ile gerçekleşir. Örneğin Windows için: C:Documents and Settingsmtacliferaydeployportlet.war Liferay PortletAutoDeployListener war dosyasını buradan alarak webapps dizinine kopyalar ve portletleri register etmeye başlar. Bir uygulama içerisinde pek çok portlet olabilir.
  • 23. Portletler 3 Önemli Dosya: portlet.xml : portlet bilgilerinin tutulduğu standard dosya. liferay-portlet.xml : Liferay’a özel yeteneklerin kullanılabildiği liferay specific dosya. Örnek : bir portleti ajaxable yapmak için <ajaxable>true</ajaxable> liferay-display.xml : Liferay uygulama ekleme menüsünde görünecek isim ve kategori ağaç sırası.
  • 24. Portletler 3 Önemli Method: javax.portlet.GenericPortlet içerisinde desteklenen methodlar: doView(RenderRequest portletRequest, RenderResponse portletResponse) portlet görüntülendiğinde tetiklenir. doEdit(RenderRequest portletRequest, RenderResponse portletResponse) Portlet edit modunda çalışır. processAction(ActionRequest request, ActionResponse response) Portlet’te bir event tetiklendiğinde çalışan methoddur.
  • 25. Portletler public void doView(RenderRequest portletRequest, RenderResponse portletResponse) throws PortletException, IOException { WindowState state = portletRequest.getWindowState(); portletResponse.setContentType(&quot;text/html&quot;); PortletPreferences pref = portletRequest.getPreferences(); byte[] utfContentBytes = pref.getValue(&quot;content&quot;, null).getBytes(); String content = new String(utfContentBytes, &quot;UTF-8&quot;); portletRequest.setAttribute(&quot;content&quot;, content); Map userInfo = (Map) portletRequest.getAttribute(PortletRequest. USER_INFO ); PortletContext context = getPortletContext(); PortletRequestDispatcher rd = context.getRequestDispatcher(&quot;/index.jsp&quot;); rd.include(portletRequest, portletResponse); } Örnek Görünüm (doView)
  • 26. Portletler Uygulama Ekleme
  • 27. Liferay Dökümantasyonu
  • 28. Liferay Dökümantasyonu Son derece açık anlaşılır bir dökümantasyonu mevcut. Yeni başlayanlardan uzmanlara kadar ayrılmış seviye dökümanları.
  • 29. Liferay Dökümantasyonu Videolar ile görsel eğitimler (Lifecasts)
  • 30. Teşekkürler