Jakarta ee 如何使用Tapestry安全性?
我最近发现了Tapestry 5,它在视图和控制器之间的清晰分离,使用名称标准化而不是XML,这让我直截了当地追求它。坦率地说,我不打算改变,但文档对我来说是不够的 我正在从事的项目必须能够支持多种类型的角色。我必须允许用户认证,根据他们的角色使用特定的服务,以及通过他们的角色访问url 经过一些研究,我发现这是Tynamo项目的一部分 我希望我的服务层完全独立于我的web应用程序,因为我将使用它来实现web服务和其他一些东西。到时候我不想再做一个身份识别系统 我的问题是,如果不使用Tapestry,我看不到如何使用Tapestry安全性。他们在Tapestry安全指南上展示的示例对我来说是不够的。我有一个相当粗略的想法,它是如何工作的。 然而,我不知道如何在挂毯5之外使用它 没有Tapestry 5,如何使用Tapestry安全性 我也不了解Tapestry项目中AppModule类中使用的过滤系统。 是否有文档解释AppModule与过滤系统的工作方式 有没有人能给我解释这些事情或者给我指出正确的方向Jakarta ee 如何使用Tapestry安全性?,jakarta-ee,tapestry,tynamo,Jakarta Ee,Tapestry,Tynamo,我最近发现了Tapestry 5,它在视图和控制器之间的清晰分离,使用名称标准化而不是XML,这让我直截了当地追求它。坦率地说,我不打算改变,但文档对我来说是不够的 我正在从事的项目必须能够支持多种类型的角色。我必须允许用户认证,根据他们的角色使用特定的服务,以及通过他们的角色访问url 经过一些研究,我发现这是Tynamo项目的一部分 我希望我的服务层完全独立于我的web应用程序,因为我将使用它来实现web服务和其他一些东西。到时候我不想再做一个身份识别系统 我的问题是,如果不使用Tapest
谢谢。Tapestry安全性只是项目顶部的一层薄薄的保护层。它只提供:
- 通过Tapestry应用程序模块配置Shiro的一种方法
- 一组Tapestry过滤器,用于对Tapestry页面和操作执行实际的安全检查
- 是否要声明您的安全性
- 在
文件中支持条件呈现.tml
public class MyFilter implements RequestFilter {
@Override
public boolean service(final Request request, final Response response,
final RequestHandler handler) throws IOException {
... //your code
try {
return handler.service(request, response);
} finally {
... //your code
}
}
}
您可以通过在您的应用程序模块中提供它们,将它们添加到过滤器链中:
public void contributeRequestHandler(
final OrderedConfiguration<RequestFilter> configurations) {
configuration.add("MyFilter", new MyFilter());
}
public void contributeRequestHandler(
最终订单(配置){
添加(“MyFilter”,newmyfilter());
}
非常感谢您的支持。这是否意味着tapestry安全性可以在没有tapestry achitecture的情况下使用,但我需要在我使用的任何应用程序中添加tapestry安全过滤器?或者我应该在服务层中使用Shiro,然后在web应用程序中使用Tapestry安全性来初始化它?我明白了过滤器的要点,我想实现RequestFilter接口并通过添加其贡献方法将其添加到AppModule类中,这样可以扩展Tapestry的功能。@lollancf37:我已经更新了答案。关于过滤器:是的,这就是它们的用途。非常感谢,我现在对事物的理解好多了。