Friday, August 18, 2006

อ่านมันเข้าไป

อ่านเตรียมสอบ เซ็งจริงๆ

Thursday, August 17, 2006

JSF Trainning Course

เอามาจาก http://www.webagesolutions.com/training/java/wa1361/outline.html
1. Introduction to JavaServer Faces

  • What is JavaServer Faces (JSF)?
  • Why Use JSF?
  • Nature of a JSF Application
  • The Sun Reference Implementation (RI)
  • JSF and MVC
  • Faces Servlet
  • Managed Bean
  • The View
  • A Simple JSF Application
  • The Input Form: form.jsp
  • The Result: thanks.jsp
  • The Controller: AddressBean
  • Page Flow or Navigation Rule
  • How Does the Application Work?
  • Under the Covers: The Rendered Form HTML
  • Under the Covers: The Layout Tree

2. Managed Bean

  • What is a Managed Bean?
  • Why Do You Need Managed Beans?
  • Managed Bean As a Controller
  • Registering a Managed Bean
  • Lifecycle of a Managed Bean
  • Initializing a Managed Bean
  • What Scope to Use?
  • Value Binding
  • Property Data Conversion
  • Advanced Property Types
  • Component Binding
  • Other Binding Types
  • Basic Input Processing
  • Advanced Input Processing
  • JSF Expression Language
  • Language Basics
  • Use of Expression in JSF
  • Basic Expression
  • Property Access Expression
  • Map Access Expression
  • Complex Access Expression
  • Predefined Objects
  • Operators

3. User Interface Components

  • JSF UI Components
  • JSF Component Tag Libraries
  • Using the Tag Libraries
  • HTML Tag Library
  • HTML Tag Library…
  • Identifying Components
  • Component Identifier
  • Client Identifier
  • Form Input Field Names
  • Labels and Images
  • Create a Form
  • Buttons
  • Links
  • Adding Parameters to Links
  • Text Input
  • Simple Check Box
  • Check Box Group
  • Check Box Group Example
  • Radio Button
  • List Boxes
  • Dynamic List Box
  • Example
  • Another Example
  • JSF Core Library
  • JSF Core Library - Components
  • JSF Component Model
  • Base Class Hierarchy
  • Useful Base Classes
  • Useful HTML Classes

4. JSF Event Handling

  • Objectives
  • Request Processing Phases
  • Action Request Processing Phases
  • JSF Event & Listener Model…
  • JSF Event Classes
  • Event Classes
  • Event Classes: Hierarchy
  • Action Event Handling
  • Action Event: Example
  • Action Listener
  • Value Change Event
  • Value Change Event Handler
  • Listener Classes
  • Listener Interfaces
  • Listener Classes: Hierarchy
  • Action Listener Class
  • Value Change Listener Class
  • Phase Event Listener
  • Request Processing Lifecycle
  • Phase Identifiers

5. JSF Navigation

  • Objectives
  • JSF Navigation
  • Example Action Listener
  • faces-config.xml File
  • JSF Navigation
  • Navigation Rules: Example
  • Choosing Between Redirect & Direct Rendering
  • Navigation: Scenarios

6. Validation

  • Objectives
  • Introduction
  • Validation
  • Standard Validators
  • Checking for Required Values
  • Standard Validation Error Messages
  • Validation Process
  • Sequence Diagram
  • Immediate Components
  • Accessing User Input
  • Immediate Example

7. Advanced GUI Components

  • Objectives
  • HTML Panel
  • Applying Styles
  • Grouping Components
  • Data Table
  • Using a Data Table
  • Data Table Model
  • Using a Data Table
  • Displaying a Header and Footer Row
  • Applying Styles
  • Adding Links to a Row
  • Using Component Binding
  • Handling Action
  • Using the Data Table Model
  • Handling Action

8. JSF Techniques

  • A Typical Application
  • The Create Form
  • Create Action Method
  • Listing Items
  • Editing an Item
  • Adding the Edit Link
  • The Edit Form
  • Update Item
  • Things to Keep in Mind

9. Using Java Standard Template Library JSTL with JSF

  • Objectives
  • Introduction to JSTL
  • Using JSTL with JSF
  • The Tag
  • The Tag
  • The Tag
  • The Tag
  • International Text Display Tags

10. Custom Components

  • Custom Components
  • Requirements To Develop Custom Components
  • Packages Useful for Custom Component Developer
  • javax.faces.component.UIComponent
  • Decoding
  • javax.faces.component.UIComponent
  • UIComponentTag
  • Implementing Custom Component Tags
  • FacesContext
  • javax.faces.application.Application
  • javax.faces.context.ResponseWriter
  • javax.faces.component.UIComponent
  • javax.faces.component.EditableValueHolder
  • Tag Library: TLD
  • Faces configuration file: faces-config.xml
  • faces-config.xml
  • Sample.jsp: Example Showing the Relationship Between the JSF Artifacts
  • External Renderer
  • Render Defined in faces-config File
  • Implementing the Renderer
  • Event Listeners
  • Using ActionListener in JSP
  • ActionListener in the Java Code
  • ActionListeners in JSF
  • Create Input Form
  • Input Form (Code)
  • Update faces-config.xml
  • ActionEvent Handling
  • Summary

11. Data Conversion Model

  • Conversion Overview
  • Different Viewpoints of Data
  • Process of Conversion
  • Why Local Values?
  • Types of Standard Converters
  • Standard Converters with JSF
  • Three Ways to Use Standard Converters
  • Bind UI Component to Backing Bean Property
  • Use “converter” Attribute on the UI Component
  • Use Tag with ConverterId Attribute
  • Usage of Standard Converters
  • Output of Using Standard Converters
  • Converter Attribute
  • Standard Converters to Display Output
  • Standard Converters: Screen Shot
  • Conversion Errors
  • Displaying Error Messages
  • Conversion Tag
  • Conversion Error: Display
  • Conversion Error
  • Standard Validators
  • Validation Errors: Screen Shot
  • Standard Validators
  • Check Required Values
  • Custom Converter
  • Custom Converter
  • Custom Converter
  • Registering the Converter
  • Using the Registered Converter
  • Conversion Errors
  • Summary

Wednesday, August 16, 2006

Nidex ขั้นตอนการสร้าง Report Launcher

เนื่องจากการออก Report ด้วย JSF จะไม่สามารถทำ Popup Windows ขึ้นมาได้จึงจะต้องใช้ Servlet แทนโดยจะมี formReport เป็นตัวรับ Value จาก JSF Form และ Popup Report ขึ้นมา
  1. Copy ReportLaunch.jsp จาก Template
  2. กำหนด Parameter ที่จะส่งไปที่ Report ใน formReport
    1. มี Default Parameter ที่จะต้องส่งไปคือ name(report filename), bean (ReportFactoryClass),type ของ Report ที่จะแสดงผล
    2. แก้ value ของ name และ bean ให้เป็นของ report
  3. เปลี่ยน @controllerClass ไปเป็น controllerClass ที่สร้างไว้
  4. แก้ไข control ที่อยู่บน form ให้เป็นไปตาม parameter ที่จะส่งไป ReportFactory
  5. แก้ javascript ใน fucntion SubmitData ให้ formReport รับค่าจาก JSF form
    1. ถ้าใช้ tomahawk control และกำหนด forceId="true" ก็จะ map JSF Form ในรูปแบบนี้ formSelect.elements["selectWarehouse"].value
    2. ยกเว้น t:inputCalendar จะต้อง map แบบนี้ formSelect.elements["content:formSelect:DateTo"].value
  6. Copy ReportTemplController.java ไปเป็น Controller ที่ต้องการ
  7. Register Management Bean ใน faces-config.xml
  8. แก้ Controller ตาม TODO

Nidex Template Screen

Nidex Template Screen
  1. Entity Class
  2. Factory Class
  3. Report Launcher (JSF)
  4. Report Launcher Controller
  5. Single Table (JSF)
  6. Single Table Fix Column (JSF)
  7. Single Table Controller
  8. Master Data (JSF)
  9. Master Data Controller
  10. Select Data (JSF)
  11. Select Data Controller

Tuesday, August 15, 2006

Nidex ขั้นตอนการทำ Report Factory Class

ขั้นตอนการทำ Report Factory Class ของ Nidex
  1. Define member ที่จะใช้
  2. กำหนด Entity Class ให้กับ Constructor ของ Parent - Constructor
  3. สร้าง method getResultSet เพื่อถึง Data และส่งออกไป - getResultSet
  4. Map ResultSet Attribute เข้ากับ Entity Bean ที่สร้างไว้ - createBeanCollection
  5. สร้าง HeaderList เพื่อให้ Export Data ออกไปเป็น Raw Excel - ExportExcel
  6. Mapping Parameter from Servlet - setSearchCriteria
แค่นี้เอง

Nidex Improve coding speed

  1. สร้าง Code Template
    1. Controller Class Template
    2. Report Luncher Template
    3. DAO Template
    4. JSF Template
  2. Excel Code Generater

Monday, August 14, 2006

iReport Trainning Course Content

iReport Trainning Course Content
ส่วนหนึ่งมาจาก iReport Manual
  1. General Information of iReport
    1. What is iReport?
    2. The Main Features of iReport
  2. Installing iReport
  3. iReport and JasperReports Basic Concepts
    1. How JasperReports Works
    2. Compilation and Export of Reports
    3. Our First Very Simple Report
  4. Data Source Connection
    1. Database JDBC connection
    2. File CSV datasource
    3. JRDataSourceProvider
  5. Report Designer
    1. Object
    2. Formatting
    3. Bands and Groupping
  6. Working with JasperReport
    1. Java Rich Client
    2. JSP/Servlet
    3. JSF
(-_-) จะทำ Review Content แต่ดันเผลอทำ Trainning Course Content ซะงั้น

งานที่จะทำ้ใน CRT Lab

หลังจากลองๆเล่น Drupal อยู่ครึ่งวันก็รู้สึกว่า มันไม่ใช่งานที่สำคัญตอนนี้ งานที่สำคัญคือเนื้อหาของ Article ที่จะเอามาลง ซึ่งก็จะเป็นงานที่ถนัดกว่า
งานส่วนของการออกแบบ Web น่าให้ Web Designer ของ Office ทำดีกว่า

หัวข้อ Review ที่ตั้งใจจะทำ
1. iReport
2. Developer JSF with Eclipse and Exadel

Drupal Theme

มี link สอน Customize Theme ของ Drupal ที่
http://www.lullabot.com/articles/hacking_phptemplate

Sunday, August 13, 2006

ลองใช้ Drupal เพื่อจะเอาไปเป็น CMS ของ CRT Lab

ลองใช้ Drupal เพื่อจะเอาไปเป็น CMS ของ CRT Lab
ขั้นตอนการ Setup
  1. ถ้ายังไม่มี Web Server แนะนำ WAMP ตัวไม่เล็กไม่ใหญ่ ความต้องการครบครัน
  2. Download Drupal จาก Drupal
  3. ขั้นตอนการ Install
    1. สร้าง Database ใน mySql ด้วย phpmyadmin
    2. run sql จาก \drupal\database\database.4.1.mysql
    3. แก้ File drupal\sites\default\settings.php ให้ตรงกับ database ที่จะ connect
  4. เมื่อ Install แล้ว ก็สร้าง User ที่มีสิทธิเป็น admin ขึ้นมา
  5. การ setting ต่างๆจะอยู่ในส่วน admin
  6. การลง module ก็ download แล้ว copy folder ไปลงใน drupal\modules
  7. การลง theme ก็ download แล้ว copy folder ไปลงใน drupal\themes

สิ่งที่จะต้องทำในเพื่อให้เกิด CRT Lab Project

สิ่งที่จะต้องทำในเพื่อให้เกิด CRT Lab Project
1. วัตถุประสงค์
2. ประโยชน์ที่จะได้
3. Resource

รายละเอียดของแต่ละหัวข้อ

วัตถุประสงค์
  • เพื่อให้บุคคลในกลุ่มของนักศึกษาและคนทำงานในวงการ IT ได้รู้จักบริษัท CSI ผ่านทางการอ่าน Review ต่างๆที่ออกมา

ประโยชน์

  1. CSI จะเป็นที่รู้จักในวงกว้างขึ้น และจะการเป็นแหล่งข้อมูลอ้างอิงในต่อไป
  2. มีข้อมูลเพื่อช่วยในการเลือก Tool ที่จะทำมาใช้งานให้เหมาะสม
  3. ให้มี Knowledge ที่สร้างนำมาใช้งานได้
Resource
  1. ผู้รับผิดชอบ Project
  2. Content Management System ที่จะเป็นที่เผยแพร่บทความต่างๆ (Drupal)
  3. Web Hosting
  4. Domain Name
  5. Staff ที่จะเข้ามาเขียนบทความ
  6. ค่าบทความ ประมาณ 500 บาทต่อบทความ
  7. กลุ่มบรรณาธิการ

My AAA connect to FreeRadius !!!

Project ที่จะเขียน Web AAA ที่ติดต่อกับ FreeRadius ยังไม่ไปถึงไหนเลย มีเวลาแค่สิ้นเดือนเอง

Project ย่อยที่อยากทำใน CSI

มีงานที่อยากจะทำเพื่อให้ CSI มีความเป็นบริษัท IT ที่ครบเครื่องมากขึ้น
1. CRT Lab (CSI Review and Testing)
ไว้ทำการทดสอบการใช้งาน Tool, Library, Software, Hardware และเผยแพร่โดยผ่าน Internet โดยในช่วงแรกน่าจะื Review การใช้งาน Development Tool และ Library ต่างๆ ที่จะนำมาใช้งาน

2. Opensource Solution
ทีม AGSS ที่จะดูแลด้าน Hardware และ Network ซึ่งจะเป็น Product ของ Microsoft ทั้งหมด เนื่องจากขาดคนที่ทำพวก Linux หรือ OS อื่นๆที่เป็น Opensource น่าจะมีกลุ่มที่สามารถทำงานได้นี้ไว้

3. CodeFest
เป็นCoding มาราธอน ก็คือเขียนโปรแกรมกันทั้งวันทั้งคืน(เห็นเนคเทคเค้าจัดเลยอยากทำบ้าง) ซึ่งบ้างที่อาจจะไม่ต้องเป็นเรื่องใหม่ๆแต่จะเป็นงานที่ขนาดๆพอดีให้ได้ลองทำงานร่วมกันดู

4. ASP (Application Service Provider)
จริงๆเป็นเรื่องเก่าในวงการ IT แต่ในช่วงหลังนี้รู้สึกเริ่มเห็น Product ในแบบนี้เพิ่มขึ้นเรื่อยๆ (ที่เห็นชัดๆก็อย่าง E2OPEN ที่ HITACHI, Seagate ใช้ในการทำ Supplie Chain Management)

เริ่มกันอีกที่กับ Blogger...

รู้สึกมีอะไรหลายๆอย่างอยากบันทึกเก็บไว้ ไม่ว่าจะเรื่องงาน, เรื่องเพื่อน, เรื่องชีวิต ฯลฯ จริงๆก็ไม่ได้อยากให้มีใครมาอ่านหรอก แต่อยากมีที่เก็บที่จะอ่านได้ง่ายๆผ่าน net