public interface ReportService
{
List<String> determineRelevantData();
Report generate(ReportRequest request, Locale locale) throws ServiceFailedException;
}
@Stateless
public class ReportServiceFacadeBean implements ReportServiceFacadeLocal
{
@Inject
private FirstReportBean firstReport;
@Inject
private SecondReportBean secondReport;
@Inject
private ThirdReportBean thirdReport;
[...]
}
当我在实现的bean中取消对接口的注释时,服务器启动时不会出现任何错误。我错过了什么?
与CDI bean相比,EJB bean有一些不同的bean类型,然后用于注入。也就是说,您希望通过EJB bean的客户端可见部分(即接口)来注入EJB bean(除非您有non-interface视图)。
这得到了规范的充分支持,下面是CDI规范中提到的一章(与其他链接)。
在您的例子中,您必须引入限定符,然后注入bean,如:
@Inject
@SomeQualifier
ReportService firstService;
堆栈跟踪
我正在尝试实现一个quarkus-extension用于授权/认证。我使用现有的< code > quar kus-small rye-jwt-abx -扩展作为例子。一切似乎都很好,除了我不能注入< code>Principal: 我得到了 对 java.security.主体和限定符类型未满足的依赖关系 [@Default] 注入
我正在尝试创建一个带有Wildfly和数据库连接的EJB Web项目,以持久化我的类“article”。但当我启动我的应用程序时,我得到了错误 包装服务; ArticleDaoImpl
问题内容: 我的应用程序的登录页面有两种状态:,。现在,我想在同一URL上显示这两种状态,但让控制器和模板取决于用户会话(用户是否登录?)。 有没有办法做到这一点? 问题答案: 您可以有一个基本状态来控制要加载的状态,并且可以简单地让声明该基本状态的子级没有url: 现在,在基本状态()的控制器中,您可以检查用户是否已登录,并用于加载适当的状态。 编辑 如所承诺的那样,正在努力工作。
在app.gradle中,我只为专业版添加了LockPattern库: 我在两种风格中都描述了相同的类(所以在主文件夹中),因为它很大,我不想在两种风格中重复代码。pro版本成功构建,但lite版本显示了一个错误,因为我没有导入lite版本的依赖项。 我看到的一个解决方案是将lockpattern库添加到两种口味中,然后使用proGuard,将其从lite口味中删除。虽然我相信这可能奏效,但这可能
但是我有两种回购方式 如何创建两个bean,其中一个是用注入的,另一个是用注入的?