`
jake0719
  • 浏览: 90365 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

Tomcat中SSI配置异常的解决办法

    博客分类:
  • Java
阅读更多

以下异常可能很多人都会碰到,而网上很多解决办法都说得不尽然。

2008-12-28 22:48:46 org.apache.catalina.core.StandardContext filterStart
严重: Exception starting filter ssi
java.lang.SecurityException: Filter of class org.apache.catalina.ssi.SSIFilter is privileged and cannot be loaded by this web application
    at org.apache.catalina.core.ApplicationFilterConfig.getFilter(ApplicationFilterConfig.java:251)
    at org.apache.catalina.core.ApplicationFilterConfig.setFilterDef(ApplicationFilterConfig.java:397)
    at org.apache.catalina.core.ApplicationFilterConfig.<init>(ApplicationFilterConfig.java:108)
    at org.apache.catalina.core.StandardContext.filterStart(StandardContext.java:3709)
    at org.apache.catalina.core.StandardContext.start(StandardContext.java:4356)
    at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:791)
    at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:771)
    at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:525)
    at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:924)
    at org.apache.catalina.startup.HostConfig.deployDirectories(HostConfig.java:887)
    at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:492)
    at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1147)
    at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:311)
    at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117)
    at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1053)
    at org.apache.catalina.core.StandardHost.start(StandardHost.java:719)
    at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045)
    at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:443)
    at org.apache.catalina.core.StandardService.start(StandardService.java:516)
    at org.apache.catalina.core.StandardServer.start(StandardServer.java:710)
    at org.apache.catalina.startup.Catalina.start(Catalina.java:578)
    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:288)
    at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413)

 

Tomcat 6.×里默认ssi配置是注释掉的,要使用SSI,必须去掉该注释。SSI有servlet和filter两种配置。用SSI servlet的话,去掉SSI servlet和servlet mapping的注释。若是用SSI Filter,则要修改三个地方:

  • 去掉filter ssi的注释,;
  • 去掉ssi filter mapping的注释,;
  • 去掉filter ssi mime mapping的注释。

最后关键一步:

修改tomcat_home/conf/context.xml文件里的context标签:
原:
<Context>
修改为
<Context privileged="true">

重启tomcat就ok了。这样也就不必为具体的app里配置context去使用SSI功能了。

 

此配置在Tomcat 6.0.18版本里通过。

 

简单SSI测试例子:

index.shtml

 <html>
 <head/>
 <body>
 welcome to my site!
 Now is <!--#echo var="DATE_LOCAL"-->.
 </body>
 </html>

 

而象网上说需要将server/lib/servlet-ssi.renametojar改名为servlet-ssi.jar则有点莫明其妙,因为有些版本里(比如最新的6.0.18)catalina.jar里已经包含了原来servlet-ssi.jar里的class文件,因此网上某些配置应该针对某些版本而言。

5
2
分享到:
评论
1 楼 sunshineparasol 2008-12-30  

相关推荐

    ssi框架入门详解

    SSI框架,全称为Struts2、Spring和Ibatis的集成框架,是一种常见的Java Web开发解决方案。这个框架结合了这三个组件的优点,以实现高效且灵活的Web应用开发。 **Struts2**作为MVC框架,主要负责处理HTTP请求,提供...

    ssi的jar包

    6. **Servlet容器集成**:这个jar包可能需要与Tomcat、Jetty等Servlet容器集成,以在Web应用程序中处理SSI请求。 7. **配置与API使用**:学习如何在Java项目中配置和初始化这个库,以及如何调用其API来处理SSI指令...

    Tomcat性能调优

    - **开启SSI功能**:如果需要支持`.shtml`文件,可以开启Tomcat的SSI(Server Side Includes)功能。 - **修改网站访问端口**:将默认的8080端口更改为80或其他端口,以方便与Web服务器如Apache集成。 - **解决中文...

    MyEclispse下SSI整合JAR包(Struts1+Spring3+ibatis2)

    在IT行业中,集成不同的框架是常见的开发实践,以优化应用的性能、可维护性和扩展性。本主题将详细探讨如何在MyEclipse...在实际开发中,还需考虑性能优化、异常处理、安全策略等方面,以确保系统的健壮性和可维护性。

    Ssi的整合(Struts2+Spring+Ibatis)

    1. **环境准备**:确保已安装JDK、Tomcat等基础环境,还需引入Struts2、Spring、Ibatis的依赖库到项目中。 2. **配置Struts2**:创建struts.xml文件,定义全局配置和Action映射。配置Struts2拦截器栈,以便使用...

    SSI, IBatis+struts2+spring+mysql整合增删改查

    7. **编写业务逻辑**:在Action类中调用Service层的方法,实现CRUD操作。 8. **视图层处理**:创建JSP页面,使用Struts2标签库和SSI技术展示数据,实现用户交互。 9. **测试**:运行项目,通过HTTP请求测试各个...

    零基础搭建最新环境下的struts2+spring4+mybatis3框架

    2. **Tomcat配置**:在IDE中配置Tomcat服务器,设置启动/停止选项,以及项目部署路径。 3. **IDE插件**:对于Eclipse,可能需要Struts2和MyBatis的相关插件,如Struts2 Eclipse Plugin,MyBatis Generator等,以提高...

    spring3+mybaits3+struts2

    1. **环境配置**:首先确保JDK、Tomcat、Maven等基础环境的安装配置,创建一个Maven项目,并在pom.xml中添加三大框架的依赖。 2. **Spring配置**:创建Spring配置文件(如:applicationContext.xml),配置Bean,...

    struts框架搭建

    在IDE中启动Tomcat服务器,通过浏览器访问`http://localhost:8080/项目名/hello`,如果一切配置正确,你应该能看到“Hello, World!”的页面。 以上就是搭建Struts框架的基本步骤。随着你对Struts的深入学习,你可以...

    Sun - Core Servlets and JavaServer Pages.pdf

    此外,书中还会涵盖如何处理异常、实现安全性以及优化Web应用性能等主题。 如果你对这本书的续集感兴趣,可以访问《More Servlets and JavaServer Pages》的网站。作者还提供相关的Servlet和JSP培训课程,可以在...

    Java课程体系

    5. 中间件:熟悉Tomcat、Jboss、Weblogic等服务器的配置和使用,理解中间件在分布式系统中的作用。 6. 性能优化:进行压力测试,掌握性能调优技巧,提升系统运行效率。 7. 实战项目:通过ERP、LIS、ISSP、OA、大型...

    JAVA技术路线图.pdf

    Web服务器如Tomcat、Jetty、Resin和JBoss的配置和管理也是必需的。 随着技能的提升,中级软件工程师会涉及SSH、SSI等经典架构,如Struts1和Struts2的表现层框架,Spring的业务层框架,以及Hibernate持久层框架。...

    程序员面试个人简历(JAVA)-(3).doc

    - **Tomcat、Linux**:Tomcat是常见的Java应用服务器,Linux是常用的操作系统,求职者能进行配置和部署,说明具备服务器管理能力。 - **Maven、SVN、Hudson**:Maven用于项目构建和依赖管理,SVN是版本控制系统,...

    Core Servlets and JavaServer Pages 2nd Edition

    - **Servlet的打包**:将Servlet放在特定的目录结构中,并通过`web.xml`文件进行配置。 通过以上分析可以看出,《Core Servlets and JavaServer Pages 2nd Edition》一书涵盖了Servlets和JSP的核心概念、优势以及...

    java程序员技术体系

    Web服务器如Tomcat、Jetty、Resin和JBoss的使用和配置也是必备技能。 随着经验的积累,中级软件工程师会深入学习四大经典架构SSH1、SSI1、SSH2和SSI2,包括Struts1和Struts2表现层框架,Spring业务层框架以及...

    Java程序猿技术路线图

    * 四种经典架构 SSH1、SSI1、SSH2、SSI2 * Struts1 表现层框架:入门配置、核心组件、标签库、国际化、数据检验、数据库开发、Sitemesh 集成、集成 Hibernate/iBATIS * Struts2 表现层框架:入门配置、核心组件、...

    JAVA技术路线图.docx

    中级软件工程师阶段,需要精通SSH、SSI、SSH2和SSI2这四种经典架构,即Struts、Spring和Hibernate的组合。了解并能运用Struts1和2的配置、组件、标签库,Spring的IoC容器、MVC模式,以及Hibernate的持久化操作。 ...

    自整理Java关于基础和框架的面试题

    - **finally**:在try-catch-finally语句块中使用,确保无论是否发生异常都会执行的代码块。 - **finalize**:对象被垃圾回收前调用的方法,已过时。 ##### Io流的层次结构 - 输入流:InputStream、Reader。 - 输出...

Global site tag (gtag.js) - Google Analytics