利用maven创建webx3项目——实现简单的留言板(七)
测试和总结7、运行测试
在项目目录下运行启动jetty的命令:
?
mvn jetty:run
?
服务器启动后,在浏览器中输入127.0.0.1:8081,会出现以下界面
?
?
如果页面的中文是乱码,请看下面的总结~
?
注册后就可以留言了...
?
至此,一个简单的留言板系统完成了。
?
但是此留言板并没有权限验证功能,所以只要知道相应页面的url,即使不登陆也能访问;在留言列表页面,所有的人都有权对留言进行删除和修改操作,这显然是不合理的;
?
因此在后面的学习中会给系统增加权限验证的功能。(权限验证使用cookies和session,原理就是在登陆的时候在session中记录用户,访问其他页面时,验证请求中cookies的用户信息和session中的用户信息即可,后面会在webx3中实现~~)
?
8、总结?
1)配完后,第一次用jetty跑一下~出错了~~~检查一下,晕,文件夹的名字写错了,应该是messageBoard(messsageBoard)
?
2)写完中文标题,打开是乱码!?没错,是乱码,查一下吧。
?
原因可能有两个:一是velocity渲染的时候编码有问题;二是web服务器的编码有问题;
?
找到webx-component-and-root.xml 中
?
<services:template xmlns="http://www.alibaba.com/schema/services/template/engines"
? ? ? ? searchExtensions="true">
? ? ? ? <velocity-engine templateEncoding="utf-8" strictReference="false" path="/${component}/templates">
?
velocity的编码是utf-8~~郁闷,~~额~找到原因了,把utf-8改成GBK,再跑一下~~ok!!
?
?
3)Navigator nav 的重定向问题
?
页面跳转时取不到值!!!!!
?
最后问了问同事,居然还有下面这个知识点~学习了
?
nav.forwardTo("hello"); 转向,context值传递共享
?
nav.redirectTo("messageBoardLink").withTarget("index1"); 重定向,context值清零
?
4)表单验证失败
?
今年刚过反复实验,发现
?
<form action="$messageBoardLink.setTarget("hello")" method="post">
?
这里设置了action,则表单验证失效。
?
5)sqlmap
?
sqlmap配置文件中的命名空间貌似不起作用~~怀疑是ibaits版本问题。
?