Tag: spring 3

Spring抛出错误:Bean定义是抽象的

我需要一些关于下一个主题的帮助。 我有一个bean的层次结构,就像那样: 我需要创建另一个包含对抽象类的引用的bean。 然后在运行时,我需要能够初始化TYPE“myPackage.Father”的变量,并使用任何子类(多态机制)实例化它。 我的意思是这样的: 请注意,引用(myPackage.Another的实例)不是myPackage.Father的子类。 但是使用这些行Spring会抛出下一个错误: Bean definition is abstract 我怎么处理它? 我感谢任何帮助,提前谢谢!

如何在Spring中为系统用户validation计划进程?

我们有一个Quartz / Spring Batch作业,为了审计日志记录的目的,我们希望将它作为系统用户进行“身份validation”。 我们的一些方法依赖于获取SecurityContext来执行此操作。 运行此作业的方式是可信的(或经过身份validation)。 我们不想实际使用密码或其他令牌(因为该过程基本上总是由石英生成)。 我试过这个 private void authenticate() { UserDetails admin = userDetailsService.loadUserByUsername( “admin” ); RunAsUserToken token = new RunAsUserToken( UUID.randomUUID().toString(), admin, admin.getAuthorities(), null , null ); Authentication user = authenticationManager.authenticate( token ); if ( user.isAuthenticated() ) { SecurityContext sc = new SecurityContextImpl(); sc.setAuthentication( user ); SecurityContextHolder.setContext( sc ); } } 但它导致了 […]

如何让unit testing在java 7中运行:java.lang.VerifyError:期望分支目标下的stackmap帧

嗨,我正在使用maven 3.0.3运行maven测试,使用hibernate 4.0.0最终版本和jdk7 update 2上的spring 3.1。 我收到以下错误。 Caused by: java.lang.VerifyError: Expecting a stackmap frame at branch target 63 in method ${myDomainClass}.equals(Ljava/lang/Object;)Z at offset 24 at java.lang.Class.getDeclaredMethods0(Native Method) at java.lang.Class.privateGetDeclaredMethods(Class.java:2442) at java.lang.Class.getDeclaredMethods(Class.java:1808) at org.hibernate.property.BasicPropertyAccessor.getterMethod(BasicPropertyAccessor.java:352) at org.hibernate.property.BasicPropertyAccessor.getGetterOrNull(BasicPropertyAccessor.java:331) at org.hibernate.property.BasicPropertyAccessor.createGetter(BasicPropertyAccessor.java:314) at org.hibernate.property.BasicPropertyAccessor.getGetter(BasicPropertyAccessor.java:310) at org.hibernate.internal.util.ReflectHelper.getter(ReflectHelper.java:250) at org.hibernate.internal.util.ReflectHelper.reflectedPropertyClass(ReflectHelper.java:229) at org.hibernate.mapping.SimpleValue.setTypeUsingReflection(SimpleValue.java:314) at org.hibernate.cfg.HbmBinder.bindSimpleId(HbmBinder.java:447) at org.hibernate.cfg.HbmBinder.bindRootPersistentClassCommonValues(HbmBinder.java:380) at org.hibernate.cfg.HbmBinder.bindRootClass(HbmBinder.java:320) at org.hibernate.cfg.HbmBinder.bindRoot(HbmBinder.java:171) at org.hibernate.cfg.Configuration$MetadataSourceQueue.processHbmXml(Configuration.java:3377) […]

将JSR-356 WebSocket @ServerEndpoint与Spring 3 bean集成

我使用Spring 3.2.5而没有全新的JSR-356 WebSockets支持。 我想在我的@ServerEndpoint WebSocket服务器中使用singleton-bean引用,该服务器由servlet容器本身实例化,而不是在Spring上下文中实例化。 干净的方法是什么? 我目前的解决方案:我在静态字段中使用实例制作了@Service单例bean: @Service public class WebSocketSupportBean { private volatile static WebSocketSupportBean instance = null; public static WebSocketSupportBean getInstance() { return instance; } public WebSocketSupportBean() { instance = this; } 并且只是通过静态方法在@ServerEndpoint获取它,如果返回null则断开用户连接(如果在服务器启动期间bean没有创建,但是用户连接):

在bean工厂中找不到持久性exception转换器。 无法执行exception转换

在使用Hibernate 4.0.0 CR7迁移到Spring Framework 3.1.0 RC1之后,我遇到了exception 2011-12-08 / 11:48:38.425 / EST [Thread-17] ERROR上下文初始化失败org.springframework.beans.factory.BeanCreationException:创建名为’org.springframework.dao.annotation.PersistenceExceptionTranslationPostProcessor#0’的bean时出错在ServletContext资源[/WEB-INF/applicationContext-hibernate.xml]中定义:bean的初始化失败; 嵌套exception是java.lang.IllegalStateException:在bean工厂中找不到持久性exception转换器。 无法执行exception转换。 org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:530)org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:459)org.springframework.beans.factory .support.AbstractBeanFactory $ 1.getObject(AbstractBeanFactory.java:294)org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:225)org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean( AbstractBeanFactory.java:291)org.springframework上的org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:197)org.springframework.context.support.AbstractApplicationContext.registerBeanPostProcessors(AbstractApplicationContext.java:728) org.springframework.web.context.ContextLo中的.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:449) org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:283)中的order.configureAndRefreshWebApplicationContext(ContextLoader.java:381)org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:111)at org .apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4723)org.apache.catalina.core.StandardContext $ 1.call(StandardContext.java:5226)at org.apache.catalina.core.StandardContext $ 1.call (StandardContext.java:5221)java.util.concurrent.FutureTask $ Sync.innerRun(Unknown Source)java.util.concurrent.FutureTask.run(Unknown Source)at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source) )java.util.concurrent.ThreadPoolExecutor java.lang.Thread.run上的$ Worker.run(未知源)(未知来源)引起:java.lang.IllegalStateException:bean工厂中找不到持久性exception转换器。 无法执行exception转换。 org.springframework.dao.support.PersistenceExceptionTranslationInterceptor.detectPersistenceExceptionTranslators(PersistenceExceptionTranslationInterceptor.java:142)org.springframework.dao.support.PersistenceExceptionTranslationInterceptor。(PersistenceExceptionTranslationInterceptor.java:79)at org.springframework.dao.annotation.PersistenceExceptionTranslationAdvisor。(PersistenceExceptionTranslationAdvisor .java:70)org.springframework上的org.springframework.dao.annotation.PersistenceExceptionTranslationPostProcessor.setBeanFactory(PersistenceExceptionTranslationPostProcessor.java:103)org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeAwareMethods(AbstractAutowireCapableBeanFactory.java:1465)。 beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1433)at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:52 2)……还有18个

元素’mvc:annotation-driven’找不到声明

我需要从我的控制器返回JSON / XML数据。从我发现的,我在我的方法中需要@ResponseBody ,为此我需要启用 。 我尝试了各种RnD,但仍然卡住了! 🙁 显然我的问题在于我的servlet.xml文件(架构没有得到validation!)我正在使用Spring 3.1.1并在我的类路径中明确地放入了spring-mvc-3.1.1.jar。 这是我的servlet-context文件sample-servlet.xml: com.sample.model.SampleClass 我的控制器类看起来像这样: @Controller public class XmlController { @RequestMapping(value=”/getXml”,method = RequestMethod.POST) public @ResponseBody AssociateDetail getXml(){ System.out.println(“inside xml controller…..”); AssociateDetail assoBean=null; try{ AssociateService add=new AssociateService(); assoBean=add.selectAssociateBean(); }catch(Exception e){ e.printStackTrace(); } return assoBean; } } 现在问题是给出错误: cvc-complex-type.2.4.c:匹配的通配符是strict,但是没有找到元素’mvc:annotation-driven’的声明。 我已尝试过本网站及其他网站上建议的所有变通方法。 使用Spring 3.1.1和@ResponseBody更新了我的模式名称空间。

Spring 3中@Component和@Configuration之间的区别

我遇到了Spring 3提供的两个注释( @Component和@Configuration )我对它们有点困惑。 这是我读到的关于@Component的内容 把这个“context:component”放在bean配置文件中,就是说,在Spring中启用自动扫描function。 base-package指示你的组件存储在哪里,Spring将扫描这个文件夹并找出bean(用@Component注释)并在Spring容器中注册它。 所以我想知道@Configuration的用途是什么,如果@Controller将注册我的bean而不需要在spring配置xml文件中声明它们

“匹配的通配符是严格的,但是没有找到元素’http’的声明”错误

我正在尝试配置NTLM身份validation,但收到错误: cvc-complex-type.2.4.c:匹配的通配符是strict,但是没有为元素’http’找到声明。 我读了很多类似错误的主题,但我找不到解决问题的方法。 我的导致错误的security.xml文件是: 0 false COMPANY somenycuser AReallyLoooongRandomPassword 因为版本3.X Spring Security不再包含NTLM扩展,我在http://aloiscochard.blogspot.com/2010/03/spring-security-ntlm-3.html文章中使用它。 请帮帮我。

带有2个事务管理器的@EnableTransactionManagement注释

我使用@Configuration注释来配置spring而不是xml文件。 我正在配置具有不同会话工厂和不同事务管理器的2个数据源。 我在这里@EnableTransactionManagement注释的问题。 我在其文档中读到, @EnableTransactionManagement更灵活; 它将回退到容器中任何PlatformTransactionManager bean的类型查找。 因此,名称可以是“txManager”,“transactionManager”或“tm”:它无关紧要。 这意味着我给方法的任何名称,它总是会搜索返回PlatformTransactionManager对象的方法,而我有2个transactionmanagers。 现在问题是,当我测试这个类时,它给了我错误: org.springframework.beans.factory.NoSuchBeanDefinitionException :没有定义[ org.springframework.transaction.PlatformTransactionManager ]类型的唯一bean:期望的单个bean但找到了2 我甚至试图拥有2个不同的配置类但是徒劳无功。 在xml配置中,情况并非如此。 我用两个标签注册了我的两个事务管理 ,它运行正常。 但是这里不能用注释做同样的事情。 如果我想在Spring注释配置类中配置2个具有2个不同事务管理器的数据源,我该怎么办?

Spring 3 @ImportResource包含多个文件

我正在尝试使用Spring 3 @ImportResource注释找到导入多个spring xml上下文文件的语法。 我已尝试使用逗号分隔文件名,如下图所示,但这不起作用: @Configuration @ImportResource(“spring-context1.xml”, “spring-context2.xml”) public class ConfigClass { } @ImportResource的文档说“表示包含要导入的bean定义的一个或多个资源”。 所以我认为应该有一种方法来指定多个上下文文件。 令人惊讶的是,我无法在Google上找到任何示例