go to http://oracle.in.th

Saturday, June 19, 2010

Getting Started with JSF 2.0

สวัสดีครับ ก็จะมาแนะนำ Tutorial ของ JSF 2.0 ครับ อืมจะว่าไงดีนะ ไม่ได้เขียนบทความมานานแถมผมยังเป็นพวกที่คนบอกกันว่า พูดภาษาคนไม่รู้เรื่องซะด้วย ยังไงก็ตั้งใจอ่านกันหน่อยละกันครับ อ๋อ แนะนำตัวกันก่อน ก็ @nuboat ครับเป็นคนที่ว่ารักในการเขียนโปรแกรมก็ว่าได้ ปัจจุบันก็เป็น System Analyst and Banking Specialist ที่แบงค์สีเขียวแห่งหนึ่ง ก็มีหน้าที่ออกแบบและพัฒนาระบบเกี่ยวกับ Treasury ครับ เป็นคนที่ใช้ Java อยู่เป็นนิจ เรียกได้ว่าผมมีประสบการ์ณกับ Java กันแทบทุก platform เลยทีเดียว JavaSE, JavaME, JavaEE, JavaCard ... ว่าไปขาด JavaFX แหะ นอกเรื่องนาน มาดูกันดีกว่ากับ JSF 2.0

JSF เป็นอะไร เอาจากที่ตัวผมเห็นมานะครับ JSF เป็น Web Framework ตัวหนึ่งแต่มันมีลักษณะเหมือน Window Programming มากกว่า Web ที่เป็น Request, Response นะสิครับ ทีนี้ ถ้าคิดจะพัฒนาโปรแรกมด้วย JSF ผมอยากให้คนที่มีพื้นฐานการพัฒนาเว็บเปลี่ยนมุมมองมาเป็นว่ากำลังพัฒนา Window Application ที่เป็น

จริงๆ อยากให้เข้าใจแก่นของ JSF จริงๆก่อน coding แต่ผมว่าเราไป coding กันก่อนให้ชินกับ JSF แล้วค่อยมาดูมันก็ยังไม่สายครับ

ทีนี้เนื่องจาก JavaEE เป็นสิ่งที่มีปัญหาเรื่อง การ config, setup, build, deploy มากพอดู (มากมากเลยแหละ) เพื่อไม่ให้เกิดปัญหา ผมขอบังคับให้ใช้ทุกอย่างตามนี้นะครับ ถ้าใครใช้ไม่เหมือนผมแล้วมาถามว่า Error อะไร ก็ ... ช่วยตัวเองกันครับ 555+

จากการไปเป็น TA ให้กับ #springtrainingday ของ spring66.com ตลอดทุกครั้งคือ แต่ละคนมี environment เป็นของตัวเองกันทั้งนั้น แล้วทีนี้อะไรเกิดขึ้นหร่ะ กว่าจะแค่ทำให้รันได้นี่อย่างเหนือย แล้วนะถ้าคนที่เข้าใจ java architecture จริงๆก็ง่าย ... แต่ความจริงคือหลายคนไม่รู้นะสิ อาจจะเขียน java ได้แต่ไม่เข้าใจมันในหลายๆเรื่อง ทีนี้เพือให้งานนี้ smooth ผมจะขอบังคับ IDE ละกันครับเพราะอยากให้ scope ความรู้ไปที่ JSF จริงๆ

1. JavaSE JDK 1.6 u14 up

2. Netbeans 6.8 up ต้องเป็น release ที่ support Java Web and EE
* default netbeans จะไม่ติดตั้ง tomcat ให้แต่ผมแนะนำให้ customize แล้วเลือกมันมาด้วยเพราะเล็กและง่ายกว่า

โอเค ถ้าเตรียมตัวกันเรียบร้อยก็เริ่มกันเลยครับ เปิด Netbeans แล้วกด New Project กันเลย

1. เลือก Categories เป็น Java Web -> Web application
2. ตั้งชื่อ Project แล้วก็ Browse ไปที่ path ที่จะวาง Projec
3. เลือก Server เป็น Tomcat 6.x Java EE version Java EE 5, context path เป็น /easyjsf
4. เลือก Java Server Faces ,ไปที่ Tap Libraries เลือก Registered Libraries เป็น JSF2.0
5. แล้วไปที่ Tap Confuguration ที่ JSF Servlet URL Pattern ให้กำหมดเป็น *.jsf
6. Finish ได้เลยครับ


เสร็จแล้วยังไม่ต้องคิดอะไรครับ คลิกขวาที่ project แล้วสั่ง deploy เลยครับ
จากนั้นลองเข้า browser ด้วย URL ตามนี้ครับ http://127.0.0.1:8080/easyjsf/index.jsf

จะขึ้นหน้าเปล่าๆ ว่า "Hello from Facelets" .... หวังว่าจะไม่มี error กันทุกคนนะครับ

copyright 2010 @nuboat in wonderland
ข้อเขียนนี้ช่วยฉัน:  

10 comments:

Unknown said...

ไม่ต้องถามว่าทำไมมีแค่นี้ ....​แล้วผมจะตั้งใจเขียนครับ

Kim said...

ผมเองไม่ได้เขียน Java มานานครับ
ยังงง ๆ อยู่ว่า JSF ต่างจาก JSP อย่างไรครับ?

yong said...
This comment has been removed by the author.
benz said...

แล้วจะลองนำไปใช้ดูครับ ถ้ามี error จะมี post บอกนะครับ

ขอบคุณครับ

Unknown said...

ให้เพือนลองทำตามแล้ว recommend มันบอกว่าตอนสร้างโปรเจคน่าจะบอกให้ละเอียด เผือคนไม่ชินกับ JavaEE ได้ไม่งง เลยแวะมาแก้เพิ่มอีกนิดครับ

Unknown said...
This comment has been removed by the author.
Unknown said...

Kim -
JSF ในแง่การพัฒนาเราต้องมองมันเหมือนเป็น Window Programming อะครับ
จะต่างกับการมองเป็น Page Flow แบบ web นะครับ แต่ข้อดีคือมันสามารถ manage scope ของ data ต่างๆได้ดีกว่ามากทำ Ajax ง่ายกว่ามากมากด้วย

แต่หลายๆอย่างจะเห็นเมื่อได้ลองทำจริงๆนั่นแหละครับ

ฺฺBB said...

พี่คับ คือผมอยากได้เนื้อหา JSF 2.0 อ่ะคับ พอจะมีแหล่งข้อมูลที่ไหน แหล่มๆๆบ้างคับ อยากศึกษา เอามาทำสัมมนาคับ ขอบคุณมากๆๆนะคับ

สำราญ said...

ไม่ทราบว่าเคยลองใช้ Grails กันบ้างยังครับมันมีข้อดีข้อเสีย กับ JSF มากไม
ครับผม เพราะตอนนี้กำลังตัดสินใจเลือกสองตัวนี้นะครับว่าจะใช้ตัวไหนดี

Anonymous said...

คุณสำราญ: ก้อเลือกมันทั้ง สองตัวเลยสิครับ ดี ๆ ทั้งคู่ ;>

Post a Comment