在项目目录下运行启动jetty的命令:
mvn jetty:run
服务器启动后,在浏览器中输入127.0.0.1:8081,会出现以下界面
如果页面的中文是乱码,请看下面的总结~
注册后就可以留言了...
至此,一个简单的留言板系统完成了。
但是此留言板并没有权限验证功能,所以只要知道相应页面的url,即使不登陆也能访问;在留言列表页面,所有的人都有权对留言进行删除和修改操作,这显然是不合理的;
因此在后面的学习中会给系统增加权限验证的功能。(权限验证使用cookies和session,原理就是在登陆的时候在session中记录用户,访问其他页面时,验证请求中cookies的用户信息和session中的用户信息即可,后面会在webx3中实现~~)
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版本问题。