`
enjoyaday
  • 浏览: 15819 次
  • 性别: Icon_minigender_1
  • 来自: 江门
文章分类
社区版块
存档分类
最新评论

StrutsSpringObjectFactory默认注入策略

阅读更多
public StrutsSpringObjectFactory(
            @Inject(value=StrutsConstants.STRUTS_OBJECTFACTORY_SPRING_AUTOWIRE,required=false) String autoWire,

autoWire由构造方法注入,默认值为"name"

int type = AutowireCapableBeanFactory.AUTOWIRE_BY_NAME;   // default
        if ("name".equals(autoWire)) {
            type = AutowireCapableBeanFactory.AUTOWIRE_BY_NAME;
        } else if ("type".equals(autoWire)) {
            type = AutowireCapableBeanFactory.AUTOWIRE_BY_TYPE;
        } else if ("auto".equals(autoWire)) {
            type = AutowireCapableBeanFactory.AUTOWIRE_AUTODETECT;
        } else if ("constructor".equals(autoWire)) {
            type = AutowireCapableBeanFactory.AUTOWIRE_CONSTRUCTOR;
        } else if ("no".equals(autoWire)) {
            type = AutowireCapableBeanFactory.AUTOWIRE_NO;
        }
        this.setAutowireStrategy(type);

默认按名字注入

引起问题:接收页面数据的类如果有自身类型的属性抛异常
public class Category {

	private String id;
	private String name;
	private String description;
	private Category parent;
	private Set<Category> children;


异常为:
Struts has detected an unhandled exception:
# Messages: attempt to create saveOrUpdate event with null entity
File: org/hibernate/event/SaveOrUpdateEvent.java
0
1
分享到:
评论

相关推荐

    strut2和spring整合

    - 默认的自动装配策略是基于 `name`,即查找与 Action 属性名相同的 Spring bean。 - 可通过设置 `struts.objectFactory.spring.autoWire` 常量改变自动装配策略,如 `type`, `auto`, `constructor`。 6. **...

    java三大框架注解配置

    &lt;constant name="struts.objectFactory" value="org.apache.struts2.spring.StrutsSpringObjectFactory" /&gt; 修改struts默认的拦截: &lt;filter-name&gt;struts2 *.action *.jsp 2、添加hibernate功能 3、添加...

    struts2整合spring jar包

    4. **FilterDispatcher**:在Struts2与Spring整合时,通常会使用`StrutsSpringObjectFactory`替换默认的`DefaultActionProxyFactory`。为此,我们需要在web.xml中配置`StrutsPrepareAndExecuteFilter`而非传统的`...

    Spring 和struts 整合的三种方式

    我们需要在Struts的配置文件(struts-config.xml)中替换默认的RequestProcessor,改为Spring的DelegatingRequestProcessor。 ```xml ``` 然后在Spring配置文件中定义Action beans。这种方式的好处是,Spring可以...

    struts2+spring整合例子

    4. **定义Action类**:Action类通常需要继承自Struts2的抽象类`org.apache.struts2.spring.StrutsSpringObjectFactory`,或者通过注解`@StrutsTag(name="spring", tldTagClass="org.apache.struts2.views.jsp.ui....

    Spring注解配置中间层供Struts2使用

    在IT行业中,SSH(Spring、Struts2、...Struts2提供了Spring插件,它允许我们在不修改Struts2默认对象工厂的情况下,利用Spring来管理和注入Bean。要启用此功能,我们需要在Struts2的配置文件中添加以下配置: ```xml ...

    spring_struts集成例子

    &lt;constant name="struts.objectFactory" value="org.apache.struts2.spring.StrutsSpringObjectFactory" /&gt; ``` 2. **创建Spring配置文件**:在`src/main/resources`或相应目录下创建一个Spring配置文件,如`...

    第十二章.开发Struts.2.Spring应用.rar

    &lt;constant name="struts.objectFactory" value="org.apache.struts2.spring.StrutsSpringObjectFactory"/&gt; ``` 这里,`struts.objectFactory`配置指定了使用Spring对象工厂,而`springBean`拦截器则...

    struts2.1.6 整合spring 2.0源码(开发工具eclipse)

    通常会有一个`&lt;constant&gt;`标签来指定Spring的配置文件位置,例如`&lt;constant name="struts.objectFactory" value="org.apache.struts2.spring.StrutsSpringObjectFactory" /&gt;`。 4. **Action类**:Struts2的Action类...

    struts.xml和struts.properties配置详解

    1. **struts.objectFactory**: 指定对象工厂,如Spring插件的`struts.objectFactory=org.apache.struts2.spring.StrutsSpringObjectFactory`。 2. **struts.i18n.locale**: 设置默认的语言环境,如`struts.i18n....

    JavaEE Struts2整合Spring的小案例

    &lt;constant name="struts.objectFactory" value="org.apache.struts2.spring.StrutsSpringObjectFactory"/&gt; ``` 在这个小案例中,Day01_StrutsAndSpring可能包含了相关的代码文件,如Action类、Service类、配置文件...

    完整的struts2配置,带实例

    &lt;constant name="struts.objectFactory" value="org.apache.struts2.spring.StrutsSpringObjectFactory"/&gt; &lt;param name="excludeMethods"&gt;input,back,cancel,browse ...

    Spring与Struts集成方式二

    &lt;constant name="struts.objectFactory" value="org.apache.struts2.spring.StrutsSpringObjectFactory"/&gt; ``` 4. **Action类的编写**:Action类需要实现Spring的`ApplicationContextAware`接口,以便在Struts2...

    Spring和Struts整合例子

    &lt;constant name="struts.objectFactory" value="org.apache.struts2.spring.StrutsSpringObjectFactory" /&gt; ``` 5. **Action类的修改**:由于我们使用了Spring管理Bean,所以Action类不再需要依赖注入的构造函数...

    整合struts2+spring2.5+ibatis

    同时,需要配置Struts2与Spring的集成,例如通过`StrutsSpringObjectFactory`让Struts2能够使用Spring管理的Bean。 3. **配置iBatis**:配置`SqlMapConfig.xml`,包含数据库连接信息和SQL映射文件的路径。在Spring...

    Struts2SpringHibernate升级三合一(精益求精)

    Struts2.3.16.3升级到Struts2.5.12注意事项(必须) Spring 4.1.2升级到Spring 4.3.10注意事项(必须) hibernate 3升级到hibernate5.2.9注意事项(必须) 最新SSH升级必备

    struts2入门教程及struts2集成spring

    &lt;constant name="struts.objectFactory" value="org.apache.struts2.spring.StrutsSpringObjectFactory" /&gt; ``` 3. **配置Spring**:创建Spring的bean配置文件,定义需要被管理的Action类以及其他服务类。例如: ...

    Annatation_Strus2_Spring3整合例子

    &lt;constant name="struts.objectFactory" value="org.apache.struts2.spring.StrutsSpringObjectFactory"/&gt; ``` 3. 在Spring的配置文件(如`applicationContext.xml`)中声明需要管理的Bean,并启用注解扫描: ```...

    struts 整合spring 例子,测试通过

    Struts2 和 Spring 整合是Java开发中常见的实践,主要目的是为了利用Spring的强大功能,如依赖注入(DI)和面向切面编程(AOP),同时保持Struts2的MVC架构的优势。以下是对整合过程的详细说明: 首先,Spring框架...

    S2SH(struts2+spring+hibernate)三大框架整合

    此外,为了使Struts2能够利用Spring来创建Action对象,需要在`struts.xml`中添加`struts.objectFactory`常量,值设为`org.apache.struts2.spring.StrutsSpringObjectFactory`。 **注意事项**: - 在配置过程中,...

Global site tag (gtag.js) - Google Analytics