Posted by Gökhan Şahin on Apr 17, 2012 in
Java,
Linux
Bunun için öncelikle Java Services Wrapper’ı indirmemiz gerekiyor.
burdan indirebilirsiniz
Ben linux kısmını anlatacağım.
İndirdiğimiz wrapper tar dosyasını home dizinine atıp açıyoruz.
tar -xvf wrapper-linux-x86-64-3.5.14-st.tar
wrapper_home =/home/user/wrapper-linux-x86-64-3.5.14-st
uygulama dosyanızı wrapper_home a kopyalıyoruz.
uygulamanın ihtiyaç duyduğu libleri wrapper_home/lib altına kopyalıyoruz.
wrapper_home/conf dizini içindeki wrapper.conf dosyasını açıyoruz.
Wrapper Class
wrapper.java.mainclass=org.tanukisoftware.wrapper.WrapperSimpleApp
uygulama jar dosyasını
wrapper.java.classpath.1=../lib/wrappertest.jar
wrapper.java.classpath.2=../lib/wrapper.jar
wrapper.java.classpath.3=../app.jar
Uygulama için gerekli jarları eklemeye devam ediyoruz.
wrapper.java.classpath.4=../lib/commons-logging.jar
wrapper.java.classpath.5=../lib/org.springframework.asm.jar
wrapper.java.classpath.6=../lib/org.springframework.beans.jar
wrapper.java.classpath.7=../lib/org.springframework.context.jar
wrapper.java.classpath.8=../lib/org.springframework.context.support.jar
wrapper.java.classpath.9=../lib/org.springframework.core.jar
wrapper.java.classpath.10=../lib/org.springframework.expression.jar
wrapper.java.classpath.11=../lib/org.springframework.transaction.jar
wrapper.java.classpath.12=../lib/log4j-1.2.15.jar
wrapper.java.classpath.13=../lib/quartz-1.8.3.jar
wrapper.java.classpath.14=../lib/slf4j-api-1.5.10.jar
wrapper.java.classpath.15=../lib/slf4j-log4j12-1.5.10.jar
Uygulama main sınıfını belirtiyoruz.
wrapper.app.parameter.1=jsw.main.Main
Servis Bilgilerini belirtiyoruz.
# Name of the service
wrapper.name=Uygulamam
# Display name of the service
wrapper.displayname=Uygulama Ismi
# Description of the service
wrapper.description=Uygulama Aciklamasi
wrapper_home a gidip testwrapper açıyoruz.
# Application
APP_NAME="uygulama"
APP_LONG_NAME="Uygulama Application"
# Wrapper
WRAPPER_CMD="/home/user/wrapper-linux-x86-64-3.5.14-st/bin/wrapper"
WRAPPER_CONF="/home/user/wrapper-linux-x86-64-3.5.14-st/conf/wrapper.conf"
olarak değiştiriyoruz
testwrapper dosyasının adını servisadi olarak değiştiriyoruz.
Servisimizin çalıştığına emin olmak için aşağıdaki komutu çalıştırıyoruz. Bir hata aldı isek wrapper_home/logs klasörü çindeki log dosyasına bakınız.
sh wrapper_home/bin/servisadi console
servisimiz çalıştığına göre servisimizi install edelim.
sh wrapper_home/bin/servisadi install
/etc/init.d/servisadi start
ile servisimizi çalıştıralım.
Posted by Gökhan Şahin on Mar 20, 2012 in
Eclipse,
Ide,
Java,
maven
Eclipse Indio ile Maven da bir proje geliştirmeye başladık. Versiyon kontrol sistemi olarak svn kullanmaya karar verdik. Fakat svn de bazı sıkınıtılar yaşadık. Ufak bir araştırma ile maven svn araçları olduğunu keşfettim ve sorun yaşayan arkadaşlar için paylaşmak istedim.
Öncelikle m2eclipse ve subversion kurulu olduğunu varsayıyorum. Detaylı bilgi isteyen arkadaşlar olursa daha sonra kurulumlarını anlatırım.
Project Explorer ekranında sağ tuşa tıklıyoruz ve import seçeneğini seçiyoruz.
Arama kısmında maven yazıyoruz
aşağıdaki resimdeki gibi check out maven project from scm seçeneğini seçiyoruz.

Altı siyah ile çizğili yere tıklıyoruz ve Eclipse market açılacak.


m2e Team Providers kısmından m2e-subversion seçeneğini tıklıyoruz. Resimde m2e-subclipse seçilidir. subclipse kullanmak istiyorsanız. Subclipse eclipse plugini kurmanız gerekmektedir.

Posted by Gökhan Şahin on Feb 23, 2012 in
Application Server,
JBoss,
Yazılım
JBoss 7.1 web sunucusunu başlatırken aşağıdaki gibi bir hata alıyorsanız.
java.lang.IllegalArgumentException: No enum const class java.util.concurrent.TimeUnit.MİLLİSECONDS
Sunucu üzerinde çift tıklayın.
Open Launch configuration’a tıklıyoruz.
VM arguments kısmına aşağıdaki satırı ekliyoruz.
-Duser.language=en

Posted by Gökhan Şahin on Feb 11, 2012 in
Java,
Yazılım
Barkod yazıcılardan çıktı almak her zaman problemli bir iş olmuştur. Bartender programı biz bu konuda kolaylık sağlamış. .Net uygulaması yapan arkadaşlar için C# ve Vb.Net uyumlu. Javada geliştiren arkadaşlar vbscript kullanmak zorunda. Bunun için bir örnek yapmak istedim.
Öncelikle BarTender programı ile bir dizyan yapmamız gerekiyor. Üsteki menüden barkod simgesine tıklayıp bir barkod ekliyoruz.

ekledikten sonra çift tıklayıp. Açılan pencereden veri kaynağını seçiyoruz.

Gelişmiş butonuna basıyoruz. Paylaş ad kısmında barkod yazıyoruz.

dizaynımızı c:\barkod.btw olarak kaydediyoruz.
Her hangi bir text editör açıp scriptimizi yazmaya başlıyoruz.
dim btApp
dim btFmt
set btApp = Createobject("BarTender.Application")
btApp.Visible = false
Set wShell = CreateObject("WScript.Shell")
set btFmt = btApp.Formats.Open("C:\barkod.btw",false,"")
Set WShell = Nothing
btFmt.EnablePrompting = false
'bizim dizaynda tanımladığımız. paylaş ad kısmında yazan barkod u belirtiyoruz.
btFmt.SetNamedSubStringValue "barkod","305"
btFmt.IdenticalCopiesOfLabel = 1
btFmt.PrintOut false,false
'Otomatik kesmesi için ekliyoruz.
'btFmt.PageSetup.MediaHandling.Action = 4
btFmt.Close(1)
btApp.Quit(1)
set btFmt = nothing
set btApp = nothing
Java da kullanmak için scriptimizi c:\yaz.wbs olarak kaydediyoruz.
Java kodumuz dan aşağıdaki komutu çağırıyoruz.
Runtime.getRuntime().exec("rundll32 url.dll,FileProtocolHandler c:\yaz.wbs");
Posted by Gökhan Şahin on Feb 9, 2012 in
Application Server,
Eclipse,
Ide,
Java,
Web,
Yazılım
Eclipse JBoos 7.o eklemek için öncelikle Eclipse Indigo indirmeniz gerekir.
http://www.eclipse.org/downloads/packages/eclipse-ide-java-ee-developers/indigosr1 bu adresten indirebilirsiniz.
JBoss 7.0 http://www.jboss.org/jbossas/downloads/
Eclipse i kuruduktan sonra Üsteki menüden Help>Install New Software i seçiyoruz.

Work with yazan yere bu link i yazıyoruz. http://download.jboss.org/jbosstools/updates/development/indigo/
Tümünü seçip next tuşuna basıyoruz.
Karşımıza çıkan ekrandan next tuşuna basıyoruz.
Review Licenses kısmında I accept the terms of the license agreements seçeneğini seçip finish tuşuna basıyoruz.
Kurulumun bitmesini bekliyoruz.
Menüden File>New>Other seçeneğini seçiyoruz.

Wizards kısmına server yazıyoruz. Server seçeneğini seçiyoruz.

JBoss 7 yazıyoruz. JBoss AS 7.0 ‘ı seçiyoruz.

JBoss 7 nin kurulu olduğu dizini gösteriyoruz.

Doğru dizini seçtikten sonra Finish butonuna basıyoruz.
Server ı görmek için



Posted by Gökhan Şahin on Aug 16, 2011 in
Database,
Oracle,
Yazılım
Öncelikle tablomuzun satırlarını oluşturacak type tipinde bir obje oluşturuyoruz.
create or replace type t_row as object (
col1 NUMBER,
col2 varchar2(10),
);
/
Tablomuzu temsil edecek type tipinde objeyi oluşturuyoruz.
create or replace type t_tbl as table of t_row;/
Tablomuzun içini dolduracak fonksiyonu oluşturuyoruz.
create or replace function fnc_doldur(pkayitSayisi Number) return t_tbl as
v_ret t_tbl;
begin
for r in 1..pkayitSayisi loop
v_ret.extend;
v_ret(v_ret.count) := t_row(1,'KAYIT'||r);
end loop;
return v_ret;
end;
/
Select çekip tabloyu görebiliriz.
select * from table(fnc_doldur(5));
Posted by Gökhan Şahin on Jul 4, 2011 in
C#,
Yazılım
Görüntü işlemede Resmi siyah beyaza çevirmek için gereken metod
pictureBox1.Image = SiyahBeyaz(new Bitmap(pictureBox1.Image));
public Image SiyahBeyaz(Bitmap bmp)
{
for (int i = 0; i < bmp.Width; i++)
{
for (int j = 0; j < bmp.Height; j++)
{
int hede = (bmp.GetPixel(i, j).R + bmp.GetPixel(i, j).G + bmp.GetPixel(i, j).B) / 3;
bmp.SetPixel(i, j, Color.FromArgb(hede, hede, hede));
}
}
return bmp;
}
Posted by Gökhan Şahin on Jun 8, 2011 in
Database,
Oracle,
Yazılım
Oracle 8i veritabanında dumy kayıt oluşturmak için
SELECT LEVEL||' kayit' FROM DUAL CONNECT BY LEVEL <= 10 AND PRIOR DBMS_RANDOM.VALUE IS NOT NULL
Posted by Gökhan Şahin on Feb 18, 2011 in
Database,
Oracle,
Yazılım
Oracle veritabanından ftp bağlantısı yapmak için öncelikle aşağıdaki linkten sql dosyasını indiriyoruz.
Ftp Bağlantı Paket Sql
Aşağıdaki kod ile ftp serverdan ls komutunu çalıştırabilirsiniz. Burada önemli olan p_localpath değişkeninde oracle üzerindeki directory kısmındaki dizinlerden çalıştırdığınız kullanıcının yazma yetkisi olan bir dizin olması gerekmektedir.
declare
p_status VARCHAR2 (32000);
p_error_msg VARCHAR2 (32000);
p_elapsed_time VARCHAR2 (100);
p_remote_path VARCHAR2 (2000);
p_local_path VARCHAR2 (2000);
p_hostname VARCHAR2 (100);
p_username VARCHAR2 (100);
p_password VARCHAR2 (100);
p_files VARCHAR2 (4000);
p_bytes_trans NUMBER;
p_trans_start DATE;
p_trans_end DATE;
lbok BOOLEAN;
p_failed CHAR (1) := 'N';
wfile_thk UTL_FILE.file_type;
wsonuc VARCHAR2 (3999) := '';
vnewline VARCHAR2 (255) := '';
BEGIN
--listeleme sonucunu yazacağı dosya
p_files := 'lst.txt';
lbok :=
ftp_interface.ls (p_localpath => 'ORACL_DİZİNİ',
p_filename => p_files,
p_remotepath => 'listelenecek dizin',
p_username => 'kullanici',
p_password => 'şifre',
p_hostname => 'host',
v_status => p_status,
v_error_message => p_error_msg,
n_bytes_transmitted => p_bytes_trans,
d_trans_start => p_trans_start,
d_trans_end => p_trans_end,
p_port => 21,
p_filetype => 'ASCII'
);
IF lbok = TRUE
THEN
wfile_thk := UTL_FILE.fopen ('ORACL_DİZİNİ', 'lst.txt', 'R');
LOOP
BEGIN
UTL_FILE.get_line (wfile_thk, vnewline);
wsonuc := wsonuc || ',' || vnewline;
EXCEPTION
WHEN OTHERS
THEN
EXIT;
END;
END LOOP;
UTL_FILE.fclose (wfile_thk);
RETURN SUBSTR (wsonuc, 2);
IF p_status <> 'SUCCESS'
THEN
p_failed := 'Y';
END IF;
ELSE
-- DBMS_OUTPUT.put_line (p_error_msg);
p_failed := 'Y';
END IF;
-- DBMS_OUTPUT.put_line ( 'FTP PROCESS FAILED := '|| p_failed);
-- DBMS_OUTPUT.put_line ('FINIS');
END;
Put ve get işlemleri için FTP_INTERFACE paketi içinde methodları bulacaksınız.
Posted by Gökhan Şahin on Feb 10, 2011 in
Database,
Oracle
İşçiler tablosundaki adı,soyadı alanlarını Kişiler tablosundaki kayıtların ad ve soyad bilgisi ile güncellemek için güncellenecek alanlar parantez içinde yazılır eşittir konur ve parantez içinde sql cümlesi yazılır dikkat edilecek konu alan sayılarının aynı olması gerekiyor.
update isciler i set (adi,soyadi)=(select adi,soyadi from kisiler k where k.kisi_id=i.kisi_id)