struts2中出现的错误:
使用user libraries的时候,发布项目不能用,不在lib中
必须把所有的jar包到放在lib里面,也不能放在lib的子目录中,只能放在lib当前目录下面。
method="{1}"是什么意思,后面又讲解
配置struts2遇到的错误:
1.将struts.xml写错了,这是第二次遇到这样的问题了,struts.xml必须这样写,
不然就得自己手动去配置了。系统默认识别struts.xml,并且是放在src目录下面的,
当发布的时候,会将它放在classes里面。
2.配置struts.xml的错误
<struts>
<package name="test" extends="struts-default">
<action name="test_*" class="li.shi.TestAction" method="myMethod">
<result name="index">/success.jsp</result>
</action>
</package>
</struts>
先看看这些标签的作用, http://www.cnblogs.com/xingyunblog/p/4006495.html
自己遇到的错误,就是对于里面通配符和method的理解:
这里使用了"*"来进行匹配,可以用method="{1}"来获得匹配的到方法,
这里的方法就是我们在action里面定义的。
如果找不到这个方法,就会报错
ognl.ExpressionSyntaxException: Malformed OGNL expression: <?xml version [ognl.ParseException: Encountered "<" at line 1, column 1.
Was expecting one of:
或者
There is no Action mapped for namespace [/] and action name [login] associate
第二个错误,主要是由于没有指定处理该请求的方法,也就是没有指名method,也没有使用默认的方法。
总结:
这被这个错误困扰了一天,开始以为是编译器的问题。后来根据异常
在网上搜了很多参考答案,没有一个是完全跟自己一样的。最后发现这个问题,
其实就是对于基本的用法不熟悉,漏掉了东西,或者写错了东西,最后导致
整个程序无法运行。现在遇到的问题,主要是对于一个技术,基本的结构了解不够
详细,容易误用或者漏用东西。所以,以后一定要先从整体了解一个技术,然后去
使用,避免盲目的模仿,最后出了奇葩的问题也很难解决。当然,模仿,有时候很容易
让自己掌握一门技术,很快看到运行的效果,弊端就是错误会很多。这也是并发编程
里面容易遇到的问题,当处理问题的速度加快时,错误也会增加,如果严格的去分析、了解,
最后花的时间也会很多。所以,还是要根据实际情况来处理问题。对于一些比较重要的,
以后经常遇到的技术问题,一定要搞懂,不允许有误差。而对于,一些不经常用到的东西,
可以模仿,快速学会,快速上手用,允许少量的误差。
问题,有很多种,自己很容易就解决的,花点时间能解决的,花很长时间才能解决的,
花很长时间也未必能解决好的,还未遇到的问题。对于一个目标,实现它,必然会遇到很多问题
那该怎么办呢?just bit it。击败他,想尽一切办法解决它,千万不能半途而非,不然什么收获
都没有。之前,学过很多东西,但都没有坚持去把一件事情完成好,只是了解了皮毛,这样是没有价值的。
一件事情的价值不在于你投入了多少,而是你能拿出多少东西来,你能帮人解决多少问题。能解决好问题,
把别人不能做的事情做好,这才自己的价值所在。所以,要不断磨练,提升自己的价值。问题,挫折,会让自己
变得更加强大。