检查本地路径是否编写正确
404是找不到网页,struts.xml文件需要在action下写一个<result name="action中return的字符串">xxxx.jsp</result>
你的代码productaction.java 30行报错了,空指针
https://github.com/QiSimon/Projects.git
那就换成另一个名字saveProduct,可能save是自带的方法
看看applicationContext.xml 文件下 <bean id="productService" class="..service.ProductService"><property name="prductDao" ref="prductDao"></property></bean>是否有这句话(注入dao层),productService然后在类里面注入dao,用set方法private ProductDao productDao public void setProductDao(ProductDao productDao){this.productDao=productDao}
同问,也是这个错误,
Did you mean 'adao'?你的类里面取名是这个,而你想用addDao,所以报错了,你检查一下你的名称是否一致,我的之前也报这个错误,原因就是多了个空格,真的严格--,希望对你有帮助
我使用第一种方法:action的类由struts2自身创建也会出这个错误,也没解决。但是使用第二种方法交由spring创建就行的。需要修改两个地方,struts.xml 的class 修改为 productAction,并在applicationContext.xml 中添加
<!-- 配置Action类 因为是默认是单例,所以要加上scope-->
<bean id="productAction" class="com.ssh.action.ProductAction" scope="prototype">
<!-- 手动注入Service -->
<property name="productService" ref="productService"></property>
</bean>
你看视频就清楚了。
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Insert title here</title>
</head>
<body>
<h1>保存商品的页面</h1>
<s:form action="product_save" method="post" namespace="/" theme="simple">
<table>
<tr>
<td>商品名称</td>
<td><s:textfield name="pname"/></td>
</tr>
<tr>
<td>商品价格</td>
<td><s:textfield name="price"/></td>
</tr>
<tr>
<td colspan=2><input type="submit" value="提交"/></td>
</tr>
</table>
</s:form>
</body>
你访问的路径对吗?如果你的jsp页面是在WebRoot目录下,其路径如下:http://localhost:8080/ssh/addProduct.jsp
其中:ssh是项目名称,addProduct.jsp是在WebRoot目录下的jsp页面
我之前导入的是最新的jar包,struts2-spring-plugin-2.3.34一直出现这个问题,后来重新导入struts2-spring-plugin-2.3.15.2就没问题了
action有问题,说是新版本不支持通配符_*,但是我还不知道具体怎么解决,目前是把product_*改成了product_save就可以显示jsp页面了
在struts.xml文件中看一下是不是这句话有误,要和下面一样
<action name="product_*" class="productAction" method="{1}"
我配置过了啊 ,你看是不是没有配置上。第一次用web.xml读取的方法
照着源码抄写就成了打字的了
我看到的是别人回答的导入struts2-spring-plugin包,我之前导入的是最新的jar包,struts2-spring-plugin-2.3.34一直出现这个问题,后来重新导入struts2-spring-plugin-2.3.15.2就没问题了,大家可以试试。终于解决了
问题不清楚,没法回答啊!
可能是哪块语法错误
我也这样,把jdk8 换到7就好了
将查询下Action 类的check方法是不是被定义成 private 类型了?要用public。。。
jdk换成1.6试一试
你这个代码也不贴上来,谁知道是什么问题啊
ProductAction类里面的私有对象productService和application.xml配置里面的productService的ID的配置不一致导致的空指针错误
哦,我有错,spring在action类中明确注入的是productService,没有注入product的,不好意思说错了