2017-05-08 93 views
1

我在Payara服务器中创建了多个具有不同JNDI的领域。意思是我有多个具有相同结构(用户和组)的数据库,并希望通过在运行时获取/设置领域名称来获得认证/授权。我不知道如何在运行时获得JDBCRealm名称,需要任何帮助。动态选择JDBCRealm

我正试图获得通过:

 Context iniCtx = new InitialContext(); 
     DataSource ddsa = (DataSource) iniCtx.lookup("java:app/multi2jndi"); 
     DatabaseMetaData mdd; 

我不工作,因为它是用来查找一个资源。

+0

请检查此问题(http://stackoverflow.com/questions/5104185/how-to-inject-persistence-context-to-different-data-source-programmatically)并从Nayan回答。 – D00de

+0

@ D00de这是关于调用数据源,我的问题是要在运行时获得领域名称。 –

+0

你的域配置在web.xml文件中? – D00de

回答

1

经过两天的努力,我发现我们不能直接破解容器管理的安全/领域。一些我们如何编写我们自己的定制安全模块,或者通过使用JASPIC(JSR196)来改变。我正在进一步与JASPIC。