Java'da JVM'i ayağa kaldırırken çeşili parametreler verebiliyoruz. Mesela Tomcat'i çalışıracağınız zaman timezone vermek istereseniz catalina.bat veya Unix sistemler için catalina.sh dosyasında JAVA_OPTS parametrelerine şöyle İstanbul / Türkiye için şu parametreyi ekleyiniz:
-Duser.timezone=Europe/Istanbul
Tomcat'in maksimum adresleyeceği RAM'i şöyle verebilirisiniz:
-Xmx RAMMİKARI G veya m
Muharremtac.com'ıun bulunduğu sunucuda bu değer şöyle:
-Xmx6G
Yani bu sunucu Tomcat'i 6 GB'a kadar RAM kullanabilir. Sunucumuz 8 GB olduğundan sorun olmuyor ama ikinci bir Tomcat Instance açmak istesem yüksek RAM taleplerinde sorun çıkabilir.
Java Teknolojileri ve Programcıları Derneği
olarak Bahçeşehir Üniversitesi'nde düzenlediğimiz geleneksel Java Teknoloji Saatleri'nin (JTS) 10.sunda dilim döndüğünce Android anlatmaya çalıştım. Java Dergisi
'nin sponsor olması ve gerçek bir Java duayeni olan Özcan Acar'ın katılımı benim için ayrı bir gurur kaynağı oldu.
Seminerde Android'i bir işletim sistemi ve Java yazılım geliştirme ortamı olarak kısaca tanıtmaya çalıştım.
Yağmur ihtimaline karşı ilginin yoğun olduğu seminerimize katılan katılmayan herkese teşekkür ederim.
Slideshare üzerinde Android sunumu:
Bu ay 10. düzenlenecek olan Java teknolojileri saatleri 24 Haziran 2010 Perşembe günü Bahçeşehir Üniversitesi Yazılım ve Bilişim Kulübü'nün katkılarıyla Bahçeşehir Üniversitesi Beşiktaş kampüsünde ( D konf salonu - zemin kat konferans salonu ) gerçekleştirilecektir. Katılım ücretsizdir.
Not : Etkinliğe gelirken aman bir şey yemeyin, pizza ve içecekler ücretsiz.
ETKİNLİK SPONSORU :Java Dergisi
Java Dergisi'ni daha yakından tanımak ve satın almak için Java Dergisi Standına uğramayı unutmayın.
İşte etkinlik planımız :
19.00 - 19.10 - Hızlı tanışma seansı - Kartvizitlerinizi yanınızda getirmeyi unutmayınız !
19.15 - 19.30 - Pizza partisi
19.35 - 21.00 - Android Semineri
Semimer planı:
- Android nedir,
- Android'in özellikleri,
- Android versiyonları,
- Android ile yazılım geliştirme
- SDK
- Plugin
- Örnek uygulama
Yazdığı kitaplar, Kurumsal Java konusunda verdiği seminerlerle adından sıkça söz ettiren ilk Türk Java Champion ünvanlı Özcan Acar, Java Dergisi adında basılı bir dergi çıkaracak.
Java Dergisi yakında bayilerdeki yerini alacak.
http://www.javadergisi.com/
Kurumsal Java
sitesinden ve mail grubundan kendi yazdığı Java dökümanları ve tecrübelerini de paylaşan Özcan Acar'a başarılar diliyoruz.
12 February 2010 Friday
Etiketler:
JTPD
Java
Java Teknolojileri ve Programcıları Derneği bir Serbest Çağrışım etkinliği düzenliyor.
Devamı
Java Teknolojileri ve Programcıları Derneği
yeni sitesi yayına başladı. GROU.PS altyapısını kullanan sitede eski konular da mevcut.
Yeni sitenin Java Teknolojileri ve Programcıları Derneği'ne hayırlı olmasını dilerim.
Java dünyasında bir süredir sessiz sedasız bazı gelişmeler oluyor.
Spring Soruce şirketi Grails'i bünyesine kattı,
Kendi Tomcat versiyonunu tc Server
olarak gelişmiş bir yönetim paneliyle duyurdu,
OSGI tabanlı uygulama sunucusu dm Server
'ı hazır hale getirdi,
Cloud computing (bulut bilişimi) adında da Cloudfoudry
adında bir çalışma başlattı. Amazon servisleri için bir çalışma.
Bunlar olurken birden VMWare Spring Source şirketini satın aldı.
VMWare, sanallaştırma, Cloud çalışmaları derken ortaya çıkacak şey Google App Engine benzeri yeni bir Cloud computing servisi olabilir.
Veya daha iyisi donanımlarına güvenen büyük hosting şirketlerine Cloud Computing altyapısı sağlamak olabilir.
Görebildiğim kadarıyla Java Application Server seçiminde üç temel yöntem var:
1) IBM, Oracle gibi büyük şirketlere büyük paralar verilecek ve ürünleri alınacak, arada sırada (mesela çatlama patlama olunca) destek alınacak,
2) Biz açık kaynak uygulamalar geliştiriyoruz ve açık kaynak uygulamaları size kurup kofigüre edip destek veriyoruz diyen küçük/orta büyüklükte bir yazılım şirketine sürekli destek olmaları için paralar verilecek.
3) Büyük banka veya kurumsal şirket kendi yazılım ekibini kuracak ve kendi yazılımlarını kendi yapacak, uygulama sunucusunu da kendi seçip herşeyini öğrenecek. Bu üçüncü durumda Tomcat bile kullanılabilir. Çünkü ilave yazılımlar ile Tomcat de bir uygulama sunucusu haline getirilebilir.
Oracle ve IBM kendi application serverlarını öneriyorlar tabii ki. Oracle eskiden orion üzerinde gidiyordu şimdi BEA dedike ediyor. IBM de bilindiği gibi WebSphere dedike ediyor.
Bunlarda herşey kapalı kutudur. Mesela BEA tamamen aşmış ve kendi JVM'ini bile kendisi yazmıştır. WebSphere'de de IBM veya onun önerdiği danışmanlar olmadan birşey yapmak zordur. Mesela JVM 1.4'den 1.5'e geçemezsiniz. Biz geçemedik en azından.
Sun 'dan da bahseceğim ama bahsedemiyorum çünkü Glassfish'in akıbeti meçhul. Oracle Sun'ı aldıktan sonra ne olacağı pek net değil.
Açık kaynak yazılımlar kullanarak büyük şirketlere büyük sistemler kurmuş ve rüştünü ispatlamış önemli yazılımevlerimiz var. Bunlar tercih edilebilir ama büyük kurumların outsource almalarına ve kendi yazılım ekiplerini kurMAmalarına çok iyi bakmadığım için önermiyorum. Bir Jboss problemi için tatilde olan bir danışmanın gelmesini beklemek ya da tatildeki danışmanı telefonla aramak hiç hoş değil.
Bu yüzden benim önerim şu ya da bu uygulama sunucusu değil, kurumların kendi danışmanlarını yetiştirmesi ve bol bol Javacı istihdam etmesi olacak. Nasılsa uygulama sunucularının yaptığı işler birbirinin aynı.
Java Teknolojileri ve Programcıları Derneği Forum'a verdiğim bir yanıttan alıntıdır.
Ceviz.Net, Java Teknolojileri ve Programcıları Derneği (JTPD) , Bahçeşehir Üniversitesi Yazılım ve Bilişim Kulübü ortak çalışmalarıyla bu ay beşinci Java Teknoloji Saatlerilerini (JTS) düzenliyoruz. Etkinlik 19 Ağustos 2009 saat 19.00 da başlayacaktır.
Devamı
Google'un App Engine adını verdiği teknolojiyi kullanmak için hangi yollardan gitmek gerektiğini ve basit bir web uygulaması yazarak deploy etmeyi ekran görüntüleri ile anlatıyorum.
Google App Engine giriş sayfası.
Burada Sign up
'a tıklıyoruz.
Devamı
Etkinliklerini devam ettiren Java Teknolojileri ve Programcıları Derneği, Bahçeşehir Üniversitesi'nde 30 Temmuz 2009 Perşembe akşam 19:00 - 21:15 arası yeni bir JTS (Java Teknolojileri Saatleri) düzenliyor.
Etkinlikte Vodafone Teknoloji'den Yusuf Boyacıgil Telekom Yazılımları
'nı anlatırken, Levent Aksu Tarihsel Gelişim Sürecinde Kurumsal Java
konulu seminer verecek.
JTS'lerin 4'üncüsü olacak etkinlikte bir de EKÜ (Eller Klavye Üstünde (Hands On)) bulunuyor. Bu çalışmada Altuğ Bilgin Altıntaş Wicket Çatısı
'nı uygulamalı olarak anlatacak.
Kaçırılmaması gereken bir eğitim şöleni.
Detaylı bilgi:
http://www.jtpd.org/public/TheStory.jsf?storyId=163
Kayıt için adres:
http://www.jtpd.org/public/TrainingRegistration.jsf?activityId=181
Eclipse Galileo ile birlikte gelen güzel müjde Eclipse Pulsar oldu.
EclipseME adlı önceki projenin derlenip toplanıp bir de güzel logo yapılmış hali olan Eclipse Pulsar ile Java ME geliştirme ortamınız hazır.
Yeni arayüz ile Nokia ve Motorola gibi SDK geliştiren şirketlerin ürünlerini de doğrudan yükleyebiliyorsunuz.
Eclipse Pulsar web sitesi :
www.eclipse.org/pulsar/
Sun Microsystems'in uzun süredir inatla savunduğu Netbeans IDE'nin 6.7 versiyonu duyuruldu.
Yeni versiyonla birlikte gelen en önemli özellik integrated issue tracking olmuş diye düşünüyorum.
JavaFX desteğinin henüz eklenmemesi ve JavaFX için Netbeans 6.5.1 kullanılmak zorunda kalınması biraz aceye gelmiş bir sürüm olduğu havasını veriyor.
İndirme adresi
Aslında duyurmakta geç kaldım farkındayım.
Java Dünyasının en önemli aracı Eclipse'in 3.5 versiyonu Galileo adıyla yayınlandı.
İndirmek için:
www.eclipse.org/downloads/
Sun, tüm ürünlerinin kodunu açarken Fedarated Access Manager olarak bilinen ürünü OpenSSO adıyla açık kodlu olmuştu.
Liferay çalışmalarımızda OpenSSO kullandığımızda gördük ki Türkçe isimler hatalı geliyor.
Liferay, REST API ile bağlanarak SSO token valid mi diye kontrol ediyor. Bu esnada Türkçe karakterli userdetails.attribute.value değerleri bozuk geliyordu. Şimdi yeni vesiyonla bu durum düzelmiş.
2002 yılından beri bir deneme tahtası olarak kullandığım sitemi ASP, ASP.NET 1.1, ASP.NET 2.0 derken Java'ya da taşımış oldum.
Yeni sitede Spring Framework, Hibernate, Sitemesh gibi altyapılar mevcut. Kullanıcı dostu URL'ler, arama, etiketleme, son yazılar, en okunanlar, rastgele yazılar gibi yenilikler ekledim.
Önceki tasarımı biraz modernize ve optimize etmeye çalıştım.
Bu çalışmalar sırasında içeriğin ne kadar eskimiş olduğunu ve linkerin pek çoğunun yok olduğunu ya da değiştiğini gördüm.
Yorum ekleme yapısı var ama iyileştirmeler yapıyorum.
Beğeni ve eleştirilerinize sunulur.
Memleketimiz Java Dünyasının genç üstatlarından Melih Sakarya'nın blogu Java'nın hemen her uygulama alanından güzel örneklerle dolu.
Java Teknolojilerine ilgi duyan herkese şiddetle tavsiye olunur.
Adres : www.melihsakarya.com
Sadece ihtiyacım olduğu için aradım ve başkalarının da ihtiyacı olduğunu gördüm. Başlamış bir proje var. Şu aşamada dosyaları Open Office formatında indirmeye ve çalıştığınız dosyayı Google Dökümanlara göndermeye yarıyor ama kullanışlı olmuş.
http://code.google.com/p/ooo2gd/
Uygulama Java'da yazıldığı için makinenizdeki Java'yı Open Office ayarlarından tanıtmanız lazım.
SQL Server 2005 veritabanı üzerinde hibernate ile tablolarınızın otomatik olarak yaratılması için hbm2ddl kullanıyorsanız bazı tablo isimleri nedeniyle tablolarınızın doğru olarak yaratılmadığına şahit olabilirsiniz.
Mesela MESSAGES ve PARAMETERS bu gibi reserved isimler. Aslında reserved olmasının nedeni bu isimde sistem tabloları olması.
Table create işlemi başlayınca bu tabloların yaratılması için başına dbo. koymak gibi bir çözüm buldum. Ne denli doğrudur bilemiyorum ama sorunu çözüyor. Mesela MESSAGES adında bir tablonuz varsa hbm.xml dosyasında yeni adı : dbo.MESSAGES olacak.
Alter işleminde ise bu ön eki kaldırmazasanız hata alabilirsiniz ve alter işlemleri de gerçekleşmez. Bu yüzden tablolarınız yaratılınca mutlaka tablonuzu eski adına geri döndürün.
Groovy scripting dili, Hibernate, Spring gibi Java teknolojilerinin gücünü ardına alarak son derece hızlı uygulama geliştirme süreçlerine olanak sağlayan Grails makalelerinin ilkini Ceviz.Net'te yayınladım.
Ceviz.Net Grails makalesi
Bir teklif üzerine Blackberry üzerinde bir JavaME uygulması yapmamız gerekti. Olay gayet basitti. HttpConnection ile bir kaç ekranlık bir akış uygulanacaktı. Önce bir login işlemi sonra bazı bilgiler gösterilecek sonra da fotoğraf upload edilecekti.
Fakat bilişimcilerin yakasını hiç bırakmayan Murphy burada da yanımıza geldi. Önce olayın HttpConnection olmadığnı anladık. Olay web servisleri ile yürüyecekti. Web servisleri de bilin bakalım ne ile yazılmış. Tabii ki Java interopability problemleriyle saç baş yoldurtan .NET ile...
Fakat hain emellerime alet etmek için eski dostum NetBeans'e danıştım. O da bana hemen saniyeler içinde .NET uyumlu olmayan ama JavaME uyumlu web servis clientı yarattı. Uyumlu hale getirmek için de WSDL ile oynadım. WSDL'da tip datetime ise string yaptım. unsignedByte ise base64ByteArray'e çevirdim ve sağlam Java stubları ortaya çıktı. Hatta bu stub'lar Blackberry simülatöründe de çalıştı.
Ama simülatörde çalıştı.
Gerçek yüklemede bu işlem için gerekli jar'ların elimizdeki versiyonda yüklü olmadığını anladık. Acilen JavaME için SOAP mesajı yaratan birşey bulmam gerekti ve aradığımı Ksoap2
adlı açık kaynaklı uygulamada buldum. Bu proje taşınabilir aygıtlar için soap mesajları oluşturuyordu. Fakat Murphy gene yakamı bırakmadı ve bu sefer de Ksoap2'nin ürettiği SOAP mesajlarının .NET uyumlu olmadığını anladık. Zaten açık olan kodu projeye ekledim ve satır by satır debugging ile SOAP mesajlarını .NET uyumlu hale getirdim.
1 hafta gibi kısa bir sürede bazı geceler hiç uyumadan çalışarak demoyu yetiştirdik.
Masum bilişimcinin Murphy ile mücadelesini ibretle okudunuz.
Bundan yaklaşık beş ay öncesine kadar Java ile portallar yazıldığını duyar, portlet widget, gadget gibi kelimeleri de kulak kabartarak dinlerdim. Ama beş aydan beri işin içine tamamen girmiş bulunduğumuzdan şirket olarak da bu konsepte hakim olduk.
Burada sözünü ettiğimiz portal kavramı aslında bir tür web tabanlı uygulama çatısı. Siz uygulamalar yapıp portala deploy ediyorsunuz ve işin ilginç yanı burada kullandığınız framework Struts, Spring ya da JSF olabiliyor. Önyüzde sayfalarınız sadece body içinde ne varsa onlardan oluşuyor. Formlarınız, metinleriniz en üstte bir HTML konteynırı içinde bulunuyor. Liferay gibi portaller kendilerine ait veritabanlarında portletlerin konu ve ayar bilgilerini tutuyorlar, kullanıcı yönetimi için de api sağlıyorlar.
Liferay'i diğer portlallerden ayıran en önemli özelliği açık kaynak olması ve kendine ait genişletilebilirlik imkanları.
İlerleyen zamanlarda Liferay hakkında yazmaya çalışacağım.
27 Nisan Pazar günü Genç Girişimciler Derneği'nde Genel Müdürümüz Nuri Besen ile birlikte sunmaya çalıştığımız Spring Framework Semineri'nin ppt ve örnek uygulamasını indirebilirsiniz.
Uzun süreden beri Biletix'in PHP'den Java'ya taşınmasını örnek gösterip Javacılık'a baş koymakla ne kadar iyi ettiğimi söylüyordum ki birden Sahibinden.com gibi devasa bir Java kalesi PHP'ye geçti.
Bu da yetmezmiş gibi ne zaman Biletix'e girsem "Şu an sunucularımız çok yoğun lütfen bekleyiniz" mesajını alıyordum ve bu durum çok canımı sıkıyordu. Normalde bu çapta dev bir şirketin hele Ticketmaster ile de anlaştıktan sonra altyapı olarak minimum 3 makineli bir application server cluster kullandığını sanıyordum ki bugün aşağıdaki görüntüye tesadüf ettim.
Evet koskoca Biletix, Java diye Tomcat üzerinde çalışan bir uygulama kullanıyor. Eğer sistemin önünde bir loadbalancer varsa ve arkada pekçok Tomcat duruyorsa birşey diyemem. Ancak ilerisi için hiçbir Java teknolojisi kullanılmayacakmış gibi en azından JBOSS gibi bir uygulama sunucusu düşünmemiş olmaları çok yanlış.
Tabi güvenlik sorunsalı olarak da bu şekilde sunucu isminin görünmesi insanın aklına binbir türlü soru işareti getiriyor.
Umarım bana bu bu ekran görüntüsünü yayınladığım için kızmak yerine sistemlerini ve güvenlik düzeylerini iyileştirirler.
Java'nın karizmasını çizmeye kimsenin hakkı yok.
Martı Genel Müdürü Nuri BESEN 20 yıllık IT tecrübesini http://nuribesen.blogspot.com
adresinden yazılımcılarla paylaşıyor.
Blogda Java developerların ender karşılaştıkları sorunlara kesin çözümler ve Sonic, Actional gibi ürünlerle temsil ettiğimiz SOA makaleleri bulacaksınız.
IBM WebSphere'in 6.1 ve muhtemelen 7.0 sürümlerinden sonrasına temel teşkil edecek olan Apache Geronimo Application Server için kolay kurulum dökümanı. MySQL driverını ve muhtemelen kendisinde bulunmayan bütün database driverlarını otomatik olarak dowload eden süper bir uygulama sunucusu olduğunu da ekleyeyim.
Ün ve kullanım popülaritesi olarak geleceğin Tomcat'i olarak bakıyorum Geronimo'ya
http://cwiki.apache.org/GMOxDOC20/qu...impatient.html
My environment : Java5, Hibernate 3, Spring 2.0.5, Eclipse Europa (3.3),Tomcat 6, SQL Server 2005 Express
Procedure
---------------------------------------------------------
CREATE PROCEDURE PROCEDURE_DENEME
@anchor varchar(10)
AS
SELECT ANCHOR, BASLIK
FROM ANASAYFA
WHERE ANCHOR=@anchor
Mapping
-------------------------------------------------------
<?xml version="1.0"?>
<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping
DTD//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
<hibernate-mapping package="org.btdeneyim.model">
<class name="Anasayfa" table="ANASAYFA" lazy="false">
<cache usage="nonstrict-read-write"/>
<id name="id" column="METIN_ID" type="integer">
<generator class="identity"/>
</id>
<property name="baslik" column="BASLIK" length="255" type="string"/>
<property name="anchor" column="ANCHOR" length="255" type="string"/>
</class>
<sql-query name="procedureCalistir" callable="true">
{call PROCEDURE_DENEME(?)}
</sql-query>
DAO Method
------------------------------------------------------
public List procedureCalistir() {
Query queryObj =getHibernateTemplate().getSessionFactory().getCurrentSession().getNamedQuery("procedureCalistir");
queryObj.setParameter(0, "deneme");
List procedureList = queryObj.list();
return procedureList;
DATA SOURCE CONFIGURATION
-------------------------------------------------------
<Resource name="jdbc/btdeneyim" auth="Container" type="javax.sql.DataSource" maxActive="100" maxIdle="30" maxWait="10000" driverClassName="com.microsoft.sqlserver.jdbc.SQLServerDriver" username="sa" password="xxxxx" url="jdbc:sqlserver://localhost:1433;databaseName=BTDENEYIM" defaultAutoCommit="true" removeAbandoned="true" removeAbandonedTimeout="60" logAbandoned="true"/>
26 August 2007 Sunday
Etiketler:
Java
Bir objenin içindeki methodu parametre ile invoke edekcekseniz parametrenin mutlaka object olması gerekiyor.
25 August 2007 Saturday
Etiketler:
Java
IBM
Java performance tuning yazılımlarından olan ve aslında epey önemli işler başaran Jprobe
ile IDE ve Application Server entegrasyonu yaparsanız sorun yaşayabilirsiniz.
IBM RAD 6 ve WAS 5.1 ile böyle bir kasılma yaşadım oradan biliyorum. Session'ın içineki objeleri Jprobe ile göremeyeceğimi anlayınca uninstall etmeye kalkıştım fakat her taraftan patladı ve tekrardan aynı yazılımı kuzu kuzu yeniden yüklemek durumunda kaldım.
İyi geçininiz ve üzerine gitmeyiniz efendim.
07 August 2007 Tuesday
Etiketler:
Java
Internet tarayıcılarında çıktının daha çabuk render edilmesi için gzip sıkıştrıması ya da mod_expires kullanılması yaygın. Bir de Google'ın kullandığı bütün response'u tek satırda gösterme metodu var.
Çalışmalarını sürdürdüğüm yeni sitede kullanacağım aşağıdaki filter, tüm responsu tek satıra indiriyor.
HtmlBoslukSilFilter.java
package com.muharremtac.utils;
import javax.servlet.Filter;
import javax.servlet.FilterChain;
import javax.servlet.FilterConfig;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
import javax.servlet.http.HttpServletResponse;
import java.io.PrintWriter;
import java.io.StringWriter;
import javax.servlet.http.HttpServletResponseWrapper;
import java.io.IOException;
public class HtmlBoslukSilFilter implements Filter{
public void init(FilterConfig filterConfig) throws ServletException{
}
public void doFilter(ServletRequest request,
ServletResponse response,
FilterChain chain) throws IOException, ServletException {
StringWrapper wrapper = new StringWrapper((HttpServletResponse)response);
chain.doFilter(request, wrapper);
String responseString = wrapper.toString();
response.getWriter().print(responseString.replaceAll("\n", "").replaceAll("\r", ""));
}
public void destroy(){}
class StringWrapper extends HttpServletResponseWrapper {
StringWriter writer = new StringWriter();
public StringWrapper(HttpServletResponse response) { super(response); }
public PrintWriter getWriter() { return new PrintWriter(writer); }
public String toString() { return writer.toString(); }
}
}
Java FX denen yenilik ile uğraşırken gördüm ki;
JDK 6 gerekiyor,
https://openjfx.dev.java.net/
adresini iyi kurcalamak gerekiyor,
Classpath olarak belli jarların dizinin verildiği bir tanımlama yapmakgerekiyor,
İstenirse JavaFX Eclipse Plugini
'ni indirmek ve Eclipse'i JDK 6'ya göreayarlamak gerekiyor...
Ama çalışan şey kesinlikle Swing ya da türevlerinden çok daha hızlı.
Microsoft'un SilverLight (XAML) teknolojileri ile yarışabilecek türden...
Java Teknolojileri Derneği'nin kapanmasının ardından Java Teknolojileri ve Programcıları Derneği'nin kısa sürede açılmasına çok sevindim. Yeni başkan Levent AKSU'ya ve derneğe başarılar dilerim.
Derneğin web sitesi : www.jtpd.org
Bir kerede birde fazla uygulamaya giriş yapmak (login olmak) için çeşitli öneriler vardı. Mesela bir keresinde Java Identity Manager seminerine gitmiş ve konseptten çok etkilenmiştim. Microsoft da Passport ile bunu denemişti fakat çok başarılı olduğu söylenemez. Vista'da bu işi en azından lokal makineler biraz başardı. Olayın ucundaki konu güvenlik kaygıları olunca isanlar ister istemez en azından internet üzerindeki bağımsız projelerde bu yöntemi pek kullanmak istemiyorlar. Fakat büyük kurumların arkaplanında sürüyle bağımsız uygulama yer aldığı için mecburen SSO (Single Sign On) yapmak zorundalar. Mesela Google IG'ye ayrı Gmail'e ayrı user password ile login olduğunuzu düşünebiliyor musunuz?
Bu iş için şu ana kadar geliştirilmiş en başarılı çözüm OpenID gibi görünüyor. Neredeyse tüm önemli web dillerini destekleyen OpenID'yi başta AOL olmak üzere büyük şirketlerin tamamı kullanıyor.
Detaylı bilgi:http://openid.net/
Bu arada ben de yakında lansmanını yapacağımız önemli bir projede Jforum ile Springframework uygulamalarını birleştirmeye çalışıyorum. Jforum'un sitesinde önerilen yöntemler genelde son derece güvensiz ve mesela tek bir cookie'ye username yazarak login olabilmeyi anlatmışlar. Tabi bu da Jforum kullanan sitelerin SSO yapması durumunda anında ele geçirilebileceği anlamına geliyor. Bilinçli olarak yapılmış olabilir veya arkadaşlar Java ile ilgilendikleri kadar güvenlik ile ilgilenmemiş olabilirler.
Jforum
, Java ile yazılmış başarılı bir forum yazılımı. Tomcat'te çalışabilmesi ve multidatabase yeteneği sayesinde kısa zamanda çok başarılı olur diye düşünüyorum.
Tabii ki Open Source.
Mayıs 2005'de kurulan ve verdiği seminerler ile tüm Javacıların gönlünde taht kuran Java Teknolojileri Derneği kapanıyor.
7 Mart 2007 tarihinde alınan tasfiye kararı ile derneğin kapatılmasına karar verildi.
Konu ile ilgili firstname.lastname@example.org grubunda gerekli açıklamalar yapılmaya devam ediyor.
21 February 2007 Wednesday
Etiketler:
Java
Bir konuda en iyi yazılım olmak bazı durumlarda kafa karıştırıcı sonuçlar doğurabiliyor.
Issue Tracking konusunda bir numara olan Jira
böyle bir yazılım.
Bir süre önce Apache'nin de Jira kullandığı ortaya çıkmış ve "Özgür yazılım üreten bir kurumun ticari bir yazılım kullanması ne kadar doğru." tartışmasını başlatmıştı.
Horoza sormuşlar :
- Tavuk mu yumurtadan çıkar yumurta mı tavuktan?
- Beni ilgilendirmez, çiftleşir geçerim, demiş.
Böyle tartışmara verilecek tek yanıt bu olmalıdır:
- Beni ilgilendirmez, öğrenir geçerim.
Çünkü bu tartışmalar "Tavuk mu yumurtadan çıkar yumurta mı tavuktan?"
tartışması gibi uzar gider. Gerçek olansa hiç beklemediğiniz bir anda şirketinizin sizden bu yazılımı öğrenmenizi istemesi ve yeni bir heyecanın başlamış olmasıdır.
SOA Suite
'i indirirseniz mutlaka Oracle IDE'si olan Jdeveloper
'ı da indirin. SOA Suite içindeki örnek projelerin tamamı Jdeveloper için hazırlanmış.
Web tabanlı team system olan Subversion macerası.
Windows Svn'i http://downloads.open.collab.net/collabnet-subversion.html
adresinden indirdim.
Svn kurumu için Apache 2.0.59 indirdim, (tabi httdocs klasörünü yedekleyerek) önceki Apache'yi kaldırdım ve 2.0.59'u yükledim. Önceki pojelerin ayarlarını yaptım, sorunsuz olarak çalıştıklarını gördüm ve Svn kurulumuna geçtim.
Svn installer httpd.conf dosyasına aşağıdaki satırları eklemiş:
LoadModule dav_svn_module "C:/Program Files/Subversion/bin/mod_dav_svn.so"
LoadModule authz_svn_module "C:/Program Files/Subversion/bin/mod_authz_svn.so"
Sonradan ben C:\repository dizinini oluşturak httpd.conf dosyasına şu satırları ekledim:
<Location /repos>
DAV svn
SVNPath "C:\repository"
</Location>
Apache'yi restart ettim ve http://localhost/repos URL'sinde bir çıktı gördüm.
command prompttan
cd C:\Program Files\Subversion\bin
ve
svnadmin create C:\repository
komutu verdim. Svn kendi dizinlerini oluşturdu.
Buraya Eclipse ile bağlanmak için
http://subclipse.tigris.org/update_1.2.x
adresindeki plugini yüklemek istedim fakat Eclipse Mylar Projesini yüklememi söyledi.
http://www.eclipse.org/mylar/dl.php
adresindeki Myları yükledim ve Subclipse de yüklendi.
Şimdi open perspective -> SVN Repository Exploring dediğimde local Svn'e bakabiliyorum.
Oraya da test projemi ekledim, syncronize yapabiliyorum.
Aslında yeni makaleyi Oracle Jdeveloper hakkında yazacaktım ama Eclipse Web Tools Platform`u görünce birden fikir değiştirdim.
Evet efendim yeni yazımız Eclipse Web Tools Platform hakkında yararlı olması dileklerimle.
Devamı
24 November 2005 Thursday
Etiketler:
Java
Linux
Fedora Core 4 önceki sürümlerine nazaran Java`ya olan desteğini iyice arttırmış. Yükleme paketleri içerisinde Eclipse 3.1 platformu, Tomcat 5 servlet container, Struts, Jakarta, Log4j ve Ant yerleşik olarak bulunuyor.
Java ile Linux üzerinde yazılım geliştirmek için Fedora Core 4 çok uygun.
Linux veya Unix edinme imkanı olmayıp internet üzerinden ssh ile shell hesaplarına bağlanıp çalışmak isteyenler zaten yıllardan beri bu imkanı kullanıyorlardı. Şimdi de Sun Secure Global Desktop ile internet üzerinde Applet ile yüklenen Linux masaüstü imkanı Linux meraklılarına açılmış durumda. Tarantella
, SuSE
ve opensource.region-stuttgart.de
teknolojleri ile bir uzaktan masaüstü Linux hizmeti açılmış.
İsterseniz http://opensource.region-stuttgart.de/index.php?main=8⊂=8_0
adresindeki Start Linux linkine tıklayarak exe`yi indirin isterseniz https://stux.region-stuttgart.de/tarantella
adresindeki appletin yüklenmesini bekleyin. Applet için bilgisayarınızda Sun Java Runtime Environment yüklü olması gerekli.
İnternet hızınız iyiyse bir KDE masaüstünü gayet rahat kullanabilirsiniz.Linux`u merak edip bir türlü kurmaya cesaret edemeyenler için iyi bir fırsat.
Sanıyorum geçen seneydi.Bir laptopa ASP ile yazılmış bir uygulamayı kurmam gerekiyordu. Uygulama SQL server veritabanını kullanıyordu. Benim için gayet kolay bir iş diye düşünmüş ve akşam 21:00`den gece 03:00`e kadar uğraşmıştım çünkü sistemde işletim sistemi olarak Windows XP Home Edition ve sistemciyi çıldırtma yazılımı olarak Deepfreeze
yüklüydü. XP Home`a IIS yüklemek kolaydır aslında. Bununla ilgili birsürü makale vardır. Fakat elinizde bir XP Home CD`si olacak yoksa Professional CD`si ile olmuyor(muş).Neyse ki o akşam beni Sun ASP
kurtardı.Eski adıyla Chilisoft olan yazılımı Sun Microsytems satın almış ve Sun ASP adını vermişti. O akşam beni en çok uğraştıran şey sitede Apache`de çalıştığının söylenmesine karşılık Apache 2.0`da hiç çalışmaması ve Apache 1.3`de de istediğim gibi çalışmaması olmuştu.Ben de Sun Application Server kurmuş ve Sun ASP`yi burada çalıştırmıştım.Deepfreeze ise başka bir bela. Parolayı bilmiyorsanız yapacak hiçbirşeyiniz yok. Ben de o akşam küçük bir brute force denemiş ve üçüncü denemede parolanın 12345 olduğunu bulmuştum.
Sonunda uygulamayı çalıştırmayı başarmıştım ama Windows XP Home Edition + Sun Application Server + Sun ASP + ASP uygulamasından oluşan hilkat garibesi bir hibrid teslim etmiştim.
JSP Desteği Verin
Hosting şirketlerinin şu anda yapabilecekleri en büyük çıkış JSP desteği vermek olacaktır.Java alemindeki en büyük taleplerden biri JSP hosting hizmeti. Bu konuda korkunç bir talep var.Bir şirketi ve sunucusu olanların tek yapması gereken şey sisteme bir Tomcat
kurmak.Port hiç önemli değil. 8084`e bile razıyız. Yeter ki JSP uygulamalarımız çalışsın.Daha kurumsal düşünenler Jboss
kurabilirler. Bu sunucular için kimseye beş kuruş para vermeniz gerekmiyor.
Başta anlattığım hikaye ile ikinci bölümdeki JSP talebini birleştirdiğim zaman şu adres karşımıza çıkıyor : http://www.lunarpages.com/
Lunarpages adlı web hosting şirketi PHP,PYTHON,PERL,JSP ve ASP desteği veriyor.Farkettiyseniz ASP.NET yok. Niye ? Çünkü bu sistem bir POSIX. Sistem yöneticileri biraz daha kasarsa Mono
ile buraya ASP.NET de kurabilir.Kim demişti Windows makineleri daha çok web teknolojisi destekliyor diye?
Java Kitap Projesi
ile Javacı olsun olmasın herkesin takdirini kazanan ve Java ile Yazılım Tasarımı
kitabı ile bu takdiri daha da yukarıya çıkaran Altuğ B.ALTINTAŞ'ın kurduğu Java Teknolojileri Derneği
Hibernate , Struts Framework, Java Micro Edition ve JDBC seminerleri düzenliyor. Ayrıntılı bilgi ve seminer katılım formları için adres :
www.java.org.tr
Bu adreste
J2ME (Java 2 Micro Edition) ile bir database bağlantısının nasıl yapılacağı anlatılmış. Adresi incelediğimizde aslında bunun doğrudan bir veritabanı bağlantısı olmadığını ve web sunucusundaki bir txt dosyasından okuma ve yazma yapıldığını görebiliyoruz.
Yazının devamında da bir web servisi istemcisinin bir mobile uygulamada nasıl çalıştırılacağı anlatılmış. Bu kod için kSOAP
ve kXML
kütüphaleri kullanılmış.