各项配置已经配置好了还是有 No result defined for action com.hzdaily.action.regAction and result input

发布于 2021-11-18 09:22:06 字数 4169 浏览 774 评论 5

首先是页面:这里没有用s标签,是因为我需要用第三方的前端框架,用了s标签那些就不可以用了

<form action="users/reg.action" method="post" name="regForm">
<div class="control-group">
<input type="text" name="mail" placeholder="您的邮箱" /> 
</div>
<div class="control-group">
<input type="password"  name="pswd1" placeholder="您的密码" />
</div>
<div class="control-group">
<input type="password"  name="pswd2" placeholder="请确认密码" />
</div>
<div class="control-group">
<input type="text" name="name" placeholder="您的姓名" /> 
</div>
<div class="control-group">
<input type="text"  name="phone" value="" placeholder="您的手机号码(非必填)" />
</div>
</div>
<button class="btn" data-dismiss="modal" aria-hidden="true">关闭</button>
<input type="submit" class="btn btn-primary" value="确定注册" />
然后 Struts.xml的配置:
<constant name="struts.i18n.encoding" value="UTF-8" />
	<constant name="struts.configuration.xml.reload" value="true"></constant>
	<constant name="struts.objectFactory" value="spring"/>
	<package name="UserPart" extends="struts-default" namespace="/users">

	<action name="login" class="loginAction" >
		<result name="success">/u/index.jsp</result>
		<result name="input">/index.jsp</result>
	</action>
	<action name="reg" class="regAction">
		<result name="input">/index.jsp</result>
		<result name="success">/u/reg.jsp</result>
	</action></package>
以及Action:这边可以确定是已经进入了execute方法。
public String execute() {
		if (!pswd1.equals(pswd2))
			return INPUT;
		if (name.length() > 15)
			return INPUT;
		if (mail.indexOf("@") < 1
				|| mail.lastIndexOf(".") < mail.lastIndexOf("@"))
			return INPUT;
		Users user = usersService.getByMail(mail);
		if (user == null)
			return INPUT;
		String password = MD5.md5s(pswd1);
		usersService.addUser(mail, password, name, phone);
		return SUCCESS;

	}
还有applicationContext.xml的配置:
<bean id="regAction" class="com.hzdaily.action.regAction" scope="prototype">
		<property name="usersService" ref="usersService"/>
	</bean>
这些应该基本是没问题的 但还是会出现没有定义result的问题。。

还有web.xml,应该也是没问题的,现在是控制台不打错误了,而网页页面会是这样,但是既然已经提示了准确的Action名称,而且在相应的execute自行打印其他字符的时候,也确认是执行了execute方法。

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" version="3.0">
  <display-name>hzdaily</display-name>
  <filter>
    <filter-name>struts2</filter-name>
    <filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>
  </filter>
  <filter-mapping>
    <filter-name>struts2</filter-name>
    <url-pattern>*.action</url-pattern>
  </filter-mapping>
  <context-param>
    <param-name>contextConfigLocation</param-name>
    <param-value>classpath:applicationContext.xml</param-value>
  </context-param>
    <listener>
    <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
  </listener>
  <filter>
  	<filter-name>OpenSessionInViewFilter</filter-name>
  	<filter-class>org.springframework.orm.hibernate4.support.OpenSessionInViewFilter</filter-class>
  </filter>
  <filter-mapping>
  	<filter-name>OpenSessionInViewFilter</filter-name>
  	<url-pattern>*.action</url-pattern>
  </filter-mapping>
</web-app>
纠结了好久了。。求大神们帮帮忙吧。

整体是 Struts2.1+hibernate4+Spring3

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(5

韬韬不绝 2021-11-24 21:47:46

jsp文件是存在的。。。这个问题上午莫名其妙好了以后。再添加的又出错了。。

爱的那么颓废 2021-11-24 20:29:38

一般是对应的jsp文件没找到,好好检查一下

北笙凉宸 2021-11-24 20:12:31

看了半天,表示没看出问题来。。。 

悟红尘 2021-11-24 17:57:17

restart是指server?

瑾夏年华 2021-11-24 17:47:58

clean restart.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文