草庐IT

Bean-IOC

全部标签

java - JSF 托管 Bean 自动创建?

是否可以自动创建JSF托管bean?例如,我有几个session范围的bean。有时有必要在代码中访问这些实例(而不仅仅是在JSF中),这是通过以下方式完成的:PageBeanpageBean=(PageBean)FacesContext.getCurrentInstance().getExternalContext().getSessionMap().get("pages");但是,如果还没有访问过调用“#{pages}”的页面,那么它会解析为null...无论如何,是否可以让JSF在作用域“开始”时创建一个bean?因此,在这种情况下,理想情况下,当用户session开始时,“页面

java - 什么是 CDI bean?

我有点困惑,我们将CDIbean称为我们使用@Inject注释注入(inject)它们的bean或我们在其中使用@Inject的bean? 最佳答案 CDIbeansareclassesthatCDIcaninstantiate,manage,andinjectautomaticallytosatisfythedependenciesofotherobjects.AlmostanyJavaclasscanbemanagedandinjectedbyCDI.例如,PrintServlet依赖于Message实例,并由CDI运行时自动注

java - 非请求范围 Bean 中的 @ManagedProperty(value = "#{param.id}")

我需要将参数(POST)传递给@managedBean,我使用了这样的托管属性:@ManagedProperty(value="#{param.id}")privateintid;Bean的作用域是ViewScope我最终遇到了这个错误:Unabletocreatemanagedbeanreceipt.Thefollowingproblemswerefound:-Thescopeoftheobjectreferencedbyexpression#{param.id},request,isshorterthanthereferringmanagedbeansscopeofview我能做什

java - Spring Boot 1.4 @DataJpaTest - 创建名称为 'dataSource' 的 bean 时出错

我创建了一个新的springboot1.4应用程序,想尝试使用@DataJpaTest进行一些测试,但不断收到以下错误消息原因:org.springframework.beans.factory.BeanCreationException:创建名为“dataSource”的bean时出错:调用init方法失败;嵌套异常是java.lang.IllegalStateException:无法确定用于测试的嵌入式数据库。如果您需要嵌入式数据库,请将受支持的数据库放在类路径中。src/main/resources/application.propertiesspring.datasource.

java - 列表的 Bean 验证大小?

如何设置List应至少包含1个元素且最多包含10个元素的bean验证约束?以下均无效:@Min(1)@Max(10)@Size(min=1,max=10)privateListlist; 最佳答案 我创建了简单的类:publicclassMock{@Size(min=1,max=3)privateListstrings;publicListgetStrings(){returnstrings;}publicvoidset(Liststrings){this.strings=strings;}}并测试:Mockmock=newMock

java - 将链接值传递给 bean

我有一个带有如下链接的JSP文件:我有一个Action类LinkAction.java:publicclassLinkActionextendsorg.apache.struts.action.Action{publicActionForwardsignUp(ActionMappingmapping,ActionFormform,HttpServletRequestrequest,HttpServletResponseresponse)throwsException{returnmapping.findForward("signUp");}publicActionForwardhome

java - 如何创建 FindByIndexNameSessionRepository 的 bean

我正在尝试创建FindByIndexNameSessionRepository的Bean。我需要让所有用户session都使用它,但即使我已经定义了它,我也会收到bean错误。我正在使用SpringBootStarter1.5.7Error:FieldsessionRepositoryrequiredabeanoftype'org.springframework.session.FindByIndexNameSessionRepository'thatcouldnotbefound.Considerdefiningabeanoftype'org.springframework.sess

A component required a bean of type ‘XXX‘ that could not be found 解决办法

问题如图:字面意思很容易就能看出,该问题是由于SpringBoot在启动时,bean扫描失败,从而导致加载失败。可以从如下几个方面排查:检查问题类上是否标注了SpringBoot可以自动扫描的注解,比如缺失了@Service、@Component、@Mapper等,如果是这个原因,直接添加上响应的注解就可以解决了。如果没有缺失注解,那么查看问题类是否在SpringBoot可以扫描到的范围内。一般情况下,若没有特殊配置,springboot启动时会自动扫描启动类所在包及其子包下的类,不在这个范围之内则会扫描失败。如果是这个原因导致的,可以按下面的方法解决:方法1:将问题类移动到可以扫描到的包下面

c# - 粗鲁的代码。 IoC 来拯救

在question关于IoCContainer的实用性,获胜的提交者提到使用IoC容器你可以这样做:publicclassUglyCustomer:INotifyPropertyChanged{privatestring_firstName;publicstringFirstName{get{return_firstName;}set{stringoldValue=_firstName;_firstName=value;if(oldValue!=value)OnPropertyChanged("FirstName");}}privatestring_lastName;publicstr

c# - Unity IoC 不会将依赖项注入(inject) Web API Controller

我刚开始使用Unity,但我的问题是每当我调用我的Web服务时,我都会收到一个异常说明“确保Controller有一个无参数的公共(public)构造函数”我已经学习了多个教程,但仍然遇到同样的问题。在我的WebApiConfig类的Register函数中,我有varcontainer=newUnityContainer();container.RegisterType(newHierarchicalLifetimeManager());config.DependencyResolver=newUnityResolver(container);这是我的UnityResolver类usi