Struts+Spring 易出错问题

来源:互联网 发布:golang time.sleep 编辑:程序博客网 时间:2024/05/24 05:27
一、【转】Struts2中关于"There is no Action mapped for namespace / and action name"的总结

      今天在调试一个基础的Struts2框架小程序。总是提示"There is no Action mapped for namespace / and action name"的错误。上网查询后发现这是一个初学者经常碰到的问题,导致错误的原因主要有两种。总结如下:

      1、struts.xml文件错误。这种错误又分为以下几种:1,struts.xml文件名错误。一定要注意拼写问题;2,struts.xml文件放置路径错误。一定要将此文件放置在src目录下。编译成功后,要确认是否编译到classes目录中;3,struts.xml文件内容错误。下面给出一个正确的struts.xml文件以供参考。注意背景色部分。

<?xml version="1.0" encoding="UTF-8" ?><!DOCTYPE struts PUBLIC    "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"    "http://struts.apache.org/dtds/struts-2.0.dtd"><struts>    <package name="default" namespace="/" extends="struts-default">        <action name="login" class="com.wanggc.struts2.sample.Struts2Action">        <result name="success">/jsp/result.jsp</result>        </action>    </package></struts>
       2、如果排除了struts.xml文件的问题,还有一种可能就是,在web.xml文件中的<welcome-file>信息中是否配置了自己工程的启动页面。如果没有配置,地址栏中要输入完成的url,如:http://localhost:8080/Struts2Sample/jsp/login.jsp,后面的资源详细信息不输入的时候也会报这个错误,我就是栽在这个问题上的(^_^)。

二、Unable to instantiate Action 异常

      检查struts.xml文件,查看方法、类名是否写错。
三、NoSuchMethodError: org.codehaus.jackson.type.JavaType.<init>(Ljava/lang/Clas

这种问题属于jar包冲突:jackson-mapper-asl-1.9.*.jar如spring自带的jar包com.springsource.org.codehaus.jackson.mapper-1.4.2.jar冲突,从而在项目初始中抛出上述异常。解决方法是将com.springsource.org.codehaus.jackson.mapper-1.4.2.jar移除

spring MVC在使用jackson时一定要注意:jackson-core-asl-1.9.*.jar和jackson-mapper-asl-1.9.*.jar的版本号一定要相同,如:同时使用1.9.10。





0 0