首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >安达图TokenProvider

安达图TokenProvider
EN

Stack Overflow用户
提问于 2014-10-27 03:46:15
回答 1查看 242关注 0票数 0

Hello一直在查看使用Amdatu框架构建的osgi示例,尽管每次服务实例总是为null时,都有一个与示例完全相同的实现。另外,我已经阅读了安全模块Amdatu上的文档,但是无法配置它,有人有关于如何使用TokenProvider的演练吗?

谢谢

ShowCase链路

安达图安全医生

当执行dm命令时,我得到:

代码语言:javascript
复制
[1] agenda.web.filters
  javax.servlet.Filter(pattern=/*.*) unregistered
    org.amdatu.security.tokenprovider.TokenProvider service required unavailable
[15] org.amdatu.security.tokenprovider.impl
  org.amdatu.security.tokenprovider.TokenProvider unregistered
    org.amdatu.security.tokenprovider configuration required available
    org.amdatu.security.tokenprovider.TokenStorageProvider service required unavailable
    org.osgi.service.log.LogService service optional (not tracking)
[16] org.amdatu.security.tokenstorage.mongo
  org.amdatu.security.tokenprovider.TokenStorageProvider, org.amdatu.security.tokenstorage.mongo.ExpiredTokenPurger unregistered
    org.amdatu.mongo.MongoDBService service required unavailable
    org.osgi.service.log.LogService service optional (not tracking)
  org.quartz.Job unregistered
    org.amdatu.security.tokenstorage.mongo.ExpiredTokenPurger service required unavailable
    org.osgi.service.log.LogService service optional (not tracking)

我的激励因素是:

代码语言:javascript
复制
import java.util.Properties;

import javax.servlet.Filter;

import org.amdatu.security.tokenprovider.TokenProvider;
import org.apache.felix.dm.DependencyActivatorBase;
import org.apache.felix.dm.DependencyManager;
import org.osgi.framework.BundleContext;
import org.osgi.service.log.LogService;

import agenda.web.filters.teste.AdminLoginResource;
import agenda.web.filters.teste.RedirectFilter;
import agenda.web.filters.teste.SecurityFilter;

public class Activator extends DependencyActivatorBase {

    @Override
    public void init(BundleContext arg0, DependencyManager dm)
            throws Exception {

        Properties properties = new Properties();
        properties.put("pattern", "/*.*");
        dm.add(createComponent()
                .setInterface(Filter.class.getName(), properties)
                .setImplementation(SecurityFilter.class)
                .add(createServiceDependency().setService(TokenProvider.class).setRequired(true))
                .add(createServiceDependency()
                        .setService(LogService.class)
                        .setRequired(false)));

    }

    @Override
    public void destroy(BundleContext arg0, DependencyManager arg1)
            throws Exception {
        // TODO Auto-generated method stub

    }

}
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-10-30 07:50:57

从DM的输出来看,似乎存在MongoDbService不可用的问题。MongoDbService是由托管服务工厂创建的,因此您可能缺少它的配置。至少应该配置一个"dbName“,请参阅更多的文档:http://amdatu.org/components/mongodb.html

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26580919

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档