精选

 1、服务器无法启动:

 严重: Error initializing endpoint

 严重: Catalina.start

 严重: Error starting endpoint

 严重: Catalina.start:

 原因:8080端口被占用,在dos下运行“netstat -ano ”查看当前端口的使用情况。

 解决方法:查看8080端口的PID值,在任务管理器中“查看”—“选择列”—勾选“PID”进程。

 2、<?xml version="1.0" encoding="UTF-8"?>

 错误信息:Referenced file contains errors (/xwork/xwork-validator-1.0.2.dtd). For more information, right click on the message and select "Show Details...

 原因是/xwork/xwork-validator-1.0.2.dtd已经不是dtd约束文件了,

 打开网址,发现opensymphony的网址已经迁移走了,因为xwork的东西已经并入struts2中,成为apache的一部分.

 ?所有的dtd已经移交到/dtds/ 这个地方.

 以后struts2的校验器的规范要改成:?

 <?xml version="1.0" encoding="UTF-8"?>

 <!DOCTYPE validators PUBLIC "-//Apache Struts//XWork Validator 1.0.2//EN" "/dtds/xwork-validator-1.0.2.dtd">

 3、java.lang.classnotfoundexception:org.apache.struts2.dispatcher.filerdispatch

 上面是你的异常,就是说你的filter找不到!

 你的web.xml文件配置有问题!

 这样配置filter:

 <filter>

  <filter-name>struts2</filter-name>

  <filter-class>org.apache.struts2.dispatcher.FilterDispatcher</filter-class>

  </filter>

  <filter-mapping>

  <filter-name>struts2</filter-name>

  <url-pattern>/*</url-pattern>

  </filter-mapping>

 4、org.xml.sax.SAXParseException: Document is invalid: no grammar found.

 给struts2.xml? 添加上?

 <!DOCTYPE struts PUBLIC

  "-//Apache Software Foundation//DTD Struts Configuration 2.1.7//EN"

  "/dtds/struts-2.1.7.dtd">

 5、Address already in use: JVM_Bind<null>:8080

 方案一:在MyEclipse启动或者是tomcat启动的时候出现:Address already in use: JVM_Bind<null>:8080 出现该异常,这里的8080是你的端口,有可能是80或者其他,但是都是一个原因引起的,我在用MyEclipse的时候,有时候MyEclipse突然死掉了,然后我就直接关掉在打开,这时候重启服务器就会出现该异常:Address already in use: JVM_Bind<null>:8080!

  解决办法如下:Address already in use: JVM_Bind<null>:8080该异常肯定时候由于MyEclipse不正常关闭,引起的,只要我们把8080占用的那个进程kill掉就可以了!方法如下,在cmd命令模式下输入netstat -ano 然后找到占用8080端口的那个进程!如下图所示:

 Address already in use: JVM_Bind<null>:8080 查找端口占用时哪个进程

 我们可以看到占用8080端口进程的PID号是9820,然后我们要做的就是去找到这个进程,方法:然后在任务管理器里,查看进程。(注意:默认情况下,进程的PID是不显示的,你在菜单的查看->选择列里可以选上PID来显示);然后找到9820(你自己的),接下来知道怎么办了吧!kill

 轻松解决:Address already in use: JVM_Bind<null>:8080

 6、.BindException: Address already in use: JVM_Bind <null>:8080

 ctrl+alt+del启动任务管理器,关掉进程JVM

 7、There is no Action mapped for namespace / and action name . - [unknown location]

 把你在struts.xml中的namespace="/"换成namespace="/tt"的话

 那么在你的jsp页面上

 <s:form action="tt/login"> 或者写成

 <s:form action="tt/login" namespace="/tt">

 7、总结struts框架

 该框架主要是控制页面跳转的,及处于项目的控制层。项目中加入了struts框架,将会省去页面跳转控制的代码(此功能的代码主要在struts.xml 中实现),只剩下数据库操作的代码部分。

 8、Exception starting filter struts2

 Class: .SocketInputStream

 File: SocketInputStream.java

 Method: read

 把tomcat下WORK文件夹里的东西删除掉启动就没问题了。

 

查看更多党团会议相关内容,请点击 心得体会