-
We are highly satisfied with Vaadin UI Framework in our enterprise Java projects. I recommend it to anyone who are asking advice about what UI framework to use in their enterprise web applications. This article, however, is not about why we like Vaadin. It might be a topic for another... [Read More]
-
Spring XML ve Annotation Tabanlı Konfigürasyonlar Birbirinin Aynısı mı?
By Kenan SevindikYakın bir zamanda Beginning Spring isimli kitabımız üzerinden Spring öğrenmeye çalışan bir arkadaşımdan kitapta okudukları sonrasında kafasında beliren böyle bir soru geldi. Kendisine verdiğim cevap belki Spring ile çalışan veya çalışmaya başlayacak arkadaşların da işine yarayabilir düşüncesi ile buradan paylaşıyorum. [Read More] -
Observations about OData and Spring Data REST
By Kenan SevindikRecently I had a chance to spend some time reading about OData and experiment with Apache OLingo Project in order to understand what OData provides us with in terms of making our REST services more standardized and self-discoverable. I also compared it with Spring Data REST Project, what are their... [Read More] -
Factory Method Pattern Implementation of Spring; FactoryBean
By Kenan SevindikFactory method pattern aims to encapsulate object creation process within a separate method in your system. That’s why it is called as so. Factory methods can be created as either static or instance methods within a class. In Spring Application Framework, although it is possible to make use of static... [Read More] -
A Slight Difference Between Autowire byType and constructor
By Kenan SevindikSpring documentation states that both autowire byType and constructor modes expect at most one bean definition in the ApplicationContext, so that it can be autowired into the depending bean. Here is the excerpt taken from Spring Reference Documentation Table 6.2. Autowiring modes; [Read More] -
A Transaction Gotcha When Using Spring with Hibernate
By Kenan SevindikSpring’s transaction propagation rule SUPPORTS states that if there exists a transaction when the method is called, it should work within that transaction, otherwise it should work outside any transaction. Similarly, transaction propagation rule NOT_SUPPORTED states that if there exists any active transaction when the method is called, that active... [Read More] -
What is the difference between Strategy and Template Method patterns…, if there is any?
By Kenan SevindikIn our Spring book, we discuss transaction management mechanisms available in the Spring Framework, namely declarative and programmatic transactions. It is further explained inside the programmatic transaction demarcation section, how programmatic transaction can be achieved using different methods. One of the ways a programmatic transaction can be achieved is by... [Read More] -
Spring Ekosisteminde Kurumsal Yazılım Geliştirme
By Kenan SevindikULAKBİM tarafından düzenlenen Kamuda Açık Kaynak Konferansı‘ında Spring Framework’ü etraflıca tanıttığımız Spring Ekosisteminde Kurumsal Yazılım Geliştirme isimli bir sunum yaptık. Katılım oldukça yoğundu. Sunumu Spring, kurumsal uygulamaların özellikleri ve orta katman ihtiyaçları ile ilgili kısa bir bilgilendirmenin ardından demo ağırlıklı gerçekleştirdik. [Read More] -
Hibernate ve import.sql
By Kenan SevindikHibernate’in dokümante edilmemiş özelliklerden birisi de import.sql kabiliyetidir. Eğer root classpath’e import.sql isimli bir dosya eklerseniz ve bu dosya içerisine de SQL ifadeleri yazarsanız Hibernate şema export adımından sonra bu SQL ifadelerini çalıştıracaktır. Bu yöntem ile test veya development sırasında örnek verinin DB’ye eklenmesi mümkündür. import.sql kullanırken dikkat edilmesi gereken... [Read More] -
Things to Fix When Upgrading from Spring Security 3.2.x to 4.x
By Kenan SevindikSome things have been changed in Spring Security 4.x compared to previous 3.2.x branches. They are not overwhelming but you may have to deal with them so that your application can work without any problem after upgrading to Spring 4.x release. I noted them down during my upgrade process, and... [Read More] -
Hibernate’de Sınıf İlişkileri 6
By Kenan SevindikBir önceki yazımızda 1:M entity-bileşen türü ilişkileri incelemiştik. Bu yazımızda ise M:N ilişkileri incelemeye başlayacağız. [Read More] -
Hibernate’de Sınıf İlişkileri 5
By Kenan SevindikHibernate’de sınıf ilişkilerini incelediğimiz yazı dizimizin bir önceki bölümünde entity’ler arasındaki 1:M türünden ilişkileri ele almıştık. Bu bölümde ise target sınıfı component yani bileşen olan 1:M ilişkileri inceleyeceğiz. Bildiğimiz gibi bileşenler sadece tek bir entity instance’a ait olabilirler ve kendi başlarına var olamazlar. Başka bir ifade ile ait oldukları parent... [Read More] -
Jar Library is Here, But Why Am I Still Having java.lang.NoSuchMethodError?
By Kenan SevindikThen you might have two different versions of that jar library, or worse you might have two different jar libraries which contain method(s) with exactly same signature. -
Moving libraries of web apps into shared folder
By Kenan SevindikIf you plan to move repeating libraries that several of your web applications depend on to a shared folder of your application server, I would definitely say NO! to this request. One of my clients asked me about centralizing such repeating libraries into a shared folder. Actually, I had written... [Read More] -
Possible bug in Hibernate XML based mapping when using properties element
By Kenan SevindikAssume you have a Person with firstName and lastName properties, and a subclass of it called as Vet. You will have hbm.xml mapping files with the following content. [Read More] -
Error while generating JAXB Classes from XSD File
By Kenan SevindikYou may get following error when you try to generate JAXB classes from your XSD files within Eclipse IDE. [Read More] -
Hibernate’de Sınıf İlişkileri 4
By Kenan SevindikHibernate’deki sınıf ilişkilerini incelediğimiz yazı dizimizin bir önceki bölümünde 1:M ilişkileri incelemeye başlamıştık. Sınıflar arası ilişkilerde en detaylı ilişki türü olan 1:M ilişkileri kaldığımız yerden incelemeye devam edelim. [Read More] -
How to Switch from One DB Instance to Another at Runtime
By Kenan SevindikSometimes we may need to switch from one DB instance to another during runtime. Actually, this is very easy if you are using Spring and the DataSource API in order to obtain DB connections. Let’s look at our solution for such a requirement. [Read More] -
Hibernate’de Sınıf İlişkileri 3
By Kenan SevindikHibernate ORM Framework’ündeki sınıflar arası ilişki kurma yöntemlerini incelediğimiz yazı dizimize üçüncüsü ile devam ediyoruz. İlk iki yazımızda [Read More] -
Be Careful When Using Parent-Child Associations in Hibernate
By Kenan SevindikParent-child relationships are a special case of more general 1:M associations. They are simply part-whole relationships and for Hibernate it is not meaningful that parts (children) should exist without belonging to a whole (parent). [Read More] -
Hibernate’s New Feature For Overcoming Frustrating LazyInitializationExceptions
By Kenan SevindikFor many years LazyInitializationExceptions have become most frustrating point of Hibernate. This exception occurs when you try to access an un-initialised lazy association of a detached entity. In general, entities become detached in three different ways; [Read More] -
Hibernate’de Sınıf İlişkileri 2
By Kenan SevindikHibernate’de sınıflar arası ilişkileri incelediğimiz yazı dizimizin ilk bölümü nden sonra ikinci bölüm ile devam ediyoruz. Bu bölümde M:1 ilişkiler üzerinde duracağız. [Read More] -
Spring ve Tapestry’de IoC Yaklaşımları 2
By Kenan Sevindikİlk bölümde Spring ve Tapestry Framework’lerini IoC container oluşturma kabiliyetleri ve bağımlılıkların enjekte edilmesi konuları üzerinde durmuştuk. Bu bölümde ise kaldığımız yerden bean’ların scope yönetimi ile devam edelim. [Read More] -
Hibernate’de Sınıf İlişkileri 1
By Kenan SevindikHerhangi bir ORM çözümünün nesne model üzerinden çalışmayı sağlayabilmesi için öncelikle uygulamanın nesne modeli ile veri modeli arasında eşleştirme yapılması gerekir. Bu aşamada; [Read More] -
Spring ve Tapestry’de IoC Yaklaşımları
By Kenan SevindikYıllar boyunca bir çok projede Spring kulanmanın getirdiği bir alışkanlık olarak IoC ve dependency injection kavramları benim için vazgeçilmezler arasına girdi. Bu kavramların önerdiği yöntemlerle geliştirilen uygulamalarda sınıflar arası bağımlılıkların çok daha sade ve kolay yönetilebilir olduğunu gördüm. Özellikle test güdümlü programlamada (TDD – Test Driven Development) birim testleri yazarken... [Read More]