首页 新闻 会员 周边

java基础 servlet-class找不到

0
悬赏园豆:10 [已解决问题] 解决于 2013-01-14 09:25

在编辑web.xml的时候,为什么点击servlet找不到自己编写的myServlet.LoginValidate这个类呀 ?直接拿web.xml进行添加上去,运行不了。请问怎样操作的?刚学这些,希望指导。希望配置成这样

  <servlet>
    <servlet-name>Login</servlet-name>
    <servlet-class>myServlet.LoginValidate</servlet-class>
  </servlet>
  <servlet-mapping>
    <servlet-name>login</servlet-name>
    <url-pattern>/login.do</url-pattern>
  </servlet-mapping>

问题补充:

2013-1-11 9:09:44 org.apache.catalina.core.AprLifecycleListener init
信息: The APR based Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: C:\Program Files\Genuitec\Common\binary\com.sun.java.jdk.win32.x86_1.6.0.013\bin;E:\tomcat\bin
2013-1-11 9:09:45 org.apache.coyote.http11.Http11Protocol init
信息: Initializing Coyote HTTP/1.1 on http-8080
2013-1-11 9:09:45 org.apache.catalina.startup.Catalina load
信息: Initialization processed in 2235 ms
2013-1-11 9:09:46 org.apache.catalina.core.StandardService start
信息: Starting service Catalina
2013-1-11 9:09:46 org.apache.catalina.core.StandardEngine start
信息: Starting Servlet Engine: Apache Tomcat/6.0.33
2013-1-11 9:09:46 org.apache.catalina.startup.HostConfig deployDescriptor
信息: Deploying configuration descriptor host-manager.xml
2013-1-11 9:09:47 org.apache.catalina.startup.HostConfig deployDescriptor
信息: Deploying configuration descriptor manager.xml
2013-1-11 9:09:47 org.apache.catalina.startup.HostConfig deployDirectory
信息: Deploying web application directory .metadata
2013-1-11 9:09:47 org.apache.catalina.startup.HostConfig deployDirectory
信息: Deploying web application directory demo
2013-1-11 9:09:47 org.apache.tomcat.util.digester.Digester endElement
严重: End event threw exception
java.lang.reflect.InvocationTargetException
 at sun.reflect.GeneratedMethodAccessor18.invoke(Unknown Source)
 at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
 at java.lang.reflect.Method.invoke(Method.java:597)
 at org.apache.tomcat.util.IntrospectionUtils.callMethodN(IntrospectionUtils.java:959)
 at org.apache.catalina.startup.CallMethodMultiRule.end(WebRuleSet.java:789)
 at org.apache.tomcat.util.digester.Rule.end(Rule.java:229)
 at org.apache.tomcat.util.digester.Digester.endElement(Digester.java:1138)
 at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.endElement(AbstractSAXParser.java:601)
 at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanEndElement(XMLDocumentFragmentScannerImpl.java:1774)
 at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:2930)
 at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:648)
 at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:510)
 at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:807)
 at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:737)
 at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:107)
 at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1205)
 at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:522)
 at org.apache.tomcat.util.digester.Digester.parse(Digester.java:1642)
 at org.apache.catalina.startup.ContextConfig.applicationWebConfig(ContextConfig.java:365)
 at org.apache.catalina.startup.ContextConfig.start(ContextConfig.java:1076)
 at org.apache.catalina.startup.ContextConfig.lifecycleEvent(ContextConfig.java:261)
 at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:142)
 at org.apache.catalina.core.StandardContext.start(StandardContext.java:4612)
 at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:799)
 at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:779)
 at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:601)
 at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:1079)
 at org.apache.catalina.startup.HostConfig.deployDirectories(HostConfig.java:1002)
 at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:506)
 at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1317)
 at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:324)
 at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:142)
 at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1065)
 at org.apache.catalina.core.StandardHost.start(StandardHost.java:840)
 at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1057)
 at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:463)
 at org.apache.catalina.core.StandardService.start(StandardService.java:525)
 at org.apache.catalina.core.StandardServer.start(StandardServer.java:754)
 at org.apache.catalina.startup.Catalina.start(Catalina.java:595)
 at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
 at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
 at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
 at java.lang.reflect.Method.invoke(Method.java:597)
 at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:289)
 at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:414)
Caused by: java.lang.IllegalArgumentException: Invalid <url-pattern> login.do in servlet mapping
 at org.apache.catalina.core.StandardContext.addServletMapping(StandardContext.java:2743)
 at org.apache.catalina.core.StandardContext.addServletMapping(StandardContext.java:2719)
 ... 45 more
2013-1-11 9:09:47 org.apache.catalina.startup.ContextConfig applicationWebConfig
严重: Parse error in application web.xml file at jndi:/localhost/demo/WEB-INF/web.xml
java.lang.IllegalArgumentException: Invalid <url-pattern> login.do in servlet mapping
 at org.apache.tomcat.util.digester.Digester.createSAXException(Digester.java:2806)
 at org.apache.tomcat.util.digester.Digester.createSAXException(Digester.java:2832)
 at org.apache.tomcat.util.digester.Digester.endElement(Digester.java:1141)
 at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.endElement(AbstractSAXParser.java:601)
 at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanEndElement(XMLDocumentFragmentScannerImpl.java:1774)
 at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:2930)
 at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:648)
 at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:510)
 at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:807)
 at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:737)
 at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:107)
 at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1205)
 at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:522)
 at org.apache.tomcat.util.digester.Digester.parse(Digester.java:1642)
 at org.apache.catalina.startup.ContextConfig.applicationWebConfig(ContextConfig.java:365)
 at org.apache.catalina.startup.ContextConfig.start(ContextConfig.java:1076)
 at org.apache.catalina.startup.ContextConfig.lifecycleEvent(ContextConfig.java:261)
 at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:142)
 at org.apache.catalina.core.StandardContext.start(StandardContext.java:4612)
 at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:799)
 at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:779)
 at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:601)
 at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:1079)
 at org.apache.catalina.startup.HostConfig.deployDirectories(HostConfig.java:1002)
 at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:506)
 at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1317)
 at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:324)
 at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:142)
 at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1065)
 at org.apache.catalina.core.StandardHost.start(StandardHost.java:840)
 at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1057)
 at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:463)
 at org.apache.catalina.core.StandardService.start(StandardService.java:525)
 at org.apache.catalina.core.StandardServer.start(StandardServer.java:754)
 at org.apache.catalina.startup.Catalina.start(Catalina.java:595)
 at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
 at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
 at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
 at java.lang.reflect.Method.invoke(Method.java:597)
 at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:289)
 at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:414)
2013-1-11 9:09:47 org.apache.catalina.startup.ContextConfig applicationWebConfig
严重: Occurred at line 11 column 20
2013-1-11 9:09:47 org.apache.catalina.startup.ContextConfig start
严重: Marking this application unavailable due to previous error(s)
2013-1-11 9:09:48 org.apache.catalina.core.StandardContext start
严重: Error getConfigured
2013-1-11 9:09:48 org.apache.catalina.core.StandardContext start
严重: Context [/demo] startup failed due to previous errors
2013-1-11 9:09:48 org.apache.catalina.startup.HostConfig deployDirectory
信息: Deploying web application directory Demo2
2013-1-11 9:09:48 org.apache.catalina.startup.HostConfig deployDirectory
信息: Deploying web application directory demo3
2013-1-11 9:09:48 org.apache.catalina.startup.HostConfig deployDirectory
信息: Deploying web application directory docs
2013-1-11 9:09:48 org.apache.catalina.startup.HostConfig deployDirectory
信息: Deploying web application directory examples
2013-1-11 9:09:49 org.apache.catalina.core.ApplicationContext log
信息: ContextListener: contextInitialized()
2013-1-11 9:09:49 org.apache.catalina.core.ApplicationContext log
信息: SessionListener: contextInitialized()
2013-1-11 9:09:49 org.apache.catalina.startup.HostConfig deployDirectory
信息: Deploying web application directory library
2013-1-11 9:09:49 org.apache.catalina.startup.HostConfig deployDirectory
信息: Deploying web application directory ROOT
2013-1-11 9:09:49 org.apache.coyote.http11.Http11Protocol start
信息: Starting Coyote HTTP/1.1 on http-8080
2013-1-11 9:09:50 org.apache.jk.common.ChannelSocket init
信息: JK: ajp13 listening on /0.0.0.0:8009
2013-1-11 9:09:50 org.apache.jk.server.JkMain start
信息: Jk running ID=0 time=0/78  config=null
2013-1-11 9:09:50 org.apache.catalina.startup.Catalina start
信息: Server startup in 4427 ms

 

 

我直接的修改配置文件,变成如下:

<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee"
 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee   http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
 <servlet>
  <servlet-name>login</servlet-name>
  <servlet-class>myServlet.LoginValidate</servlet-class>
 </servlet>
 <servlet-mapping>
  <servlet-name>login</servlet-name>
  <url-pattern>login.do</url-pattern>
 </servlet-mapping>
 <welcome-file-list>
  <welcome-file>login.htm</welcome-file>
 </welcome-file-list>
 <login-config>
  <auth-method>BASIC</auth-method>
 </login-config>
</web-app>

运行服务器后,报上面的错误。下面是提交的页面:

<html>
  <head>
    <title>登陆页面</title>
  </head>
 
  <body>
   <form method="post" action="login.do">
   用户名:
   <input type="text" name="username"/>
   密码:
  <input type="password" name="password"/>
  <input type="Submit" value="提交"/>
   </form>
   </body>
</html>

笨笨,跳跳的主页 笨笨,跳跳 | 初学一级 | 园豆:164
提问于:2013-01-10 17:46
< >
分享
最佳答案
0

我的建议:

第一:查看你的myServlet.LoginValidate有没有实现Servlet接口

第二: 点击Project-->clean , 然后选中你的项目进行清理一次看看

收获园豆:5
小源求学 | 菜鸟二级 |园豆:207 | 2013-01-10 21:57

有实现对Servlet接口,执行clean后还是原来的样子。然后手动修改配置文件,报上面的错误。请问如何修改?

笨笨,跳跳 | 园豆:164 (初学一级) | 2013-01-11 09:16
其他回答(1)
0

是不是你的LoginValidate类里面没有包的定义??

收获园豆:5
angelshelter | 园豆:9887 (大侠五级) | 2013-01-10 20:08

package myServlet;
import java.io.IOException;
import java.io.PrintWriter;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;


public class LoginValidate extends  HttpServlet{
    public void doGet(HttpServletRequest request,HttpServletResponse response)throws ServletException,IOException{
    String name = request.getParameter("username");
    String pwd =  request.getParameter("password");
    LoginDBO loginDBO = new LoginDBO();
    String message = loginDBO.login(name,pwd);
    String url = "returnMessage.jsp?message="+message;
    url = new String(url.getBytes("GBK"),"ISO8859_1");
    response.sendRedirect(url);
  
 }

    public void doPost(HttpServletRequest request,HttpServletResponse response)throws ServletException,IOException{
    this.doGet(request, response) ;
 
  }
}

这个是类的代码,里面包含了对包的定义了的。

支持(0) 反对(0) 笨笨,跳跳 | 园豆:164 (初学一级) | 2013-01-11 09:06
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册