北风首页专栏登陆RSS收藏

您现在所在的位置: 北风技术专栏 > ikon999

作者“ ikon999”的专栏存档

深入dwr2之三 Dwr2页面请求处理机制分析之engine.js

归类于Java, Web开发 | 2008年12月02日 | 1 条评论 »

DWREnginedwr在客户端的存根,它其中的方法基本上不需要用户来直接调用;通常你会在服务器的dwr.xml定义需要暴露的java类及其可调用方法,dwr会根据这个配置文件自动生成一个dwr/interface/**.js文件,对应你暴露的java类及其方法,你会在本地调用**.js文件定义的方法,和调用java的方法一样,除了多了一个回调参数,然后这个方法会委托DWREngine._execute发出请求;

Engine.jsutil.js不同之处在于,util.js是静态js文件,可以直接从jar文件中拿出来,页面可以直接引用;而engine.js则有部分动态内容,这决定了它必须经过servelt资源请求,在servelt为动态内容赋值之后,才可以返回给客户端;

详细内容 »

认识安全框架acegi(5)

归类于Java, Web开发 | 2008年11月14日 | 发表评论 »

Acegi称受保护的应用资源为“安全对象”,这包括URL资源和业务类方法。我们知道在Spring AOP中有前置增强、后置增强、异常增强和环绕增强,其中环绕增强的功能最为强大——它不但可以在目标方法被访问前拦截调用,还可以在调用返回前改变返回的结果,甚至抛出异常。Acegi使用环绕增强对安全对象进行保护。

Acegi通过AbstractSecurityInterceptorInterceptor:拦截器)为安全对象访问提供一致的工作模型,它按照以下流程进行工作:

详细内容 »

认识安全框架acegi(4)

归类于Java, Web开发 | 2008年11月14日 | 发表评论 »

Acegi支持多种方式的用户认证:如典型的基于数据库的认证、基于LDAP的认证、基于Yale中心认证等方式。不同的认证环境拥有不同的用户认证方式,现在我们先抛开这些具体的细节,考察一下Acegi对受限资源进行访问控制的典型过程:

1.你点击一个链接访问一个网页;

2.浏览器发送一个请求到服务器,服务器判断出你正在访问一个受保护的资源;

详细内容 »

认识安全框架acegi(3)

归类于Java, Web开发 | 2008年11月14日 | 发表评论 »

每个框架都有一些核心的概念,这些概念被固化为类和接口,成为框架的重要组件类。框架的管理类、操作类都在这些组件类的基础上进行操作。在进入Acegi框架的具体学习前,有必要事先了解一下这些承载Acegi框架重要概念的组件类。

首先,我们要接触是UserDetails接口,它代表一个应用系统的用户,该接口定义了用户安全相关的信息,如用户名/密码,用户是否有效等信息,你可以根据以下接口方法进行相关信息的获取:

详细内容 »

认识安全框架acegi(2)

归类于Java, Web开发 | 2008年11月14日 | 发表评论 »

乘飞机前需要通过安检,乘客必须提供身份证以验证其身份。在通过安检进入候机室后,国航、海航、南航等不同航空公司的飞机陆续到达,但你只能登上机票上对应航班的飞机。在登机后,只能坐在机票对应的座位上——你不能抢占他人的座位,你不能在座位上刻字留念、你不能要求空姐打开机窗……

乘飞机的过程最能体现安全控制的流程,我们可以从中找到身份认证、资源访问控制、领域对象安全控制的对应物:安检对应身份认证,登机对应资源访问控制,而按号就座则对应领域对象安全控制。

详细内容 »

认识安全框架acegi(1)

归类于Java | 2008年11月10日 | 1 条评论 »

本系列是讲acegi的基本概念,下系列是acegi实战,主要讲acegi在项目中的具体应用;感兴趣的可以关注

一、 概述

对于任何一个完整的应用系统,完善的认证和授权机制是必不可少的。Acegi Security(以下简称Acegi)是一个能为基于Spring的企业应用提供强大而灵活安全访问控制解决方案的框架,Acegi已经成为Spring官方的一个子项目,所以也称为Spring Security。它通过在Spring容器中配置一组Bean,充分利用SpringIoCAOP功能,提供声明式安全访问控制的功能。虽然,现在Acegi也可以应用到非Spring的应用程序中,但在Spring中使用Acegi是最自然的方式。 Acegi可以实现业务对象方法级的安全访问控制粒度,它提供了以下三方面的应用程序的安全:

详细内容 »

深入dwr2之二 Dwr2页面请求处理机制分析之util.js

归类于Java, Web开发 | 2008年10月17日 | 1 条评论 »

 前一篇分析了dwr2对log的处理,请参见dwr2的日志代码分析;那么下面我们来进一步来分析一下它对页面的请求是如何处理的;这一章主要来讲解一下util.js文件。
 大家都知道util.js文件是包含在dwr.jar文件的org.directwebremoting包里,那么页面是如何访问到它的呢?

1、  首先,我们在某个页面需要使用dwr功能时,需要引入
<script type=”text/javascript” src=”dwr/util.js”></script>
这样对”dwr/util.js”的请求,统一由org.directwebremoting.servlet.DwrServlet的doget()、doPost()方法来处理;

详细内容 »

修改对象私有属性

归类于Java | 2008年10月13日 | 发表评论 »

如果类没有定义修改私有属性的方法;那么借助java反射机制,通过Class,取得Field,通过设置Field.setAccessible(true) ,就可以调用set方法为私有属性设值;

详细内容 »

ikon999原创:JsUnit测试之三

归类于Java, Web开发 | 2008年10月09日 | 发表评论 »

十一、 浏览器自动化测试
访问file:///c:/test/jsunit/testRunner.html?testPage=c:/test/test1.html&autoRun=true,就会自动测试test1.html页面里的测试函数;
十二、  根据访问参数改变测试逻辑
1、 访问
file:///c:/test/jsunit/testRunner.html?testPage=c:/test/test1.html&autoRun=true&suite=test2
2、 测试函数:

详细内容 »

ikon999原创:JsUnit测试之二

归类于Java, Web开发 | 2008年10月08日 | 发表评论 »

六、 组织测试函数
 一般地,JsUnit会自动发现测试函数,就像JUnit会发现所有测试方法一样。不过,有些操作系统/浏览器不能合作。如果你发现不能如你所愿地发现测试函数,使用exposeTestFunctionNames()方法就能解决这个问题。
 在测试页面里定义exposeTestFunctionNames方法,jsunit运行器在执行时会寻找exposeTestFunctionNames方法,只执行在此方法内指定的方法;

详细内容 »

每周之星

陈臣陈臣

七年Java和JEE开发经验,JEE应用设计和高级架构师,拥有Sun的多项Java和J2EE方面的技能认证,多年项目经理、技术部经理的管理经验。拥有全面、扎实的Java和JEE理论知识,丰富的JEE应用开发经验。

更多作者:

  • Adam
  • ikon999
  • libin_8745
  • lifengxing
  • taohuang100
  • xingkong
  • 呆子
  • 子晨
  • 小白
  • 张章
  • 张维亮
  • 陈臣
  • 陶宝哥
  • 风风
  • 最新内容

    推荐内容

    标签

    分类

    北风专栏测试中,有任何问题请联系我们