### 报错代码经验 #### 一、报错概述与分析 从提供的日志片段来看,这段内容主要涉及Apache Tomcat服务器的启动过程以及在运行过程中遇到的一些问题。接下来我们将根据这些日志条目逐一进行解析,并总结出相关的知识点。 #### 二、Apache Tomcat Native Library未找到 在日志的最开始部分,我们看到以下信息: ``` 2012-4-16 10:43:33 org.apache.catalina.core.AprLifecycleListener init Ϣ: The 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;C:\Program Files\Apache Software Foundation\Tomcat6.0\bin ``` **知识点解释:** 1. **Apache Tomcat Native Library (APR) 是什么?** - APR(Apache Portable Runtime)是Apache项目提供的一组库,用于提高Tomcat等Apache软件的性能。 - 使用APR可以显著提升Web服务器处理高并发请求的能力。 - 它提供了对操作系统底层功能的访问,例如文件I/O操作和网络I/O操作等。 2. **为什么会出现这样的错误?** - 在这个例子中,Tomcat试图加载APR库来优化性能,但是没有找到对应的库文件。 - 这可能是由于安装目录下的`bin`文件夹里缺少必要的APR库文件,或者`JAVA_HOME`环境变量配置不正确导致Java查找路径设置有误。 3. **如何解决这个问题?** - 确认是否已经安装了相应的APR库,并且确保它们存在于`java.library.path`指定的路径下。 - 如果没有安装,可以从Apache官方网站下载对应的版本,并将其解压到Tomcat的安装目录中。 - 修改`CATALINA_HOME/bin/catalina.bat`文件中的`set JAVA_OPTS`行,添加`-Djava.library.path=path/to/apr/native/libraries`以指定正确的库路径。 #### 三、Tomcat初始化和服务启动 日志中还包含了Tomcat初始化和服务启动的信息,例如: ``` 2012-4-16 10:43:33 org.apache.catalina.startup.Catalina load Ϣ: Initialization processed in 306ms 2012-4-16 10:43:33 org.apache.catalina.core.StandardService start Ϣ: Starting service Catalina 2012-4-16 10:43:33 org.apache.catalina.core.StandardEngine start Ϣ: Starting Servlet Engine: Apache Tomcat/6.0.13 ``` **知识点解释:** 1. **Tomcat初始化过程:** - `org.apache.catalina.startup.Catalina load` 表示Tomcat的初始化过程完成,耗时306毫秒。 - `org.apache.catalina.core.StandardService start` 和 `org.apache.catalina.core.StandardEngine start` 分别表示服务和引擎的启动。 2. **服务启动的时间记录:** - 日志记录了各个组件启动所需的时间,这对于排查启动缓慢的问题非常有用。 - 通过查看这些时间点,可以定位到哪些阶段消耗了更多的时间。 #### 四、Struts配置文件加载 接着,日志中出现了关于Struts框架配置文件加载的信息: ``` 2012-4-16 10:43:34 com.opensymphony.xwork2.config.providers.XmlConfigurationProvider register Ϣ: Parsing configuration file [struts-default.xml] 2012-4-16 10:43:34 com.opensymphony.xwork2.config.providers.XmlConfigurationProvider register Ϣ: Parsing configuration file [struts-plugin.xml] 2012-4-16 10:43:34 com.opensymphony.xwork2.config.providers.XmlConfigurationProvider register Ϣ: Parsing configuration file [struts.xml] ``` **知识点解释:** 1. **Struts框架简介:** - Struts是一个开源的MVC框架,用于构建基于Java的Web应用程序。 - 它提供了简化开发流程的功能,如自动表单填充、数据验证和模型-视图-控制器分离等。 2. **配置文件加载过程:** - 上述日志显示Struts正在加载默认的配置文件`struts-default.xml`、插件配置文件`struts-plugin.xml`以及自定义的配置文件`struts.xml`。 - 这些配置文件用于定义应用程序的行为,包括Action映射、拦截器配置、结果类型等。 #### 五、Struts配置问题 日志中还包含了一些Struts框架运行时出现的问题: ``` 2012-4-16 10:43:41 org.apache.struts2.components.Form evaluateExtraParams ServletRequest : No configuration found for the specified action: 'fileUpLoad.action' in namespace: '/manager'. Form action defaulting to 'action' attribute's literal value. ``` **知识点解释:** 1. **问题描述:** - 在此例中,Struts框架未能找到指定的`fileUpLoad.action`配置。 - 这可能是因为配置文件中没有为该Action提供相应的定义,或者命名空间设置不正确。 2. **解决方案:** - 检查`struts.xml`配置文件中是否有对应的Action配置。 - 确保Action名称与配置文件中定义的一致,并且命名空间也正确无误。 - 如果是动态Action,则需检查配置文件中是否正确配置了动态Action处理器。 #### 六、总结 通过以上分析,我们可以看出,日志文件不仅能够帮助我们了解系统运行的状态,还能够为我们提供故障排查的重要线索。对于Apache Tomcat服务器及其上运行的应用程序来说,合理地配置和优化其各项参数是非常重要的。同时,熟悉并掌握常见的问题及解决方案也是提升工作效率的关键。希望以上的知识点能够对你有所帮助。
信息: The 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;C:\Program Files\Apache Software Foundation\Tomcat 6.0\bin
2012-4-16 10:43:33 org.apache.coyote.http11.Http11Protocol init
信息: Initializing Coyote HTTP/1.1 on http-8080
2012-4-16 10:43:33 org.apache.catalina.startup.Catalina load
信息: Initialization processed in 306 ms
2012-4-16 10:43:33 org.apache.catalina.core.StandardService start
信息: Starting service Catalina
2012-4-16 10:43:33 org.apache.catalina.core.StandardEngine start
信息: Starting Servlet Engine: Apache Tomcat/6.0.13
2012-4-16 10:43:34 com.opensymphony.xwork2.config.providers.XmlConfigurationProvider register
信息: Parsing configuration file [struts-default.xml]
2012-4-16 10:43:34 com.opensymphony.xwork2.config.providers.XmlConfigurationProvider register
信息: Parsing configuration file [struts-plugin.xml]
2012-4-16 10:43:34 com.opensymphony.xwork2.config.providers.XmlConfigurationProvider register
信息: Parsing configuration file [struts.xml]
2012-4-16 10:43:34 org.apache.struts2.config.Settings getLocale
警告: Settings: Could not parse struts.locale setting, substituting default VM locale
2012-4-16 10:43:34 com.opensymphony.xwork2.util.ObjectTypeDeterminerFactory <clinit>
信息: Setting DefaultObjectTypeDeterminer as default ...
2012-4-16 10:43:34 org.apache.coyote.http11.Http11Protocol start
信息: Starting Coyote HTTP/1.1 on http-8080
2012-4-16 10:43:34 org.apache.jk.common.ChannelSocket init
信息: JK: ajp13 listening on /0.0.0.0:8009
2012-4-16 10:43:34 org.apache.jk.server.JkMain start
信息: Jk running ID=0 time=0/31 config=null
2012-4-16 10:43:34 org.apache.catalina.startup.Catalina start
信息: Server startup in 1339 ms
2012-4-16 10:43:41 org.apache.struts2.components.Form evaluateExtraParamsServletRequest
警告: No configuration found for the specified action: 'fileUpLoad.action' in namespace: '/manager'. Form action defaulting to 'action' attribute's literal value.
- 粉丝: 0
- 资源: 2
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助