Tomcat adalah proyek inti dalam proyek Apache Software Foundation di Jakarta. Proyek ini dikembangkan bersama oleh Apache, Sun, dan perusahaan serta individu lain. Karena partisipasi dan dukungan Sun, spesifikasi Servlet dan JSP terbaru selalu dapat tercermin di Tomcat. Karena Tomcat memiliki teknologi canggih, kinerja stabil, dan gratis, Tomcat sangat disukai oleh para penggemar Java dan diakui oleh beberapa pengembang perangkat lunak. Tomcat telah menjadi server aplikasi Web yang sangat populer sumber daya sistem saat dijalankan, memiliki skalabilitas yang baik, dan mendukung fungsi yang biasa digunakan dalam pengembangan sistem aplikasi seperti penyeimbangan beban dan layanan email; dan terus ditingkatkan dan disempurnakan. Siapapun yang tertarik Pemrogram dapat mengubahnya atau menambahkan fungsionalitas baru ke dalamnya.
Apache Tomcat Versi 6.0.20
Catatan Rilis
==============
MASALAH YANG DIKETAHUI DALAM RILIS INI:
==============
* Perubahan Ketergantungan
* Aplikasi Berbasis JNI
* API yang dibundel
* Reload aplikasi web dan bidang statis di perpustakaan bersama
* Tomcat di Linux
* Mengaktifkan Dukungan SSI dan CGI
* URL manajer keamanan
* Menghubungkan sumber daya statis
* Mengaktifkan servlet pemanggil
* Melihat Log Perubahan Tomcat
* Ketika semuanya gagal
====
Perubahan Ketergantungan:
====
Tomcat 6.0 dirancang untuk berjalan di BEJ 5.0 dan yang lebih baru.
Selain itu, Tomcat 6.0 menggunakan kompiler Eclipse JDT Java untuk kompilasi
Halaman JSP. Artinya Anda tidak perlu lagi memiliki yang lengkap
Java Development Kit (JDK) untuk menjalankan Tomcat, tetapi Java Runtime Environment
(JRE) sudah cukup. Kompiler Eclipse JDT Java dibundel dengan
distribusi biner Tomcat juga dapat dikonfigurasi untuk menggunakan
kompiler dari JDK untuk mengkompilasi JSP, atau kompiler Java lainnya yang didukung
oleh Apache Ant.
========
Aplikasi Berbasis JNI:
========
Aplikasi yang memerlukan perpustakaan asli harus memastikan bahwa perpustakaan tersebut memilikinya
telah dimuat sebelum digunakan. Biasanya, ini dilakukan dengan panggilan seperti:
statis {
System.loadLibrary("jalur-ke-file-perpustakaan");
}
di beberapa kelas. Namun, aplikasi juga harus memastikan bahwa perpustakaan tersebut
tidak dimuat lebih dari sekali. Jika kode di atas ditempatkan di kelas di dalamnya
aplikasi web (yaitu di bawah /WEB-INF/classes atau /WEB-INF/lib), dan
aplikasi dimuat ulang, panggilan loadLibrary() akan dicoba sebentar
waktu.
Untuk menghindari masalah ini, tempatkan kelas yang memuat perpustakaan asli di luar
aplikasi web, dan pastikan panggilan loadLibrary() dijalankan hanya sekali
selama masa pakai JVM tertentu.
=============
API yang dibundel:
=============
Instalasi standar Tomcat 6.0 membuat semua API berikut tersedia
untuk digunakan oleh aplikasi web (dengan menempatkannya di "lib"):
* annotations-api.jar (Paket Anotasi)
* catalina.jar (implementasi Tomcat Catalina)
* catalina-ant.jar (tugas Tomcat Catalina Ant)
* catalina-ha.jar (Paket ketersediaan tinggi)
* catalina-tribes.jar (Komunikasi grup)
* el-api.jar (EL 2.1 API)
* jasper.jar (Kompiler dan Runtime Jasper 2)
* jasper-el.jar (implementasi Jasper 2 EL)
* jasper-jdt.jar (kompiler Java Eclipse JDT 3.3)
* jsp-api.jar (API JSP 2.1)
* servlet-api.jar (Servlet 2.5 API)
* Tomcat-coyote.jar (Konektor Tomcat dan kelas utilitas)
* Tomcat-dbcp.jar (paket berganti nama menjadi kumpulan koneksi database berdasarkan Commons DBCP)
Anda dapat menyediakan API tambahan untuk semua aplikasi web Anda dengan
menempatkan kelas yang belum dibongkar ke dalam direktori "kelas" (tidak dibuat secara default),
atau dengan menempatkannya di file JAR di direktori "lib".
Untuk mengganti implementasi atau antarmuka parser XML, gunakan yang didukung
mekanisme JVM. Konfigurasi default mendefinisikan JAR yang terletak di
"didukung" sebagai didukung.
==================== ==============
Pemuatan ulang aplikasi web dan bidang statis di perpustakaan bersama:
==================== ==============
Beberapa perpustakaan bersama (banyak yang merupakan bagian dari JDK) menyimpan referensi ke objek
dipakai oleh aplikasi web. Untuk menghindari masalah terkait pemuatan kelas
(ClassCastExceptions, pesan yang menunjukkan bahwa classloader
dihentikan, dll.), status perpustakaan bersama harus diinisialisasi ulang.
Sesuatu yang mungkin bisa membantu adalah menghindari menempatkan kelas-kelas yang seharusnya
direferensikan oleh bidang statis bersama di classloader aplikasi web,
dan menempatkannya di classloader bersama (JAR harus dimasukkan ke dalam
folder "lib", dan kelas harus diletakkan di folder "kelas").
================
Tomcat di Linux:
================
Pengguna GLIBC 2.2 / Linux 2.4 harus mendefinisikan variabel lingkungan:
ekspor LD_ASSUME_KERNEL=2.2.5
Pengguna Redhat Linux 9.0 harus menggunakan pengaturan berikut untuk menghindarinya
masalah stabilitas:
ekspor LD_ASSUME_KERNEL=2.4.1
Ada beberapa bug Linux yang dilaporkan terhadap perilaku sendfile NIO, pastikan Anda
memiliki JDK yang terbaru, atau menonaktifkan perilaku sendfile di Connector.
6427312: (fc) FileChannel.transferTo() memunculkan IOException "panggilan sistem terputus"
5103988: (fc) FileChannel.transferTo seharusnya mengembalikan -1 untuk EAGAIN alih-alih melempar IOException
6253145: (fc) FileChannel.transferTo di Linux gagal ketika melampaui batas 2GB
6470086: (fc) FileChannel.transferTo(2147483647, 1, channel) menyebabkan pengecualian "Nilai terlalu besar"
==============
Mengaktifkan Dukungan SSI dan CGI:
==============
Karena risiko keamanan yang terkait dengan CGI dan SSI tersedia
untuk aplikasi web, fitur ini dinonaktifkan secara default.
Untuk mengaktifkan dan mengkonfigurasi dukungan CGI, silakan lihat halaman cgi-howto.html.
Untuk mengaktifkan dan mengkonfigurasi dukungan SSI, silakan lihat halaman ssi-howto.html.
=======
URL manajer keamanan:
=======
Untuk memberikan izin keamanan kepada JAR yang terletak di dalam
repositori aplikasi web, gunakan URL dengan format berikut
dalam file kebijakan Anda:
file:${catalina.home}/webapps/examples/WEB-INF/lib/driver.jar
=============
Menghubungkan sumber daya statis:
=============
Secara default, symlink Unix tidak akan berfungsi saat digunakan dalam aplikasi web untuk ditautkan
sumber daya yang terletak di luar direktori root aplikasi web.
Perilaku ini bersifat opsional, dan tanda "allowLinking" dapat digunakan untuk menonaktifkan
cek itu.
==========
Mengaktifkan servlet pemanggil:
==========
Dimulai dengan Tomcat 4.1.12, servlet pemanggil tidak lagi tersedia
default di semua aplikasi web. Mengaktifkannya untuk semua aplikasi web dimungkinkan dengan mengedit
$CATALINA_HOME/conf/web.xml untuk menghapus komentar pada pemetaan servlet "/servlet/*"
definisi.
Menggunakan servlet pemanggil di lingkungan produksi tidak disarankan dan
tidak didukung. Detail lebih lanjut tersedia di FAQ Tomcat di
http://tomcat.apache.org/faq/misc.html#invoker.
===============
Melihat Log Perubahan Tomcat:
===============
Lihat changelog.html di direktori ini.
=====
Ketika semuanya gagal:
=====
Lihat FAQ
http://tomcat.apache.org/faq/
Memperluas