jakarta.inject.Provider<T>接口

https://jakarta.ee/specifications/platform/9/apidocs/jakarta/inject/provider

Provider<T>接口提供T的实例,通常被一个注入器(injector)实现。对于任何可以被注入的类型T,同样也可以注入Provider<T>。跟直接注入T相比,注入Provider<T>有下面的好处:

  • 可以获取多个实例。
  • 可以懒获取或者可选地获取(lazy or optional retrieval)一个实例。
  • 打破循环依赖。

例如:

   class Car {
     @Inject Car(Provider<Seat> seatProvider) {
       Seat driver = seatProvider.get();
       Seat passenger = seatProvider.get();
       ...
     }
   }
  • 8
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
我的jdk版本是11,用了这些jar包:" <dependency> <groupId>com.sun.xml.messaging.saaj</groupId> <artifactId>saaj-impl</artifactId> <version>3.0.2</version> </dependency> <!-- https://mvnrepository.com/artifact/jakarta.xml.ws/jakarta.xml.ws-api --> <dependency> <groupId>jakarta.xml.ws</groupId> <artifactId>jakarta.xml.ws-api</artifactId> <version>4.0.0</version> </dependency> <!-- https://mvnrepository.com/artifact/com.sun.xml.ws/jaxws-rt --> <dependency> <groupId>com.sun.xml.ws</groupId> <artifactId>jaxws-rt</artifactId> <version>4.0.1</version> </dependency> <!-- https://mvnrepository.com/artifact/jakarta.xml.soap/jakarta.xml.soap-api --> <dependency> <groupId>jakarta.xml.soap</groupId> <artifactId>jakarta.xml.soap-api</artifactId> <version>3.0.0</version> </dependency> <!-- https://mvnrepository.com/artifact/jakarta.activation/jakarta.activation-api --> <dependency> <groupId>jakarta.activation</groupId> <artifactId>jakarta.activation-api</artifactId> <version>2.1.2</version> </dependency> ";但是在tomcat中运行这里的代码" private static MessageFactory getSOAPMsgFactory() throws SOAPException { if (_msgFact == null) { _msgFact = MessageFactory.newInstance(); } return _msgFact; }",会抛出异常:"jakarta.xml.soap.SOAPException: Unable to create message factory for SOAP: Unable to create SAAJ meta-factory: Provider com.sun.xml.messaging.saaj.soap.SAAJMetaFactoryImpl not found at jakarta.xml.soap.MessageFactory.newInstance(MessageFactory.java:96) at com.firstronix.webservice.WebServiceUtils.getSOAPMsgFactory(WebServiceUtils.java:80) at com.firstronix.webservice.WebServiceUtils.newBlankSOAPMessage(WebServiceUtils.java:130)",我该如何修复这个bug
06-08
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值