1.helloWorld.jsp
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%@ taglib uri="http://struts.apache.org/tags-bean" prefix="bean"%>
<%@ taglib uri="http://struts.apache.org/tags-html" prefix="html"%>
<%@ taglib uri="http://struts.apache.org/tags-logic" prefix="logic"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title><bean:message key="helloworld.title"/></title>
</head>
<body style="FONT-SIZE: 12px">
<html:form action="/helloWorld">
<bean:message key="helloworld.message"/><br>
<bean:message key="helloworld.form.name"/>
<html:text property="name"/>
<html:errors property="name"/><br/>
<html:submit value="确定"/>
<html:reset value="重置"/>
</html:form>
<logic:notEmpty name="user">
Hello <bean:write name="user" property="name"/>
</logic:notEmpty>
</body>
</html>
2.struts-config.xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts-config PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 1.2//EN" "http://struts.apache.org/dtds/struts-config_1_2.dtd"><struts-config>
<data-sources />
<form-beans>
<form-bean name="helloWorldForm" type="com.gong.struts.form.HelloWorldForm" />
</form-beans>
<global-exceptions />
<global-forwards />
<action-mappings>
<action
attribute="helloWorldForm"
input="/helloWorld.jsp"
name="helloWorldForm"
path="/helloWorld"
scope="request"
type="com.gong.struts.action.HelloWorldAction">
<forward name="succ" path="/helloWorld.jsp" />
</action>
</action-mappings>
<message-resources parameter="com.gong.struts.ApplicationResources" />
</struts-config>其他.java文件都没问题初学java web开发,使用struts1.2,比着书上抄了第一个例子就出错,不知道怎么回事。请各位高手帮助。
在myeclipse发布执行后可以正常显示jsp,但是输入name,点确定后报错:
HTTP Status 500 - No action instance for path /helloWorld could be created--------------------------------------------------------------------------------type Status reportmessage No action instance for path /helloWorld could be createddescription The server encountered an internal error (No action instance for path /helloWorld could be created) that prevented it from fulfilling this request.
--------------------------------------------------------------------------------Apache Tomcat/6.0.16请问是怎么回事啊?
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%@ taglib uri="http://struts.apache.org/tags-bean" prefix="bean"%>
<%@ taglib uri="http://struts.apache.org/tags-html" prefix="html"%>
<%@ taglib uri="http://struts.apache.org/tags-logic" prefix="logic"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title><bean:message key="helloworld.title"/></title>
</head>
<body style="FONT-SIZE: 12px">
<html:form action="/helloWorld">
<bean:message key="helloworld.message"/><br>
<bean:message key="helloworld.form.name"/>
<html:text property="name"/>
<html:errors property="name"/><br/>
<html:submit value="确定"/>
<html:reset value="重置"/>
</html:form>
<logic:notEmpty name="user">
Hello <bean:write name="user" property="name"/>
</logic:notEmpty>
</body>
</html>
2.struts-config.xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts-config PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 1.2//EN" "http://struts.apache.org/dtds/struts-config_1_2.dtd"><struts-config>
<data-sources />
<form-beans>
<form-bean name="helloWorldForm" type="com.gong.struts.form.HelloWorldForm" />
</form-beans>
<global-exceptions />
<global-forwards />
<action-mappings>
<action
attribute="helloWorldForm"
input="/helloWorld.jsp"
name="helloWorldForm"
path="/helloWorld"
scope="request"
type="com.gong.struts.action.HelloWorldAction">
<forward name="succ" path="/helloWorld.jsp" />
</action>
</action-mappings>
<message-resources parameter="com.gong.struts.ApplicationResources" />
</struts-config>其他.java文件都没问题初学java web开发,使用struts1.2,比着书上抄了第一个例子就出错,不知道怎么回事。请各位高手帮助。
在myeclipse发布执行后可以正常显示jsp,但是输入name,点确定后报错:
HTTP Status 500 - No action instance for path /helloWorld could be created--------------------------------------------------------------------------------type Status reportmessage No action instance for path /helloWorld could be createddescription The server encountered an internal error (No action instance for path /helloWorld could be created) that prevented it from fulfilling this request.
--------------------------------------------------------------------------------Apache Tomcat/6.0.16请问是怎么回事啊?
解决方案 »
- 项目中新浪编辑器出了问题,急!在线等!!!
- Jsp + ChartDirector + Ajax求助
- 你页调用showmodaldialog返回后,原页动态绑定的onclick点击出错。
- 请高手给这段代码做一下,注释!
- 一個簡單struts的修改
- 一个分页问题!用select top not in 这种!不知是我脑子有问题还是....唉!会的朋友进来看看!
- 高手求救 分不就可以商量 请帮我一下 比有重谢
- 在链接里怎么传值呀!?????????????有谁能指点一下!!!!!!!!!
- JSP中有类似rs.recordcount的命令???JSP中怎么写?
- 用Java 实现报表用的是ipeport 3.7
- 如何获取用户上次登陆时间呢?
- 有没有这么一个方法
/*******************************************************************************
* ClassName: HelloWordForm *
* Description: Use for Input User Name *
* Date: 2009-02-24 *
* Author: Gong***** *
******************************************************************************/package com.gong.struts.form;import javax.servlet.http.HttpServletRequest;import org.apache.struts.action.ActionError;
import org.apache.struts.action.ActionErrors;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionMapping;/**
*
* @author gongyumin
*
*/
public class HelloWorldForm extends ActionForm { /**
* name property
*/
private String name;
/**
* Method validate
* @param mapping
* @param request
* @return ActionErrors
*/
@Override
@SuppressWarnings("deprecation")
public ActionErrors validate(ActionMapping mapping, HttpServletRequest request) {
ActionErrors errors = new ActionErrors();
if (name.length() == 0) {
ActionError error = new ActionError("helloworld.name.required");
errors.add("name", error);
}
return errors;
}
/**
* Method reset
* @param mapping
* @param request
*/
@Override
public void reset(ActionMapping mapping, HttpServletRequest request) {
this.name = "";
} /**
* Returns the name.
* @return String
*/
public String getName() {
return name;
} /**
* Set the name.
* @param name The name to set
*/
public void setName(String name) {
this.name = name;
}
}2.HelloWordAction.java
/*******************************************************************************
* ClassName: HelloWordAction *
* Description: Use for Disposing User Name *
* Date: 2009-02-24 *
* Author: Gong***** *
******************************************************************************/package com.gong.struts.action;import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;import org.apache.struts.action.Action;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;import com.gong.beans.User;
import com.gong.struts.form.HelloWorldForm;/**
*
* @author gongyumin
*
*/
public class HelloWordAction extends Action { /**
* Method execute
* @param mapping
* @param form
* @param request
* @param response
* @return ActionForward
*/
@Override
public ActionForward execute(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response)
throws Exception {
HelloWorldForm helloWorldForm = (HelloWorldForm)form;
String name = helloWorldForm.getName();
User user = new User();
user.setName(name);
request.setAttribute("user", user);
return mapping.findForward("succ");
}
}3.User.java
/*******************************************************************************
* ClassName: User *
* Description: User Bean *
* Date: 2009-02-24 *
* Author: Gong***** *
******************************************************************************/package com.gong.beans;/**
*
* @author gongyumin
*
*/
public class User { private String name;
public void doSomething() {
// 进行具体的业务逻辑处理
} /**
* Returns the name
* @return name
*/
public String getName() {
return name;
} /**
* Sets the name
* @param name
*/
public void setName(String name) {
this.name = name;
}
}
4.web.xml
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.5" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
<servlet>
<servlet-name>action</servlet-name>
<servlet-class>org.apache.struts.action.ActionServlet</servlet-class>
<init-param>
<param-name>config</param-name>
<param-value>/WEB-INF/struts-config.xml</param-value>
</init-param>
<init-param>
<param-name>debug</param-name>
<param-value>3</param-value>
</init-param>
<init-param>
<param-name>detail</param-name>
<param-value>3</param-value>
</init-param>
<load-on-startup>0</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>action</servlet-name>
<url-pattern>*.do</url-pattern>
</servlet-mapping>
<welcome-file-list>
<welcome-file>helloWorld.jsp</welcome-file>
</welcome-file-list>
</web-app>
写错了 应该是com.gong.struts.action.HelloWordAction
意思是说找到了struts的配置文件,但是根据path="/helloWorld",未找到相应的 type="com.gong.struts.action.HelloWorldAction">
world又写成word了。
真是白痴。
我也试过加.do,但是没有解决问题,书上例子没加.do,结果我又去掉了。