Java 访问META-INF/weblogic-application.xml
我需要重构一个现有的jar,以便在WebLogic11c和12c下工作。代码需要java角色到LDAP组映射的完整细节,如META-INF/weblogic-application.xm中所示。我寻求一个好的机制来检索这些信息 一些细节:Java 访问META-INF/weblogic-application.xml,java,jakarta-ee,weblogic,Java,Jakarta Ee,Weblogic,我需要重构一个现有的jar,以便在WebLogic11c和12c下工作。代码需要java角色到LDAP组映射的完整细节,如META-INF/weblogic-application.xm中所示。我寻求一个好的机制来检索这些信息 一些细节: jar不是一个EJBJAR,由于接口无法更改,我无法控制它在应用程序中的使用方式(它是一个adrop,用于替代其他库) 这意味着我不能注入EJB上下文 这也意味着我没有连接到可用的JMX mbean树(需要配置信息) 我想要的东西,适用于多个应用程序,所有部
- jar不是一个EJBJAR,由于接口无法更改,我无法控制它在应用程序中的使用方式(它是一个adrop,用于替代其他库)
- 这意味着我不能注入EJB上下文
- 这也意味着我没有连接到可用的JMX mbean树(需要配置信息)
- 我想要的东西,适用于多个应用程序,所有部署为耳朵
- 我想要一些能在快速交换和分解目录布局中幸存下来的东西
- 我想要一些尽可能经得起未来考验的东西
- 当从WAR文件调用时,它需要与从EJBJAR文件调用时一样工作
- 它需要在WebLogic 11c、12c下运行,并且尽可能具有未来的可靠性
- 使用getClass().getResource(我自己)检索指向我的代码的URL
- 放下jar:前缀和关联!标记
- 通过目录树向上扫描,直到找到包含META-INF/weblogic-application.xml的文件夹
- 如果找到->读取和分析/否则->投诉和崩溃
这似乎是可行的,但我希望找到一种不那么黑客的方法,要么访问xml文件,要么查询执行jar的托管服务器(但没有配置连接参数的手段)这个问题非常类似:。它有一些有趣的答案。@罗伯特:谢谢。基本上,他们直接使用getResourceAsStream,或者要求web层提供路径。这两种方法在我的情况下都不起作用,不幸的是,将功能放在EJB jar中,而只委托给通过JNDI查找获得的服务,这有什么关系?@SirRotN我不能更改接口,也不能将我的jar声明为EJB jar。@SirRotN:对不起,我误解了你。这是一个有趣的想法,但这意味着要么部署一个额外的本地EJB,要么知道哪个远程服务器包含EJB。我真的不知道我的代码将在哪些服务器或程序中使用。即便如此,我还是会考虑这个。也许这会带来一个完整的解决方案