gpt4 book ai didi

jakarta-ee - 将参数初始化为 EJB

转载 作者:行者123 更新时间:2023-12-03 23:28:21 25 4
gpt4 key购买 nike

我必须在 EJB 中使用身份验证凭据才能访问外部 Web 服务。

我找到了 this thread但据我所知,ejb-jar.xml 位于最终的 jar 中,这意味着重新打包以更改密码,我想避免这种情况。

我知道,我可以使用 <servlet> ... <init-param>...引用应用程序服务器配置目录中的文件,我可以在其中存储用户名和密码。 EJB有类似的方法吗?

我的下一个想法是在 payara 服务器中声明自定义 JNDI 资源,但我不确定安全隐患。

将用户名和密码传输到 EJB 中的建议方法是什么?

最佳答案

这就是 JNDI 的用途。诸如凭据、URL 和资源路径之类的东西应该由应用程序部署者(企业部署模型中的假定角色之一)设置,以便应用程序作者无需担心具体细节。

每个容器都有不同的机制来将值注入(inject)到内部 JNDI 树中。 Glassfish 允许您直接在管理控制台中执行此操作。与 WebSphere 类似。其他容器将具有类似的机制。然后您可以使用 @Resource 通过 JNDI 引用该值(如果您想要它注入(inject))或通过直接查找使用:

Context _ctx = new InitiaContext();
String _user = (String) _ctx.lookup( "jndi/tree/path/to/desired/resource" );

HTH

关于jakarta-ee - 将参数初始化为 EJB,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48357426/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com