*บันทึกกันลืม ดาวโหลดไฟล์ dwr.jar จาก http://getahead.ltd.uk/dwr/ มาวางใน /project/Webcontent/lib เพิ่มโค้ดด้านล่างไปในไฟล์ web.xml <servlet-mapping><servlet-name>Wikis</servlet-name> <url-pattern>/dwr/*</url-pattern> </servlet-mapping> แก้ไข url mapping ใน spring-servlet.xml <bean id=”urlMapping”class=”org.springframework.web.servlet.handler.SimpleUrlHandlerMapping”> <property name=”alwaysUseFullPath” value=”true” /> <property name=”interceptors”> <list> <ref bean=”openSessionInViewInterceptor” /> <ref bean=”themeChangeInterceptor”/> </list> </property> <property name=”mappings”> <props> <prop key=”/view”>viewController</prop> <prop key=”/view/**/*”>viewController</prop> <prop key=”/edit”>editController</prop> <prop key=”/edit/**/*”>editController</prop> <prop key=”/setup/”>dbSetupController</prop> <prop key=”/dwr/**/*”>dwrController</prop> </props> </property> </bean> สร้างคลาส Wrapper package our.package.name; [...]
Session!!!
อยากจะบ่นเพราะนั่งแก้ตั้งแต่เมื่อวานไม่ได้ซักที วันนี้นั่งทำมาอีกครึ่งวัน ปรากฏว่า แก้แค่บรรทัดเดียวได้แล้ว -*- ปัญหา คือ เวลาจะทำอะไรเกี่ยวกับ Collection เนี๊ยะ โดยเฉพาะ update กับ insert ใน hibernate มันต้องทำใน session เดียวกัน ห้ามสร้าง session แยก คราวนี้ปกติเวลาเรา เรียกไปที่ DAO ที มันก็สร้าง session ให้ใหม่ที (ให้มันได้งี้สิ) ก็นั่งหาวิธีแก้ ทั้ง close session หลังจาก select หรือเรียกแต่ละ method เสร็จ แต่ก็ไม่ได้อีก เพราะมันก็กลายเป็น error อย่างอื่นไป (บอก session ยังไม่เปิด fetch ข้อมูลไม่ได้ ว๊ากกก มันอะไรฟะ) จนในที่สุดเลยเข้าไปดูใน config file แล้วก็แก้โค้ดตามด้านล่าง <bean [...]
Spring MVC กับ Strut
ที่จริงจะมาบ่นเรื่อง Spring MVC อ่ะ ก็เลยเอา Strut มาเปรียบเทียบด้วยเลย เพราะด้วยความยากของ Spring MVC ที่มันมีให้บ่นเยอะเหลือเกิน หรือเพราะชินกับการลากเส้นของ Strut ก็ไม่รู้ แต่ใช้ แล้วมันมีข้อข้องใจให้ต้องเปิดเว็บหาวิธีแก้เรื่อยไปอยู่ทุกทีสิ อย่างแรกเลยที่เซ็งมากเกี่ยวกับ Spring MVC คือการ Forward เพราะถ้าเป็น Strut มันจะแค่บอก Forward แล้วก็ Action หรือ Page เลยตอน Return (โดยการลากเส้น) แต่ถ้าเป็น Spring ดันต้องสร้าง Redirect View แล้วบอกมันก่อนว่าจะให้ไป Controller ไหน ถ้าจะให้ชี้ไปที่ Action อีก Action นึง โอ้วพระเจ้าจอร์จ ทำไมไม่ทำให้มันเหมือนกันฟะ ระหว่างหน้า page กับ Controller -*- ยังไงมันก็ Forward ไปเหมือนกัน [...]
ปวดหัวกับ url path
วันนี้เจอเรื่องปวดหัวที่สุดเกี่ยวกับ url path ของ วิกิ เพราะว่า path ทั้งหมดของวิกิ มันไม่มีไฟล์อยู่จริงเนี๊ยะสิ แต่เป็นการเรียกผ่าน Controller เพื่อดึงข้อมูลจากฐานข้อมูลมาสร้างเป็น View โดยตรง เลยต้องขุดหาวิธีใช้ url mapping กันพอสมควรแต่สุดท้ายก็ยังหาไม่ได้ เง้อ ได้มากสุดคือมี directory แปะมาด้วยอ่ะ แต่ดูแล้วมันแปลกๆ ไงไม่รู้ต่างจาก wiki อื่นอ่ะ (หรือทำให้ต่างไปเลยดีวะ แปลกดี) สงสัยถ้าไม่ได้จริงๆ ต้องทำงี้ซะแล้ว
Spring Framework MVC application step-by-step part2
จากเว็บ http://www.springframework.org/docs/MVC-step-by-step/Spring-MVC-step-by-step-Part-2.html จะเริ่มที่ Step13 แต่ที่เขียนจากตอนที่แล้วรู้สึกขั้นสุดท้ายจะเป็น Step 8 แฮะ งั้นคราวนี้ก็เริ่มที่ Step 9 ละกัน Step9 ปรับ index.jsp ให้ดีขึ้นหน่อย ขั้นแรกเลย Copy ไฟล์ jstl.jar จาก spring-framework-2.0/lib/j2ee/ มาใส่ไว้ใน WEB-INF/lib Copy ไฟล์ standard.jar จาก spring-framework-2.0/lib/jakarta-taglib/ มาใส่ไว้ใน WEB-INF/lib เข้าไปใน Eclipse แล้วกด F5 หรือ Refresh เพื่อให้ Library ที่ copy มาใส่ โผล่ขึ้นมา สร้าง Directory jsp ขึ้นมาใน Directory /WEB-INF เพื่อแยกไฟล์ jsp มาอยู่ในนี้ให้เป็นระเบียบ และกันไม่ให้สามารถเรียกไฟล์ jsp ได้โดยตรงเพื่อความปลอดภัย [...]