Kayıtlar

ORA-00054: resource busy and acquire with NOWAIT specified

Oracle tablonuz lock olmuş demektir. Açmış olduğunuz bir sürü session ve process tablonuz read-only yaptı. Kurtulmak için bu processleri kill etmeniz gerekiyor.  Aşağıdaki sorguyu çalıştırın; select a.sid, a.serial# from v$session a, v$locked_object b, dba_objects c  where b.object_id = c.object_id  and a.sid = b.session_id and OBJECT_NAME='tabloismi'; sorgu sonucundan dönen sid ve serial ikilerinin kullanıp kill edin. Hepimize geçmiş olsun :) alter system kill session 'sid,serial#'; 

ZK WEB ÇATISI İLE SPRING HIBERNATE KULLANIMLARI

      Daha önceki yazımızda Spring i yalın olarak ZK ile beraber ayağa kaldırmıştık. Şimdi ise Hibernate ile çalışan halini paylaşıyorum. https://github.com/Gmotes/ZKHibernate adresinden örnek kodu inceleyebilirsiniz.

ZK ÇATISI İLE SPRING ENTEGRASYONU

Resim
      ZK bildiğiniz üzere popular bir java web çatısıdır. http://www.zkoss.org/  adresinden erişebileceğiniz çatının CE versiyonu ücretsiz olarak kullanabiliyorsunuz.Bu versiyonu kullanarak geliştirme yapacağız. Bunun yanında PE,EE versiyonları da bulunmaktadır.       CE versiyonu sadece "VariableResolver" özelliği ile Spring entegrasyonu sağlar. (Diğer versiyonlarda Security vs. diğer entegrasyonlarda  yapılabilimektedir.) Bu şekilde Spring kabından ihtiyaç olan bean alınarak ZK görüntüsüne yansıtılabilinir.       ZK görüntüleri ".zul" uzantılı dosyalar ile tanımlanırlar. Bileşenler "http://www.zkoss.org/2005/zul" uzayına bağlı olarak çağrılırlar. Sürekle-Bırak desteği için Netbeans  7.1 versiyonunu indirip ZK CE 7.0 destekleyen REM dosyasını indiriyoruz. İlgili dosyayı linkten indirebilirsiniz. http://plugins.netbeans.org/plugin/52406/rem7-0-0ce         Bu şekilde Netbeans e ZK desteği sağl...

TASARIM KALIPLARI SERİSİ -2 BRIDGE

    Tasarım kalıpları serimizin bu yazısında Bridge tasarım kalıbını inceleyeceğiz. Bridge tasarım kalıbı kodlama yapımızı daha esneterek bakım ve geliştirmeyi kolaylaştırır. Dilerseniz örnekleyip anlatalım.  Üretim için interface tanımlıyoruz;   public interface Uretici {      public void uretOtomobil();     }   Burada genel bir üretici tanımladık şimdi bu interface i implement eden iki sınıf yazalım.   public class Uretici1 implements Uretici {    private Fabrika1 fabrika = new Fabrika1();      public void uretOtomobil(){               fabrika.uretHatchbackOtomobil();          }   }    public class Uretici2 implements Uretici {    private Fabrika2 fabrika = new Fabrika2();      public void uretOtomobil(){               fabrika.uretSedanOto...

TASARIM KALIPLARI SERİSİ -1 SINGLETON

Merhabalar,        Tasarım kalıpları serimizin birinci yazısı Singleton ile yazılarımıza başlıyoruz. Singleton tasarım kalıbı "Oluşturucu" tip dediğimiz tasarım kalıplarından biridir. Kastımız bu yapıyı kullanarak istediğimiz bir sınıfın sadece tek bir örneğinin sistem üzerinde kullanılmasını zorlamaktır. Bunun anlamı uygulamamız yüklendiğinde hafıza ilgili sınıfa tek bir örnek olacak ve uygulama ihtiyaç duyduğunda tek bir adres üzerinden bu örneğe ulaşacak.        Tahmin ettiğiniz gibi hafıza teknik bir terimden bahsediyorsak bunun yazılımsal karşılığı "static" olacaktır. Aşağıda Singleton'ın kod bazında dökümü görülmektedir. public class SingletonDemo {     private static volatile SingletonDemo instance = null ;     private SingletonDemo ( ) { }     public static SingletonDemo getInstance ( ) {     ...

Tomcat startup.sh extenal file path management

Tomcat e uygulamamızı deploy ettikten sonra log4j den ötürü veya farklı bir sebepden dolayı uygulama içerisinden dışardaki bir dosya ile çalışmak durumunda kalabilirsiniz. Bu durumda dosya path ini full olarak yada relative verebilirsiniz. Bu durumda iki yaklaşımınız olabilir. Full Path: Bu durumda işletim sisteminize göre farklı şekillerde verebilirsiniz.  log4j.appender.R.File = /opt/test/uygulama/tomcat7/uygulamalogs/uygulama.log ama buraya baktığınızda projenin deploy edildiği bilgisayara özgü bir işlem yaptığınızı göreceksiniz. Dolayısıyla projenizi farklı bir yere deploy ettiğinizde problem yaşayacaksınız.    Ancak full pathi kullanmamızı mümkün kılan işletim sistemi değişkeni olan ${catalina.base} var :)  log4j.appender.R.File =  ${catalina.base}/uygulamalogs/uygulama.log şeklinde olabilir. Relative Path : Bu durumda başlangıç pathiniz tomcati koşturduduğunuz path oluyor. Örneğin tomcat in altındaki bin klasörünüm altına kadar girip start...

COMMON TABLE EXPRESSION (ORTAK TABLO IFADELERI)

SQL Server veritabanında farklı tablolarda bulunan bir çok bilgiye sıklıkla ihtiyaç duyarız ve çoğu zaman bu işlem sadece birkaç tablodan veri alınarak çözümlenemeyebilir. Çoğu kez farklı tablolarda bulunan bilgi topluluklarının birbiriyle karşılaştırılması gibi karmaşık işler yapmak durumunda kalabiliriz. Bu nedenle SQL Server tablolar ile çalışmamız yanında bize görüntüler(view),geçici (temp) tablolar gibi çözümler sunmuştur. (Tablolar ile çalışmamız aslen doğru da değildir. Çünkü burda yapılacak bir yanlışlık uygulama veya raporlama gibi işlemlerimizi sekteye uğratabilir.) Ancak bu çözümlerin yanında SQL Server bize Ortak Tablo İfadeleri (Common Table Expression) dediğimiz bir çözümde sunar ki oldukça pratiktir. Aklımıza bahsettiğimiz çözümlerin hepsinin işimizi gördüğü dolayısıyla herhangi birinin kullanılmasının doğru olucağı akla gelebilir bu kısmen doğrudur ancak çözümlere tek tek baktığımızda; - Görüntülerin veritabanında kod olarak erişilebilir olarak bulunduğunu ve genel o...