struts 2学习(有关Unable to load bean: type: class:com.opensymphony.xwork2.ObjectFactory的错误)收藏
觉得 struts2 的官方网站上的第一个例子不是太好, 我开始试的时候,
把 struts2 的所有的 jar 包 都放到web-inf/lib 下了, 结果老出错
就是下面的两个错:
-------------------------------------------------------------------
Unable to load bean: type:com.opensymphony.xwork2.ObjectFactory class:org.apache.struts2.spring.StrutsSpringObjectFactory - bean - jar:file:/D:/workspace/.metadata/.plugins/org.eclipse.wst.server.core/tmp0/wtpwebapps/testStruts/WEB-INF/lib/struts2-spring-plugin-2.0.6.jar!/struts-plugin.xml:8:132
at com.opensymphony.xwork2.config.providers.XmlConfigurationProvider.register(XmlConfigurationProvider.java:208)
at org.apache.struts2.config.StrutsXmlConfigurationProvider.register(StrutsXmlConfigurationProvider.java:101)
Caused by: java.lang.NoClassDefFoundError: org/springframework/context/ApplicationContextAware
---------------------------------------------------------------------
其他的地方都检查了好几遍 但是一运行tomcat 就出错, 找了半天原因原来是
没看到下面这句话 http://struts.apache.org/2.x/docs/simple-setup.html
If any Struts 2 Plugins are included, then other JARs may be needed too. For example, the optional Spring Plugin requires the Spring JARs to be present.
这对初学者也要求太高了吧, 要是不知道 Spring 是的什么东西就不要用struts2 了。
去掉了那几个jar包, (简单的,留下xwork-2.0.4.jar、commons-logging-1.0.4.jar、freemarker-2.3.8.jar、ognl-2.6.11.jar、struts2-core-2.0.11.jar)就可以运行了。
分享到:
相关推荐
在Qt中,"ObjectFactory"模式是一种设计模式,它提供了一种动态创建对象的方式,使得在运行时可以根据需要创建不同的类实例。这种模式在需要灵活地根据配置或用户输入创建不同类型的对象时特别有用。 "Qt反射"是Qt...
JAXB对package包下所有对象编组需要的ObjectFactory.java类
对象工厂 Object Factory旨在简化创建可用于单元测试的随机... ObjectFactory的主要类是ObjectFactory,它提供一个API <T> T generate(Type type)用于为给定类型生成随机对象。 看看下面的示例,该示例从ObjectFacto
相比于直接在配置中声明bean,`ObjectFactory`允许我们在运行时动态地获取bean实例,这样可以提高应用的灵活性和性能,因为某些对象可能并不总是需要立即创建。 `FactoryBean`则是一个更复杂、更强大的接口,它主要...
当beanA依赖于beanB,但beanB尚未完全初始化时,Spring会创建一个`ObjectFactory`实例,这个工厂能够返回beanB的早期引用。当需要注入beanB时,`ObjectFactory`的`getObject()`方法会被调用,返回beanB的早期实例。 ...
在三级缓存中,ObjectFactory会将bean的实例经过SmartInstantiationAwareBeanPostProcessor的getEarlyBeanReference方法处理,从而实现了bean的提前曝光。这样,在实例化bean时,如果存在循环依赖,Spring就可以通过...
- ObjectFactory:存放用于延迟初始化的Bean的ObjectFactory。 当Spring遇到构造器参数循环依赖时,它会尝试从这三级缓存中获取依赖的Bean。首先,它会在EarlySingletonObjects中存储一个Bean的实例,然后尝试注入...
Location of additional localization properties files to load 加载附加的国际化属性文件(不包含.properties后缀) struts.custom.properties Location of additional configuration properties files to ...
ObjectFactory 是一个工厂对象,能够通过调用其 getObject() 方法来获取早期暴露的 Bean 实例。\n\nBean 的创建过程是分阶段进行的,包括 BeanDefinition 的读取、实例化、属性赋值和初始化等步骤。在 Bean 实例化...
Struts2 和 Spring 整合是为了在 Struts2 框架中利用 Spring 的依赖注入(Dependency Injection,DI)和管理bean的能力,从而提高应用程序的灵活性和可维护性。以下是整合过程中涉及的关键知识点: 1. **Struts2-...
在IT领域,特别是Web开发中,Struts框架作为Java Web应用的一个重要组成部分,其在处理中文字符时常常遇到乱码问题。这个问题不仅影响了用户体验,也增加了开发者的调试难度。本文将深入探讨Struts框架中中文乱码的...
"Java-Spring框架面试题" ...3. 三级缓存:缓存的是ObjectFactory,表示对象工厂,用来创建某个对象 Spring框架为我们提供了许多强大的功能和工具,但是需要我们深入了解其原理和机制,才能更好地应用于实际项目中。
<bean id="helloWorldService" class="com.example.HelloWorldServiceImpl"/> implementor="#helloWorldService" address="/HelloWorld"/> ``` 6. **部署与运行**:将配置好的CXF应用打包成WAR文件,然后...
在IT行业中,Web服务是一种广泛使用的接口技术,用于不同系统之间的数据交换。...SOAP Header是SOAP消息的一部分,用于传递附加信息,如认证、会话管理、事务处理等。在这个"soapHeader验证例子"中,我们将探讨如何使用...
WebService小白学习,处理JavaBean以及复合类型,list,处理一些Map等复杂类型, CXF添加拦截器,自定义拦截器等等。 博客学习地址:https://blog.csdn.net/qq_37902949/article/details/81262826
Web服务(WebService)是一种基于网络的、分布式的模块化组件,允许不同的应用程序在不同的操作系统和编程语言之间进行通信。在给定的标题“webservice (xfire,axis2)”中,我们关注的是两个知名的Java WebService...
public Object getSingleton(String beanName, ObjectFactory<?> singletonFactory) { // ... Object singletonObject = this.singletonObjects.get(beanName); if (singletonObject == null) { // ... try { ...
通过`struts.objectFactory = spring`,Struts2将自动寻找Spring容器中的bean,并将Action实例化。Action类中只需声明Service的set方法,Spring就会自动注入对应的bean。 二、Spring配置 Spring框架的配置通常涉及...
PDType0Font font = PDType0Font.load(document, new File("/Users/xiaoming/work/tmp/simsun.ttf")); // 定义页面内容流 PDPageContentStream stream = new PDPageContentStream(document, page); ``` Java生成...