JavaServer Faces çatısında managedBean de veya sınıfta javascript kullanmadan browser ın kapat butonunun eventini nasıl yakalarım?

soruldu: 23 Şub '12, 05:36

esin's gravatar image

esin
1811510
cevap kabul oranı: 22%

değiştirildi: 01 Kas '12, 11:02

%C3%B6zcanacar's gravatar image

özcanacar ♦♦
17.2k59183183

eğer server'ınla devamlı haberleşen kendi browser'ını yazarsan ozaman kapanıp kapanmadığını javascript kullanmadan yapabilirsin :p ama bence gerekyok bu tarz hareketlere :)

(21 Eki '12, 18:02) serdarb serdarb's gravatar image

Internetteki iletisim cogunlukla Request - Response seklinde oluyor, yani Browser'in bir istegi ile basliyor islem ve serverda cevap veriyor. Bu bakimdan Browser kapatilma esnasinda Server'a hicbir bilgi göndermez. Cünkü bir istek söz konusu degil. Ben böyle bisey simdiye kadar görmedim en azindan. Server-Push diye bir sistem var ama o da senin istediginle ilgili bisey degil. Ayrica senin App-Server 'daki Session la ilgili bir problemin olmamasi lazim. Cünkü Session-Scope, SessionTimeOut oldugunda zaten otamatik olarak yok ediliyor. Yani sen Browser'ini kapatmis olsan da, önceden acilan Session TimeOut olana kadar orda duruyor. Ve ancak TimeOut olunca otamatik yok ediliyor. Benun icin senin birsey yapman gerekmez.

permanent link

cevaplandı: 05 Mar '12, 07:32

mceliksoy's gravatar image

mceliksoy ♦
6.5k84988
cevap kabul oranı: 25%

Hic bir sekilde JavaScript olmadan mümkün olabilecegini sanmiyorum. Cünkü Client da gerceklesen bir Event i nasil olacak da Server da yakalayabilecez bilemiyorum. Öyle yapildiginida görmedim simdiye kadar. Ama bir JavaScript - Methode yazip, bu Browser in kapatma olayi ile iliskilendirilip, kapatma olayi da RPC(Remote Procedure Call) ile Server a bildirilebilir. RichFaces in ve digerlerinde bu is icin uygun komponentleri var.

permanent link

cevaplandı: 05 Mar '12, 04:02

mceliksoy's gravatar image

mceliksoy ♦
6.5k84988
cevap kabul oranı: 25%

1

browser lar kapatıldıklarında acık olan sitelerin server larına tarayıcı kapatılmıstır gibisinden bir talep iletiyorlarmı acaba çünkü örneğin session scobe da yasayan bir component tarayıcı kapatıldığında yok edilecektir bu kapatma olayının bi sekilde uygulama sunucusuna iletilmesi gerekmektedir.eger durum bu sekildeyse jsf uygulamasında uygulama sunucusunun davranısına müdahale edilebilinirmi yada haricen uygulama sunucusuna bu tür durumları yönetmesi için ek kodlama yapılabilirmi ?

(05 Mar '12, 05:33) trueLife trueLife's gravatar image

browser a böyle bir iş yüklemek mantıksız. session server tarafında oluşturulur orda kontrol edilir. Ancak bir şekilde server side kısmını kendin yazacağın bir şeyle tetiklersen olabilir ya da verdiğin timeout değerinde yok olurlar.

Custom olarak => invalidate <web-app> => <session-config> <session-timeout>15</session-timeout> </session-config>

HttpSessionListener implement edip deneyebilirsin.

(19 Haz '12, 06:58) gklp gklp's gravatar image

merhaba.

yeni bir başlık açmaktansa burada sorayım dedim. ben jquery ile sekme kapama olayını yakalamaya çalışıyorum. buradaki örneği jsfiddleda çalıştırabildim. kendi uygulamamda ise çalıştıramadım. jsf 2 ve primefaces kullanıyorum. acaba hangi detayı atladım. örnekte yer alan kodu js dosyasına kaydedip xhtml sayfasında

  <h:outputScript library="js" name="close.js" />

şeklinde import ettim.

permanent link

cevaplandı: 01 Kas '12, 07:39

lazy's gravatar image

lazy
146171724
cevap kabul oranı: 0%

kodu ready fonksiyonu içine aldım ve oldu.

  $(document).ready(function() {});
(01 Kas '12, 09:55) lazy lazy's gravatar image

Merhaba,

Banada javascript kullanmadan bu tarz bir işlemi gerçekleştirmek imkansız geliyor. Ki javascript ile bu tarz işlemler oldukça zahmetli, çünkü browser kapanma eventi her browserda farklı şekilde çalışıyor. Günümüzde artık tab kapatma da var, ikisi de ayrı event olarak yayılıyor onu da gözden kaçırmamakta fayda var.

permanent link

cevaplandı: 26 Haz '12, 04:40

turankonan's gravatar image

turankonan
5612
cevap kabul oranı: 0%

Cevabınız
toggle preview

Bu soruyu takip et

E-Posta üzerinden:

Üyelik girişi yaptıktan sonra abonelik işlemlerini yapabilirsiniz

RSS üzerinden:

Cevaplar

Cevaplar ve Yorumlar

Yazı Formatlama

  • *italic* ya da _italic_
  • **bold** ya da __bold__
  • link:[text](http://url.com/ "başlık")
  • resim?![alt text](/path/img.jpg "başlık")
  • liste: 1. Foo 2. Bar
  • temel HTML etiketleri de kullanılabilir

Bu sorunun etiketleri:

×281

Soruldu: 23 Şub '12, 05:36

Görüntüleme: 1,628 kez

Son güncelleme: 01 Kas '12, 11:02

powered by BitNami OSQA