在启动Tomcat之后用Restlet测试用户登录功能时总是返回404

来源:6-9 用户模块所有功能自测试

星辰Iron

2017-09-02

在启动Tomcat之后用Restlet测试用户登录功能时总是返回404,是不是我的项目部署有问题?如何解决?(我的加载信息对比老师的少了很多),如下是完整日志信息

PS:我看到下面有个提示说tomcat-servlet-api-7.0.76.jar未加载成功,是否是这个原因?

九月 02, 2017 7:45:58 上午 org.apache.catalina.startup.VersionLoggerListener log
信息: Server version:        Apache Tomcat/7.0.76
九月 02, 2017 7:45:58 上午 org.apache.catalina.startup.VersionLoggerListener log
信息: Server built:          Mar 9 2017 13:49:01 UTC
九月 02, 2017 7:45:58 上午 org.apache.catalina.startup.VersionLoggerListener log
信息: Server number:         7.0.76.0
九月 02, 2017 7:45:58 上午 org.apache.catalina.startup.VersionLoggerListener log
信息: OS Name:               Windows 8.1
九月 02, 2017 7:45:58 上午 org.apache.catalina.startup.VersionLoggerListener log
信息: OS Version:            6.3
九月 02, 2017 7:45:58 上午 org.apache.catalina.startup.VersionLoggerListener log
信息: Architecture:          amd64
九月 02, 2017 7:45:58 上午 org.apache.catalina.startup.VersionLoggerListener log
信息: Java Home:             C:\Program Files\Java\jre7
九月 02, 2017 7:45:58 上午 org.apache.catalina.startup.VersionLoggerListener log
信息: JVM Version:           1.7.0_80-b15
九月 02, 2017 7:45:58 上午 org.apache.catalina.startup.VersionLoggerListener log
信息: JVM Vendor:            Oracle Corporation
九月 02, 2017 7:45:58 上午 org.apache.catalina.startup.VersionLoggerListener log
信息: CATALINA_BASE:         C:\Users\Jupiter-Lee\.IntelliJIdea2016.1\system\tomcat\Unnamed_mmall
九月 02, 2017 7:45:58 上午 org.apache.catalina.startup.VersionLoggerListener log
信息: CATALINA_HOME:         D:\apache-tomcat-7.0.76
九月 02, 2017 7:45:58 上午 org.apache.catalina.startup.VersionLoggerListener log
信息: Command line argument: -Djava.util.logging.config.file=C:\Users\Jupiter-Lee\.IntelliJIdea2016.1\system\tomcat\Unnamed_mmall\conf\logging.properties
九月 02, 2017 7:45:58 上午 org.apache.catalina.startup.VersionLoggerListener log
信息: Command line argument: -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager
九月 02, 2017 7:45:58 上午 org.apache.catalina.startup.VersionLoggerListener log
信息: Command line argument: -Dcom.sun.management.jmxremote=
九月 02, 2017 7:45:58 上午 org.apache.catalina.startup.VersionLoggerListener log
信息: Command line argument: -Dcom.sun.management.jmxremote.port=1099
九月 02, 2017 7:45:58 上午 org.apache.catalina.startup.VersionLoggerListener log
信息: Command line argument: -Dcom.sun.management.jmxremote.ssl=false
九月 02, 2017 7:45:58 上午 org.apache.catalina.startup.VersionLoggerListener log
信息: Command line argument: -Dcom.sun.management.jmxremote.authenticate=false
九月 02, 2017 7:45:58 上午 org.apache.catalina.startup.VersionLoggerListener log
信息: Command line argument: -Djava.rmi.server.hostname=127.0.0.1
九月 02, 2017 7:45:58 上午 org.apache.catalina.startup.VersionLoggerListener log
信息: Command line argument: -Djdk.tls.ephemeralDHKeySize=2048
九月 02, 2017 7:45:58 上午 org.apache.catalina.startup.VersionLoggerListener log
信息: Command line argument: -Djava.endorsed.dirs=D:\apache-tomcat-7.0.76\endorsed
九月 02, 2017 7:45:58 上午 org.apache.catalina.startup.VersionLoggerListener log
信息: Command line argument: -Dcatalina.base=C:\Users\Jupiter-Lee\.IntelliJIdea2016.1\system\tomcat\Unnamed_mmall
九月 02, 2017 7:45:58 上午 org.apache.catalina.startup.VersionLoggerListener log
信息: Command line argument: -Dcatalina.home=D:\apache-tomcat-7.0.76
九月 02, 2017 7:45:58 上午 org.apache.catalina.startup.VersionLoggerListener log
信息: Command line argument: -Djava.io.tmpdir=D:\apache-tomcat-7.0.76\temp
九月 02, 2017 7:45:58 上午 org.apache.catalina.core.AprLifecycleListener lifecycleEvent
信息: 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\Java\jre7\bin;C:\WINDOWS\Sun\Java\bin;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\WINDOWS\System32\WindowsPowerShell\v1.0\;C:\WINDOWS\system32\config\systemprofile\.dnx\bin;C:\Program Files\Microsoft DNX\Dnvm\;C:\Program Files\Microsoft SQL Server\130\Tools\Binn\;C:\Program Files\Java\jdk1.8.0_101\bin;C:\Program Files\Java\jdk1.8.0_101\jre\bin;C:\Program Files (x86)\Calibre2\;C:\MongoDB\bin;C:\Maven\apache-maven-3.3.9\bin;C:\Python;D:\mySQL\bin;C:\Program Files\Git\cmd;C:\Program Files\nodejs\;C:\Program Files\gradle-4.0.1\bin;C:\Program Files (x86)\MySQL\MySQL Server 5.1\bin;C:\Users\Jupiter-Lee\AppData\Local\Microsoft\WindowsApps;;C:\Program Files\Heroku\bin;C:\Users\Jupiter-Lee\AppData\Roaming\npm;.
九月 02, 2017 7:45:58 上午 org.apache.coyote.AbstractProtocol init
信息: Initializing ProtocolHandler ["http-bio-8080"]
九月 02, 2017 7:45:58 上午 org.apache.coyote.AbstractProtocol init
信息: Initializing ProtocolHandler ["ajp-bio-8009"]
九月 02, 2017 7:45:58 上午 org.apache.catalina.startup.Catalina load
信息: Initialization processed in 598 ms
九月 02, 2017 7:45:58 上午 org.apache.catalina.core.StandardService startInternal
信息: Starting service Catalina
九月 02, 2017 7:45:58 上午 org.apache.catalina.core.StandardEngine startInternal
信息: Starting Servlet Engine: Apache Tomcat/7.0.76
九月 02, 2017 7:45:58 上午 org.apache.coyote.AbstractProtocol start
信息: Starting ProtocolHandler ["http-bio-8080"]
九月 02, 2017 7:45:58 上午 org.apache.coyote.AbstractProtocol start
信息: Starting ProtocolHandler ["ajp-bio-8009"]
九月 02, 2017 7:45:58 上午 org.apache.catalina.startup.Catalina start
信息: Server startup in 42 ms
九月 02, 2017 7:45:59 上午 org.apache.catalina.loader.WebappClassLoaderBase validateJarFile
信息: validateJarFile(D:\apache-tomcat-7.0.76\webapps\ROOT\WEB-INF\lib\tomcat-servlet-api-7.0.76.jar) - jar not loaded. See Servlet Spec 3.0, section 10.7.2. Offending class: javax/servlet/Servlet.class
九月 02, 2017 7:46:01 上午 org.apache.catalina.startup.TldConfig execute


写回答

4回答

Geely

2017-09-02

同学,你好

  1. 首先检查tomcat  webapps下面的目录,是否已经把项目发布到ROOT下

  2. 在pom.xml显示引入教程源码当中的servlet的包

  3. 在idea部署的时候,记得选择war的那个选项。

  4. 不部署项目,只启动tomcat,看看是否tomcat正常服务

  5. 通过以上进行排查,进一步的截图和日志请再发上来,让我们一起来解决。

0
3
慕粉3884565
还有我在用idea部署时候,不是说在商品模块url映射有个manager吗,tomcat下面有个项目就是manager,后来冲突了导致404
2018-10-08
共3条回复

星辰Iron

提问者

2017-09-03

我看了一下tomcat  webapps目录下的ROOT文件夹,里面没有war包(如下图)//szimg.mukewang.com/59abf61f00012ae609580444.jpg


但是我通过maven的Lifecycle里面package把mmall.war打包成功了,直接放到tomcat webapps目录下的ROOT文件夹下面之后再启动Tomcat可以成功测试用户登录、注册等功能,但是在idea下面启动tomcat发送login.do请求却无响应(如下图)

//szimg.mukewang.com/59abf3670001363215300862.jpg

是不是我的idea配置有问题?


PS:另外我注意到我在添加artifact时有一步的内容(Available Elements)不太一样,会不会因为这个原因?

下图我的配置情况

//szimg.mukewang.com/59abf7920001ad9b14120842.jpg

跟老师你的配置不太一样

//szimg.mukewang.com/59abf792000147d110200713.jpg


0
6
Geely
回复
星辰Iron
嘻嘻应该滴,一起加油,有时间采纳一下答案哟。么么哒
2017-09-04
共6条回复

Geely

2017-09-03

hi同学你好。

首先检查tomcat  webapps下面的目录,是否已经把项目发布到ROOT下


这个有检查没,发一下文件夹截图我看看。

还有一个是部署的正确方式

看这里


http://learning.happymmall.com/QQ%E5%AD%A6%E4%B9%A0%E7%BE%A4%E5%A4%A7%E5%AE%B6%E5%85%B1%E4%BA%AB%E7%9A%84useful%E6%96%87%E6%A1%A3/%E5%85%B3%E4%BA%8Eidea%E7%9A%84tomcat%E6%B2%A1%E6%9C%89artifact%E4%BB%A5%E5%8F%8A%E6%B5%8B%E8%AF%95tomcat%E6%8A%A5404%E9%94%99%E8%AF%AF.docx



0
0

星辰Iron

提问者

2017-09-02

我重新生成了一遍mmall.war包,不过看日志信息我写的内容并没有被部署进war包

我的流程是:先编译生成war包,然后部署到Tomcat服务器里面,我感觉应该是我的打包方式有问题,不过还没找出来是哪里出了错

每回我启动Tomcat之后都会自动打开一个带有Hello World字样的页面(如下图),但是测试用户登录功能还是返回404页面

//szimg.mukewang.com/59aa7f560001424203520163.jpg

Tomcat服务器提示部署无效

D:\apache-tomcat-7.0.76\bin\catalina.bat run
[2017-09-02 05:41:24,744] Artifact mmall.war: Server is not connected. Deploy is not available.
Using CATALINA_BASE:   "C:\Users\Jupiter-Lee\.IntelliJIdea2016.1\system\tomcat\Unnamed_mmall"
Using CATALINA_HOME:   "D:\apache-tomcat-7.0.76"
Using CATALINA_TMPDIR: "D:\apache-tomcat-7.0.76\temp"
Using JRE_HOME:        "C:\Program Files\Java\jdk1.7.0_80"
Using CLASSPATH:       "D:\apache-tomcat-7.0.76\bin\bootstrap.jar;D:\apache-tomcat-7.0.76\bin\tomcat-juli.jar"
九月 02, 2017 5:41:25 下午 org.apache.catalina.startup.VersionLoggerListener log
信息: Server version:        Apache Tomcat/7.0.76
九月 02, 2017 5:41:25 下午 org.apache.catalina.startup.VersionLoggerListener log
信息: Server built:          Mar 9 2017 13:49:01 UTC
九月 02, 2017 5:41:25 下午 org.apache.catalina.startup.VersionLoggerListener log
信息: Server number:         7.0.76.0
九月 02, 2017 5:41:25 下午 org.apache.catalina.startup.VersionLoggerListener log
信息: OS Name:               Windows 8.1
九月 02, 2017 5:41:25 下午 org.apache.catalina.startup.VersionLoggerListener log
信息: OS Version:            6.3
九月 02, 2017 5:41:25 下午 org.apache.catalina.startup.VersionLoggerListener log
信息: Architecture:          amd64
九月 02, 2017 5:41:25 下午 org.apache.catalina.startup.VersionLoggerListener log
信息: Java Home:             C:\Program Files\Java\jdk1.7.0_80\jre
九月 02, 2017 5:41:25 下午 org.apache.catalina.startup.VersionLoggerListener log
信息: JVM Version:           1.7.0_80-b15
九月 02, 2017 5:41:25 下午 org.apache.catalina.startup.VersionLoggerListener log
信息: JVM Vendor:            Oracle Corporation
九月 02, 2017 5:41:25 下午 org.apache.catalina.startup.VersionLoggerListener log
信息: CATALINA_BASE:         C:\Users\Jupiter-Lee\.IntelliJIdea2016.1\system\tomcat\Unnamed_mmall
九月 02, 2017 5:41:25 下午 org.apache.catalina.startup.VersionLoggerListener log
信息: CATALINA_HOME:         D:\apache-tomcat-7.0.76
九月 02, 2017 5:41:25 下午 org.apache.catalina.startup.VersionLoggerListener log
信息: Command line argument: -Djava.util.logging.config.file=C:\Users\Jupiter-Lee\.IntelliJIdea2016.1\system\tomcat\Unnamed_mmall\conf\logging.properties
九月 02, 2017 5:41:25 下午 org.apache.catalina.startup.VersionLoggerListener log
信息: Command line argument: -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager
九月 02, 2017 5:41:25 下午 org.apache.catalina.startup.VersionLoggerListener log
信息: Command line argument: -Dcom.sun.management.jmxremote=
九月 02, 2017 5:41:25 下午 org.apache.catalina.startup.VersionLoggerListener log
信息: Command line argument: -Dcom.sun.management.jmxremote.port=1099
九月 02, 2017 5:41:25 下午 org.apache.catalina.startup.VersionLoggerListener log
信息: Command line argument: -Dcom.sun.management.jmxremote.ssl=false
九月 02, 2017 5:41:25 下午 org.apache.catalina.startup.VersionLoggerListener log
信息: Command line argument: -Dcom.sun.management.jmxremote.authenticate=false
九月 02, 2017 5:41:25 下午 org.apache.catalina.startup.VersionLoggerListener log
信息: Command line argument: -Djava.rmi.server.hostname=127.0.0.1
九月 02, 2017 5:41:25 下午 org.apache.catalina.startup.VersionLoggerListener log
信息: Command line argument: -Djdk.tls.ephemeralDHKeySize=2048
九月 02, 2017 5:41:25 下午 org.apache.catalina.startup.VersionLoggerListener log
信息: Command line argument: -Djava.endorsed.dirs=D:\apache-tomcat-7.0.76\endorsed
九月 02, 2017 5:41:25 下午 org.apache.catalina.startup.VersionLoggerListener log
信息: Command line argument: -Dcatalina.base=C:\Users\Jupiter-Lee\.IntelliJIdea2016.1\system\tomcat\Unnamed_mmall
九月 02, 2017 5:41:25 下午 org.apache.catalina.startup.VersionLoggerListener log
信息: Command line argument: -Dcatalina.home=D:\apache-tomcat-7.0.76
九月 02, 2017 5:41:25 下午 org.apache.catalina.startup.VersionLoggerListener log
信息: Command line argument: -Djava.io.tmpdir=D:\apache-tomcat-7.0.76\temp
九月 02, 2017 5:41:25 下午 org.apache.catalina.core.AprLifecycleListener lifecycleEvent
信息: 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\Java\jdk1.7.0_80\bin;C:\WINDOWS\Sun\Java\bin;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\WINDOWS\System32\WindowsPowerShell\v1.0\;C:\WINDOWS\system32\config\systemprofile\.dnx\bin;C:\Program Files\Microsoft DNX\Dnvm\;C:\Program Files\Microsoft SQL Server\130\Tools\Binn\;C:\Program Files\Java\jdk1.8.0_101\bin;C:\Program Files\Java\jdk1.8.0_101\jre\bin;C:\Program Files (x86)\Calibre2\;C:\MongoDB\bin;C:\Maven\apache-maven-3.3.9\bin;C:\Python;D:\mySQL\bin;C:\Program Files\Git\cmd;C:\Program Files\nodejs\;C:\Program Files\gradle-4.0.1\bin;C:\Program Files (x86)\MySQL\MySQL Server 5.1\bin;C:\Users\Jupiter-Lee\AppData\Local\Microsoft\WindowsApps;;C:\Program Files\Heroku\bin;C:\Users\Jupiter-Lee\AppData\Roaming\npm;.
九月 02, 2017 5:41:25 下午 org.apache.coyote.AbstractProtocol init
信息: Initializing ProtocolHandler ["http-bio-8080"]
九月 02, 2017 5:41:25 下午 org.apache.coyote.AbstractProtocol init
信息: Initializing ProtocolHandler ["ajp-bio-8009"]
九月 02, 2017 5:41:25 下午 org.apache.catalina.startup.Catalina load
信息: Initialization processed in 504 ms
九月 02, 2017 5:41:25 下午 org.apache.catalina.core.StandardService startInternal
信息: Starting service Catalina
九月 02, 2017 5:41:25 下午 org.apache.catalina.core.StandardEngine startInternal
信息: Starting Servlet Engine: Apache Tomcat/7.0.76
九月 02, 2017 5:41:25 下午 org.apache.coyote.AbstractProtocol start
信息: Starting ProtocolHandler ["http-bio-8080"]
九月 02, 2017 5:41:25 下午 org.apache.coyote.AbstractProtocol start
信息: Starting ProtocolHandler ["ajp-bio-8009"]
九月 02, 2017 5:41:25 下午 org.apache.catalina.startup.Catalina start
信息: Server startup in 40 ms
Connected to server
[2017-09-02 05:41:26,283] Artifact mmall.war: Artifact is being deployed, please wait...
九月 02, 2017 5:41:26 下午 org.apache.catalina.loader.WebappClassLoaderBase validateJarFile
信息: validateJarFile(D:\apache-tomcat-7.0.76\webapps\ROOT\WEB-INF\lib\tomcat-servlet-api-7.0.76.jar) - jar not loaded. See Servlet Spec 3.0, section 10.7.2. Offending class: javax/servlet/Servlet.class
九月 02, 2017 5:41:28 下午 org.apache.catalina.startup.TldConfig execute
信息: At least one JAR was scanned for TLDs yet contained no TLDs. Enable debug logging for this logger for a complete list of JARs that were scanned but no TLDs were found in them. Skipping unneeded JARs during scanning can improve startup time and JSP compilation time.
[2017-09-02 05:41:28,512] Artifact mmall.war: Artifact is deployed successfully
[2017-09-02 05:41:28,512] Artifact mmall.war: Deploy took 2,229 milliseconds
九月 02, 2017 5:41:35 下午 org.apache.catalina.startup.HostConfig deployDirectory
信息: Deploying web application directory D:\apache-tomcat-7.0.76\webapps\manager
九月 02, 2017 5:41:35 下午 org.apache.catalina.startup.HostConfig deployDirectory
信息: Deployment of web application directory D:\apache-tomcat-7.0.76\webapps\manager has finished in 47 ms


0
7
幕布斯0566036
回复
星辰Iron
您好,您的做法是重新生成一遍mmall.war包吗?可是您的那段话的最后是还是没解决这个问题啊。能把您当时的做法写的详细点吗
2018-03-15
共7条回复

从0开始 独立完成企业级Java电商网站服务端开发

前后端分离,数据库接口设计,架构设计,功能开发,上线运维

9428 学习 · 8787 问题

查看课程