Error `Session state has created a session id, but cannot save it because the response was already flushed by the application.` di ASP.NET

27 November 2009 – 10:25 am

Beberapa waktu belakangan ini saya sering menemukan pesan error:

Session state has created a session id, but cannot save it because the response was already flushed by the application.

Padahal setelah check recheck di semua bagian dari page tidak ditemukan command Response.Redirect atau Server.Transfer. Bilapun ada, saya sudah menonaktifkan semua command tersebut.

Tracking di pesan error yang ditampilkan agak kurang bermanfaat, karena semua pesan error yang ada menunjukkan posisi error berada di code ASP.NET bukan di code saya.

Pesan error ini pun muncul hanya pada saat session baru kick-in. Bila page di refresh maka pesan error tersebut akan hilang.. lenyap. So, dugaan kuat error ini berhubungan dengan event Session Start. Akhirnya saya pun menilik ke arah Global Application Class (global.asax) dan melakukan tracing di event Session Start. Setelah trial dan error akhirnya terpikir untuk mencoba mengakses nilai SessionID dari object Session dengan asumsi bahwa bila nilai SessionID sama dengan null berarti session id memang belum dibuat saat aplikasi mulai. Untuk melakukannya, saya meletakkan kode:

if (string.IsNullOrEmpty(Session.SessionID))
           throw new Exception("No new session created");

pada event Session_Start di file global.asax.

Build and run the application then voila… error tersebut tidak pernah muncul lagi.

One-day down

15 November 2009 – 9:46 pm

Saya langsung acungkan ke-empat jempol yang saya miliki. Hanya karena satu hari down seluruh rank dan peringkat dari situs ini langsung drop… mantap. Kebayang betapa rajinnya para bot itu melakukan indexing web-web yang ada di dunia. Langsung pusing deh pala saya… berkunang-kunang.

Alhamdulillah, berkat kesigapan Mas Fajar dari Bisnisweb maka kejadian ini hanya berlangsung satu hari. mantap mas!!

Defrag-lah harddisk dan melayanglah 60GB free space

6 November 2009 – 11:44 am

Karena space HDD di notebook saya sangat kecil, maka WD MyBook Home 1TB menjadi tempat bersemayam beberapa data raksasa VMWare dan beberapa snapshot-nya. Setelah sukses bersih-bersih data selama 2-3 hari kemarin akhirnya saya memberanikan diri untu men-defrag si MyBook untuk meningkatkan performa harddisk external ini.

Proses defrag memakan waktu lebih dari 3 jam dan baru selesai tadi malam. Namun saya sangat kaget saat membuka Windows Explorer karena menyadari bahwa free space telah berkurang hampir 100GB. Fantastis. Tindakan pertama yang saya lakukan adalah melakukan hitung ulang space yang digunakan oleh data dan dipastikan berbeda 100GB dengan yang dilaporkan oleh Windows. Khawatir karena ulah Volume Shadow Copy saya langung melakukan Disk Cleanup, menghapus System Restore point serta menonaktifkannya dan hanya berhasil mengklaim 40GB.. sehingga masih hilang 60GB.

Cara paling akhir yang terpikir adalah dengan membackup semua data ke tempat penyimpanan lain, format ulang harddisk dan restore data kembali.

Thanks Vista… atas segala fitur yang tidak saya butuhkan dan sering membuat saya jenggotan… eh, saya dah jenggotan dari dulu seh :D

VMWare Shared Folder dan `Project location is not trusted` error di Visual Studio

5 November 2009 – 10:11 pm

Melanjutkan dari setting Visual Studio 2008 di VMWare saya disini, ternyata masih ada pesan yang agak mengganggu setiap kali kita melakukan loading project dari VMWare Shared Folder di Visual Studio… yaitu pesan `The project location is not trusted…` alias .NET menempatkan VMWare Shared Folder sebagai lokasi yang mencurigakan. Kita dapat mem-bypass pesan ini namun lebih baik bila kita menangani permasalahannya.

Untuk menangani-nya kita perlu memberitahukan .NET bahwa VMWare Shared Folder adalah lokasi yang aman. Dan kita dapat memberitahu .NET melalui `Microsoft .NET Framework 2.0 Configuration` yang terdapat di .NET Framework 2.0 SDK yang bisa anda download disini.

Saat melakukan instalasi .NET Framework 2.0 SDK pastikan anda hanya memilih ‘Tools and Debugger`, karena hanya inilah yang anda butuhkan. Setelah proses instalasi selesai, anda akan menemukan shortcut `Microsoft .NET framework 2.0 Configuration` di bawah folder `Administrative Tools`.

  1. Buka `.NET 2.0 Configuration` tool
  2. Browse tree di panel kiri hingga `My Computer\Runtime Security Policy\Machine\Code Groups\All Code\LocalIntranet_Zone
  3. Klik kanan di LocalIntranet_Zone dan pilih `New…` untuk membuat code group baru
    • Namakan code group baru sebagai `.host` (hanya .host) dan click next
    • Pilih `URL` di dropdown tipe kondisi dari code group ini
    • Masukkan `file:\\.host\*` (hanya file:\\.host\*) ke dalam isian URL dan click next
    • Pilih `Full Trust` dari dropdown existing permision set dan click next kemudian click Finish
  4. Seharusnya saat ini anda dapat melihat `.host` di panel sebelah kiri seperti gambar dibawah ini. Keluar dari `.NET 2.0 Configuration` tool

Langkah terakhir adalah memberitahukan Internet Explorer bahwa `.host` termasuk dalam `trusted zone` dengan cara:

  1. Buka Control Panels dan buka Internet Options
  2. Buka tab `Security`, pilih `Local Intranet` dan klik tombol sites
  3. Input `file://..host/*` (hanya file://..host/*) ke isian `Add this website to zone` dan klik Add. Pastikan checkbox `Require server verification (https:)…` dalam keadaan uncheck. Klik Close
  4. Tutup Internet Options dengan mengklik tombol OK

Dan selesai. Sekarang kita dapat menggunakan Visual Studio dengan baik walaupun menggunakan VMWare Shared Folder sebagai basis project data folder kita.

VMware merubah `.host` menjadi `vmware-host` di VMware 7.0

VMWare Shared Folder dan `Failed to start monitoring changes` error di Visual Studio

4 November 2009 – 11:39 am

Setelah cukup lama bermain-main dengan Microsoft VirtualPC 2007 akhirnya saya grow tired dengan segala keterbatasan VirtualPC. So.. saya dump VirtualPC dan beralih ke VMWare… yang pernah saya coba di tahun 2002 namun akhirnya terpaksa saya tinggalkan karena keterbatasan hardware saat itu.

Di VMWare saya mensetup environment development berbasis Windows Server 2003 dan Visual Studio 2008. Folder data project tetap saya letakkan di komputer host untuk memudahkan backup dan sinknronisasi dengan tempat lain. Saya menggunakan `Shared Folder` untuk mengakses folder tersebut dari VMWare.

Namun ternyata Visual Studio selalu memberikan pesan error saat saya mencoba menjalankan project berbasis web. So.. kita harus melakukan workaround agar visual studio berjalan dengan  baik.

Map Network Drive

Yang pertama dilakukan… Map folder shared sebagai drive. Ini dikarenakan Visual Studio tidak suka dengan folder berawalan `.` sementara VMWare selalu meletakkan folder yang share di bawah device bernama `.host`. Masalah ini juga timbul di SVN dan diatasi dengan mengganti `.` menjadi `_`.
VMWare secara otomatis melakukan mapping folder yang di share ke drive Z.

Build Error: ‘Failed to start monitoring changes to …. web`

Nah, saat mencoba melakukan `Build` project berbasi web akan muncul pesan error ‘Failed to start monitoring changes to … web`. Penyebabnya adalah kebiasaan Visual Studio untuk memonitor perubahan di folder yang tidak bisa dilakukan karena VMWare Shared Folder. Solusi yang saya peroleh dari situs ini adalah menonaktifkan-nya dengan cara:

  1. Matikan semua instance dari Visual Studio
  2. Buka regedit dan cari key HKEY_LOCAL_MACHINE\Software\Microsoft\ASP.NET\
  3. Buat DWORD baru bernama `FCNMode` dan beri nilai 1
  4. Restart Visual Studio

Dan hilanglah pesan error tersebut bila anda mencoba melakukan build pada project web anda.

HTC Tattoo dan Blackberry Gemini

2 November 2009 – 12:49 pm

Gemini & Tattoo side by side III

Akhirnya saya membelikan istri saya sebuah Blackberry Curve 8520 atau Gemini.

Saat disandingkan dengan HTC Tattoo milik saya tidak terasa perbedaan berat yang berarti. Yang terasa di Gemini adalah cover plastik-nya yang sangat terasa jelas. Awal penggunaan si Gemini, istri sempat bebarap kali mencoba men-touch layarnya… karena sempat terbiasa dengan si Tattoo :D

Overall Gemini merupakan entry level Blackberry yang sangat mengundang selera. Apalagi Celcom membungkusnya dengan prepaid BIS seharga RM1 perhari yang bisa diaktifkan atau dinonaktifkan via SMS. Mantap

Internet di pagi hari memang mantap

30 October 2009 – 6:36 am

Bangunlah kau pagi-pagi maka kau akan menikmati segarnya udara pagi.

Nah pagi ini sebelum subuh, saya menyempatkan diri meneruskan download update untuk Windows Vista di notebook yang baru saja re-install. Agak pesimis mengingat saya hanya menggunakan koneksi jaringan Wireless Broadband dari Celcom Malaysia. Namun ternyata hasilnya mengagetkan, indikator di aplikasi Mobile Connections bergerak antara 1Mbps hingga maksimum 4.2Mbps… sweet. Artinya saya mendownload dengan kecepatan antara 128 kBps hingg 537.6 kBps… bahkan lebih cepat dari maksimum download speed di kantor yang menggunakan ADSL. Padahal bandwidth download bulanan saya sudah mencapai 5GB sehingga terkena Fair Usage Policy… alias dibatasi kecepatan maksimum-nya.

Duh.. seandainya speed seperti ini bertahan 24jam.

Cukup menggunakan `Penghapus Pensil`

29 October 2009 – 12:03 pm

Asli sungguh kaget. Kartu ATM Maybank saya yang selalu di-reject oleh mesim ATM ternyata hanya perlu dibersihkan chip-nya.

Sebelumnya saya sudah mencoba membersihkannya dengan menggunakan kain lap, namun selalu gagal. Saat melaporkan kondisi kartu ATM saya ke CS-nya Maybank, beliau langsung mengeluarkan penghapus pensil dan menggunakannya di atas chip dari kartu tersebut. Takjub saya. Apalagi karena ternyata kartu ATM saya dapat digunakan kembali dengan baik.

Ternyata penghapus pensil itu banyak gunanya yah.