`
yangzb
  • 浏览: 3471884 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

把JSP预编译成class文件进行JSP文件的保护

    博客分类:
  • Java
阅读更多

 在Weblogic中发布Web Application工程时,为了保护JSP文件避免未经授权的访问和窥视,可以用weblogic.jspc把JSP文件precompile成为servlet文件,放到WEB-INF/classes目录下。基于Servlet的声明,WEB-INF不作为Web应用的公共文档树的一部分。因而,WEB-INF目录下的资源不是为客户直接服务的,这样就可以一定程度上保证JSP的安全。
  具体的实现步骤如下(Weblogic for linux):
  1、用weblogic.jspc编译JSP文件
  (1)在Linux下的工作目录下,创建如下的shell文件,文件名为jspc.sh
  #!/bin/sh
  JAVA_HOME=/opt/IBMJava2-131
  WBL_LIB=/u11/bea/wlserver6.1/lib/weblogic.jar
  CLASSPATH=${JAVA_HOME}/lib:.:${WBL_LIB}
  TARGET_DIR=../mofa/WEB-INF/classes # 这是JSP编译后的servlet文件的存放目录
  WEBAPP_DIR=../mofa # 这是你要发布的Web Application的目录
  ${JAVA_HOME}/bin/java -classpath ${CLASSPATH} weblogic.jspc -k -g -compileAll -d ${TARGET_DIR} -webapp ${WEBAPP_DIR}
  在上面蓝色字体的部分是要根据用户自己的配置进行修改。
  (2)设置jspc.sh文件的可执行属性
   # chmod +x jspc.sh
  (3)在当前目录下,执行jspc.sh文件,进行JSP文件的编译,编译后class文件,应该在WEB-INF/classes/jsp_servlet目录下。
  2、便已成功后,从Web Application的目录中把所有的JSP移走或删除。
  3、编辑weblogic.xml文件,把jsp-descriptor标签内的内容清空,加入如下的内容:
   <jsp-descriptor>
   <jsp-param>
   <param-name>precompile</param-name>
   <param-value>false</param-value>
   </jsp-param>
   <jsp-param>
   <param-name>pageCheckSeconds</param-name>
   <param-value>-1</param-value>
   </jsp-param>
   </jsp-descriptor>
  4、编辑web.xml文件,在其中添加如下内容:
  <servlet>
   <servlet-name>JSPClassServlet</servlet-name>
   <servlet-class>weblogic.servlet.JSPClassServlet</servlet-class>
  </servlet>
  <servlet-mapping>
   <servlet-name>JSPClassServlet</servlet-name>
   <url-pattern>*.jsp</url-pattern>
  </servlet-mapping>
  5、在Weblogic上发布这个Web Application。
  6、访问相应的JSP文件,如果能够访问成功,说明整个过程没有问题
  

分享到:
评论

相关推荐

    jsp批量编译为class文件

    将jsp批量转换为class文件. 运行命令 java -jar jspcp.jar "路径1" "路径2" 路径1:webapp路径,一定是WEB-INF目录的父目录 路径2:编译后的java和class文件存储路径 路径如果有空格,一定用""包裹

    将jsp生成java然后反编译为class然后打入jar

    将jsp生成java然后反编译为class然后打入jar

    补丁、打包编译后的文件,自动生成class、jsp、js等文件目录(附教程)

    利用工具类自动生成编译后的文件目录,对于上线部署很好用

    .class文件反编译工具/软件

    .class文件反编译工具(非原创),安装简单,傻瓜式的,很好用。

    jsp经典笔记jsp经典笔记

    1,JSP文件先要翻译成Java文件(Servlet),在tomcat中翻译后的java文件在tomcat下的work\Catalina\localhost中相应名字的应用目录里。 2,编译Java文件 3,运行.class文件 3.JSP的特点 1,JSP不需要编译 2,JSP不...

    基于JSP的网上书店毕业设计论文

    在JSP第一次获得来自于客户端浏览器的请求时,JSP文件将被JSP引擎(JSP engine)转换成一个Servlet,即将”.jsp”文件编译成Java Class文件。当Servlet引擎接收到请求后,如果设置了使用最新的JSP,它就会去找JSP...

    jsp 自动编译机制详细介绍

    jsp 自动编译机制详细介绍 总的来说,Jasper的自动检测实现的...上图是一个形象的示意图,我们知道Tomcat架构中有四个级别的容器,Engine、Host、Context和Wrapper,而jsp编译对应在wrapper级别,所以通过StandardWra

    JSP动态网页制作基础培训教程源代码.rar

    5 codefilter.jsp 第10章\news\incoming 用来将新闻文章格式进行转换的JSP文件 6 style.css 第10章\news\incoming 样式表文件 7 index.jsp 第10章\news 新闻浏览的主界面文件 8 article.jsp 第10章\news 新闻浏览...

    Tomcat 源代码调试 - 看不见的 Shell 第二式之隐藏任意 Jsp 文件1

    2. Jsp 件会被转换为 Java 件,并随后被编译为 class 3. Jsp 被编译并被加载实例化后,会被封装在个 JspServletWrapper 对

    jsp文件操作之读取篇

    jsp中是如何实现的。  这里用到了两个文件,一个jsp文件一个javabean文件,通过...,注意请放置一个文本文件afile.txt到web根目录的test目录下,javabean文件编译后将class文件放到对应 的class目录下(tomcat环境)。

    jsp下面md5加密(jsp md5)

    相当好用,拿来就可以使用了 里面附上了jsp 和 java class 文件 你也可以把它修改后重新编译

    Eclipse开发的JSP科技企业信息管理系统源码

    sa,密码为空,如果为sa用户设置了密码,请修改源代码\修改需要的源文件[Eclipse]\tech\jdbc\jdbc.java中的数据库连接代码,然后重新编译这个类,编译后把编译成的class,复制到Tomcat的webapps目录下的tech\WEB-INF...

    基于Java Web的MySQL数据库驱动的JSP商城项目设计源码

    其中Java编译后的Class文件12个,PNG图片文件9个,JSP页面文件8个,Java源代码文件6个,JPG图片文件3个,Preferences配置文件2个,Markdown文档2个,CSS样式文件2个,Classpath配置文件1个,以及项目配置文件1个。...

    基于HTML5的SSM酒店预订系统设计源码

    其中HTML页面文件html 256个,CSS样式文件css 216个,JavaScript源代码文件js 203个,PNG图片文件png 185个,GIF图片文件gif 95个,JSP页面文件jsp 57个,JAR打包文件jar 42个,编译后的Java字节码文件class 33个,...

    JSP+SQL版 科技企业信息管理系统[Eclipse]版 附工程文件

    sa,密码为空,如果为sa用户设置了密码,请修改源代码\修改需要的源文件[Eclipse]\tech\jdbc\jdbc.java中的数据库连接代码,然后重新编译这个类,编译后把编译成的class,复制到Tomcat的webapps目录下的tech\WEB-INF...

    maven已编译包

    maven 2.0 已编译 直接解压使用。

    JSP学习心得

    作者:徐春金下面是本人在学习JSP时的一些心得: 一、...如果转换成功, JSP引擎用javac把该Java源文件编译成相应的class文件。然后创建一个该SERVLET的实例,该SERVLET的jspInit()方法被执行,jspInit()方法在servle

    基于Java和JSP技术的工资管理系统设计源码

    其中JavaScript文件292个,CSS文件111个,Java源文件31个,HTML文件33个,GIF图片417个,PNG图片83个,JAR打包文件76个,Class编译文件55个,JPG图片48个,JSP页面26个。该系统专注于人事工资管理,提供了一系列功能...

Global site tag (gtag.js) - Google Analytics