Apache Tapestry

**Тэпистри** нь обьект хандалтат Жава вэб хөгжүүлэх фрэймворк ( араг яс?) бөгөөд Model-View-Controller дизайн загвар-г ашиглаж вэбийг апликэйшн хөгжүүлж байгаа мэт бичих бололцоо олгодог фрэймворк юм. Тэпистри-г Ховард Ливайс Шип биеэ дааж үүсгэсэн бөгөөд, Apache Software Foundation нь эх барьж авсан юм. 
Тэпистри нь энгийн байдал, хэрэглэхэд амархан байдлыг гол зорилгоо болгодог фрэймворк бөгөөд программистуудын ажлыг хөнгөвчилж, Тохиргооноос илүү Бичиглэл чухал гэсэн уриатай.

Тэпистри нь вэб хөгжүүлэлтийг модулын аргаар хөгжүүлдэг бөгөөд user interface компонентүүд ба Жавагийн класс хоорондоо хүчтэй холбоостой байдаг.
Энэхүү компонент төвтэй архитектур нь WebObjects-оос их олон санаа авсан юм.

## Тэпистри 4 
Одоогийн тогтвортой ашиглагдаж байгаа Тэпистри-гийн хувилбар бол 5.1.0.5.
4 ба түүнээс доош хувилбарууд хоорондоо бараг адилхан бөгөөд хувилбар 5 дорвитой өөрчлөгдсөн болно.

Тэпистри 4 вэб апликэйшнүүд нь вэб хуудсууд болон компонентүүдэд хуваагддаг. Хуудсууд нь компонентүүдээ удирдах бөгөөд компонентүүд функционалт үүргүүдийг гүйцэтгэнэ.

Энэхүү арга нь комплекс апликэйшнүүдийг амархан удирдаж болохоор дэлгэц, бизнес логик, тогтмол өгөгдлүүд гэсэн хэсгүүдэд салгана.

Компонентүүд нь үндсэн ба нэмэлт зэргээр хуваагдан байрлах ба үндсэн компонентүүд нь апликэйшныг бүрдүүлэх validation, оролтын нөөцүүд, тогтмол обьектүүд зэргээс тогтдог. Харин нэмэлт компонентүүд нь үндсэн компонентүүд бүлэглэх зэрэг үүрэгтэй.

Тэпистригийн компонентын загвар нь XHTML файлууд байдаг. XML файл нь Жава класс-ууд ба ХHTML обьектуудын хооронд буулгалт хийх үүргийг гүйцэтгэнэ.
Тэпистригийн код нь темплате хувьсагчид болон код-д тусгай таг-ууд ашигладагаараа PHP, ASP, JSP зэргийн механизмаас өөр бүтэцтэй нь илт мэдэгдэнэ.

## Тэпистри 5 
Тэпистри хувилбар 5-ийн хөгжүүлэлт нь хувилбар 4-г дөнгөж гаргасныхаа дараа эхэлсэн юм. Тэпистри-г хөгжүүлэгчид нь шинэ хувилбар гаргах бүртээ үндсэн класс-аас уламжлагдсан дэд классууд бүхий оргиналь архитектур нь фрэймворкийг өргөтгөхөд хэцүү болж байгааг ойлгож байсан байна. Шинэ арга зам ( Тэпистри 5 дээрхи) нь Plain Old Java Object дээр суурилагдсан бөгөөд тэмдэглэгээ, нэрлэлт, байт код өргөжүүлэлт зэрэг нь гол зорилгоо болгосон. Тэмдэглэгээ, нэрлэлтүүд нь хуучин хувилбаруудын XML descriptor файлуудыг бүрэн хэрэггүй болгон бүрэн орлож байгаа юм.

Мөн дахин хөрвүүлэх, архивлах, deploy, restart зэргийг servlet-г өөрчлөх бүртээ хийх шаардлагагүй болсон ( энэхүү процессийг live class reloading гэж нэрлэдэг) бөгөөд энэ бүгд Тэпистри 5-г товч хураангуй болгосон билээ.

Хувилбар 5 нь Prototype ба Javascript фрэймворкийг өөртөө агуулсан бөгөөд Ajax-ийн энгийн үйлдлүүдийг хялбархан хийж чадна.

Хувилбар 5.1 нь чадал болон санах ойн зарцуулалт болон авто GZIP шахах ажиллагаа, JavaScript library-гийн нэгдэл зэрэг асуудлуудыг сайжруулсан бөгөөд ар тал нь тэр чигтээ Тэпистри 5 дээр л суурилсан хэвээрээ байгаа болно.
Хувилбар 5.2 нь JSR 303 (Bean Validation) -г өөрийн validation механизм рүүгээ нэгтгэсэн юм.

## Хамааралтай төслүүд 
Trails Framework - Тэпистри 4 дээр үндэслэгдсэн.

Tynamo Framework aka Trails 2 - Тэпистри 5 дээр үндэслэгдсэн.

## Холбоосууд 
## Номнууд 
* 
* 
* 

## Нэмэлт холбоосууд 
* Тэпистри албан ёсны сайт
* Тэпистри 5 албан ёсны сайт
* Howard Lewis Ship
* Enjoying Web Development with Tapestry book
* Trails Framework
* Tynamo Project

Ангилал:Java сан