用Weblogic容器测试Spring安全性

时间:2012-02-22 16:28:52

标签: spring-security weblogic

我正在尝试使用weblogic 10.3.5容器对Spring Security进行单元测试。我已经为Eclipse和Weblogic提供了一个环境,我都不太熟悉它。

启动时,我得到一个例外:

java.lang.NoClassDefFoundError: javax/servlet/Filter
    at java.lang.ClassLoader.defineClass1(Native Method)
    blahblahblah

结果,这个单元测试失败了:

    @Test
    public void testGetByIdViaAccessRoles() {
        Person result;

      // Test the results with a ROLE_ADMIN user. This SHOULD work.
    SecurityContextHolder.getContext().setAuthentication(admin);
    result = personRepository.getById(1L);
    assertNotNull(result);

    // test the results with a ROLE_USER. Should also be good...
    SecurityContextHolder.getContext().setAuthentication(user);
    result = personRepository.getById(1L);
    assertNotNull(result);

    // test the results with a nonexistent user. Should go kablooie.
    SecurityContextHolder.getContext().setAuthentication(nonuser);
    try {
        result = personRepository.getById(1L);
        fail("Should be impossible to get this with a nonexistent user.");
    } catch (AccessDeniedException ex) {

    }
}

所以,我猜我没有从weblogic中获取servlet.jar。但由于我是一个相对较新的eclipse用户(IntelliJ很长一段时间),我不确定我是否正确设置了weblogic。

在我的项目方面,我检查了Oracle WebLogic Web App Extensions,但没有配置其他weblogic。还会检查动态Web模块。

有人可以向亲戚提供帮助吗?

杰森

1 个答案:

答案 0 :(得分:0)

否认。在某个地方,我找到了目标运行时的另一种选择。一旦我设置它,它就有效。