错误:No action instance for path /login could be created
2009-08-23 15:26
585 查看
错误:No action instance for path /login could be created
问题:
这样的错误我搜了好多的帖子 一般都是路径与名字不匹配引起的,但是这个工程以前被Myeclipse运行的时候,没出错,今天就出错了 我怀疑是不是IDE不稳定引起的
望大家帮我解释
以下是我的login.jsp
<html:form action="/login" method="post">
name : <html:text property="name"/> <html:errors property="name"/> <br/>
password : <html:password property="password"/> <html:errors property="password"/> <br/>
<html:submit/> <html:reset/>
</html:form>
以下是我的struts-config
<action-mappings >
<action
attribute="loginForm"
input="/login.jsp"
name="loginForm"
path="/login"
scope="request"
type="com.lsf.struts.action.LoginAction" />
<action
attribute="registerForm"
input="/register.jsp"
name="registerForm"
path="/register"
scope="request"
type="com.lsf.struts.action.RegisterAction" />
</action-mappings>
以下是我的LoginAction.java
public ActionForward execute(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response)
throws SQLException {
User luser = new User();
DynaActionForm loginForm = (DynaActionForm) form;
// String name=loginForm.get("name");
// String password=loginForm.get("password");
luser.setUserName((String) loginForm.get("name"));
luser.setPassword((String) loginForm.get("password"));
User user = new User();
user = FindUser.findUserByName(luser.getUserName());
if (luser.getUserName().equals(user.getUserName())
&& luser.getPassword().equals(user.getPassword())) {
return mapping.findForward("loginsuccess");
} else {
return mapping.findForward("loginfail");
}
以下是我的错误信息
2009-8-23 10:38:29 org.apache.struts.action.RequestProcessor processActionCreate
严重: No action instance for path /login could be created
java.lang.ClassNotFoundException: com.lsf.struts.action.LoginAction
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1386)
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1232)
at org.apache.struts.util.RequestUtils.applicationClass(RequestUtils.java:117)
at org.apache.struts.util.RequestUtils.applicationInstance(RequestUtils.java:143)
at org.apache.struts.action.RequestProcessor.processActionCreate(RequestProcessor.java:292)
at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:230)
at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1196)
at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:432)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:647)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:729)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:269)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:172)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:108)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:174)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:875)
at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:665)
at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:528)
at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:81)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:689)
at java.lang.Thread.run(Thread.java:566)
解决途径: 从网上直接搜了No action instance for path /login could be created找到一些解决办法 例如 路径与文件名、类名不同(大小写,缺失字母)
数据连接池错误
Struts-config.Xml文件里面配置时候“”内有空格。
但是检查之后没任何错误:
经csdn中发帖,老紫竹提示 classes里面没有相应的类,或者是server.xml文件里面配置有错误(很少见),我检查了布置在tomcat里面的工程,里面却是没有包和class文件,说明编译失败:
从网上搜一些资料之后了解 Eclipse无法编译的解决途径有以下几种
1.确保project->build automatically 已经被选上.
2. 如果选上了,也不好使, 使用这一招: project->clean..->选第2个clean select project, 勾上start build immediatelly
3.删除现在的项目,提前设置好编译文件输出路径,重新导入源文件,设置eclipse为保存时编译,然后在保存的时候就可以自动编译了
4.如果项目里引了某个不用的jar包,而那个包又被你删了,就会出现不报错但怎么也编译不出来class文件的情况,可以把所有包都删除,然后一个一个的再引入(需要的),不要一下子把所有包都引入来,没用的可能会引起不良后果.
5. 想删掉某个class文件重新生成,删除class文件后,但classes目录下的文件夹被其它程序打开,比如Total Commander。此时编译也不会通过,在problems下可能会提示“con''t delete classes ……”。关掉其它程序重新编译即可。
6.还有种情况是remove掉 JRE System Library,重新导入即可编译。但是什么原因导致的还不清楚。
7.把build path中所有包都remove掉。然后又add jars,add libraries把需要的加进去,居然又开始编译了。。。
8.project->properties->java build path->source->.../WEB-INF/src的output folder不要默认,编辑让它指向../WEB-INF/classes
然后重新点击build工程即可自动编译。
9.再就是最重要的要看工程下面是否缺少了work目录,由于CVS控制时不把work加如版本,所以checkout后没有这个目录,要手工加上有的工程就能自动编译了
在进行简单的测试后 仍然没有解决问题
在 老紫竹java群I中 经bryant(358415***)提醒
在加入jdbc驱动后 问题解决
备注:看来一切问题都是纸老虎,很简单了问题 往往会花费很多时间来解决。但是在解决的过程中学到的东西才扎实。以后遇见问题我不能在想着 先把自己的知识扩充后 再来解决问题,而应该迎难而上,有很多人在帮你,有百度和Google在帮自己,只要自己的水平没有达到顶级,就有办法请教,就有办法解决。
问题:
这样的错误我搜了好多的帖子 一般都是路径与名字不匹配引起的,但是这个工程以前被Myeclipse运行的时候,没出错,今天就出错了 我怀疑是不是IDE不稳定引起的
望大家帮我解释
以下是我的login.jsp
<html:form action="/login" method="post">
name : <html:text property="name"/> <html:errors property="name"/> <br/>
password : <html:password property="password"/> <html:errors property="password"/> <br/>
<html:submit/> <html:reset/>
</html:form>
以下是我的struts-config
<action-mappings >
<action
attribute="loginForm"
input="/login.jsp"
name="loginForm"
path="/login"
scope="request"
type="com.lsf.struts.action.LoginAction" />
<action
attribute="registerForm"
input="/register.jsp"
name="registerForm"
path="/register"
scope="request"
type="com.lsf.struts.action.RegisterAction" />
</action-mappings>
以下是我的LoginAction.java
public ActionForward execute(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response)
throws SQLException {
User luser = new User();
DynaActionForm loginForm = (DynaActionForm) form;
// String name=loginForm.get("name");
// String password=loginForm.get("password");
luser.setUserName((String) loginForm.get("name"));
luser.setPassword((String) loginForm.get("password"));
User user = new User();
user = FindUser.findUserByName(luser.getUserName());
if (luser.getUserName().equals(user.getUserName())
&& luser.getPassword().equals(user.getPassword())) {
return mapping.findForward("loginsuccess");
} else {
return mapping.findForward("loginfail");
}
以下是我的错误信息
2009-8-23 10:38:29 org.apache.struts.action.RequestProcessor processActionCreate
严重: No action instance for path /login could be created
java.lang.ClassNotFoundException: com.lsf.struts.action.LoginAction
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1386)
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1232)
at org.apache.struts.util.RequestUtils.applicationClass(RequestUtils.java:117)
at org.apache.struts.util.RequestUtils.applicationInstance(RequestUtils.java:143)
at org.apache.struts.action.RequestProcessor.processActionCreate(RequestProcessor.java:292)
at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:230)
at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1196)
at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:432)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:647)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:729)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:269)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:172)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:108)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:174)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:875)
at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:665)
at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:528)
at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:81)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:689)
at java.lang.Thread.run(Thread.java:566)
解决途径: 从网上直接搜了No action instance for path /login could be created找到一些解决办法 例如 路径与文件名、类名不同(大小写,缺失字母)
数据连接池错误
Struts-config.Xml文件里面配置时候“”内有空格。
但是检查之后没任何错误:
经csdn中发帖,老紫竹提示 classes里面没有相应的类,或者是server.xml文件里面配置有错误(很少见),我检查了布置在tomcat里面的工程,里面却是没有包和class文件,说明编译失败:
从网上搜一些资料之后了解 Eclipse无法编译的解决途径有以下几种
1.确保project->build automatically 已经被选上.
2. 如果选上了,也不好使, 使用这一招: project->clean..->选第2个clean select project, 勾上start build immediatelly
3.删除现在的项目,提前设置好编译文件输出路径,重新导入源文件,设置eclipse为保存时编译,然后在保存的时候就可以自动编译了
4.如果项目里引了某个不用的jar包,而那个包又被你删了,就会出现不报错但怎么也编译不出来class文件的情况,可以把所有包都删除,然后一个一个的再引入(需要的),不要一下子把所有包都引入来,没用的可能会引起不良后果.
5. 想删掉某个class文件重新生成,删除class文件后,但classes目录下的文件夹被其它程序打开,比如Total Commander。此时编译也不会通过,在problems下可能会提示“con''t delete classes ……”。关掉其它程序重新编译即可。
6.还有种情况是remove掉 JRE System Library,重新导入即可编译。但是什么原因导致的还不清楚。
7.把build path中所有包都remove掉。然后又add jars,add libraries把需要的加进去,居然又开始编译了。。。
8.project->properties->java build path->source->.../WEB-INF/src的output folder不要默认,编辑让它指向../WEB-INF/classes
然后重新点击build工程即可自动编译。
9.再就是最重要的要看工程下面是否缺少了work目录,由于CVS控制时不把work加如版本,所以checkout后没有这个目录,要手工加上有的工程就能自动编译了
在进行简单的测试后 仍然没有解决问题
在 老紫竹java群I中 经bryant(358415***)提醒
在加入jdbc驱动后 问题解决
备注:看来一切问题都是纸老虎,很简单了问题 往往会花费很多时间来解决。但是在解决的过程中学到的东西才扎实。以后遇见问题我不能在想着 先把自己的知识扩充后 再来解决问题,而应该迎难而上,有很多人在帮你,有百度和Google在帮自己,只要自己的水平没有达到顶级,就有办法请教,就有办法解决。
相关文章推荐
- HTTP Status 500 - No action instance for path /store could be created
- The server encountered an internal error (No action instance for path /user could be created) th...
- No action instance for path /* could be created(
- HTTP Status 500 - No action instance for path could be created
- No action instance for path /leftTreeMenu could be created
- No action instance for path /* could be created
- Struts中关于"No action instance for path XXX could be created"的问题
- No action instance for path /serviceAgency could be created
- HTTP Status 500 - No action instance for path /student could be created
- The server encountered an internal error (No action instance for path /user could be created) that prevented it from fulfilling
- No actino instance for path /user could be created
- 完美解决HTTP Status 500 - No action instance could be created的问题
- here is no Action mapped for namespace [/] and action name [Login] associated with context path [].
- 关于struts2总是报There is no Action mapped for namespace / and action name login错误的一点经验
- 彻底解决STRUTS2 错误There is no Action mapped for namespace / and action name login
- 严重: Could not find action or result There is no Action mapped for namespace / and action name login.
- There is no Action mapped for namespace [/] and action name [accoutLogin] associated with context path [/cloudclick].Struts2错误
- There is no Action mapped for namespace [/] and action name [Login] associated with context path [/e
- There is no Action mapped for namespace [/] and action name [Login] associated with context path [/e
- There is no Action mapped for action name mylogin!regist错误原因