S2SH异常收集
-------------------
异常信息:
Messages: No unique bean of type [com.byd.dataplatform.service.IUserService] is defined: Unsatisfied dependency of type [interface com.byd.dataplatform.service.IUserService]: expected at least 1 matching bean
Could not autowire field: private com.byd.dataplatform.service.IUserService com.byd.dataplatform.web.action.UserAction.userService; nested exception is org.springframework.beans.factory.NoSuchBeanDefinitionException: No unique bean of type [com.byd.dataplatform.service.IUserService] is defined: Unsatisfied dependency of type [interface com.byd.dataplatform.service.IUserService]: expected at least 1 matching bean
Error creating bean with name 'com.byd.dataplatform.web.action.UserAction': Autowiring of fields failed; nested exception is org.springframework.beans.factory.BeanCreationException: Could not autowire field: private com.byd.dataplatform.service.IUserService com.byd.dataplatform.web.action.UserAction.userService; nested exception is org.springframework.beans.factory.NoSuchBeanDefinitionException: No unique bean of type [com.byd.dataplatform.service.IUserService] is defined: Unsatisfied dependency of type [interface com.byd.dataplatform.service.IUserService]: expected at least 1 matching bean
Unable to instantiate Action, com.byd.dataplatform.web.action.UserAction, defined for 'new' in namespace '/users'Error creating bean with name 'com.byd.dataplatform.web.action.UserAction': Autowiring of fields failed; nested exception is org.springframework.beans.factory.BeanCreationException: Could not autowire field: private com.byd.dataplatform.service.IUserService com.byd.dataplatform.web.action.UserAction.userService; nested exception is org.springframework.beans.factory.NoSuchBeanDefinitionException: No unique bean of type [com.byd.dataplatform.service.IUserService] is defined: Unsatisfied dependency of type [interface com.byd.dataplatform.service.IUserService]: expected at least 1 matching bean
--------------------------------------------------------------------------------
Stacktraces
Unable to instantiate Action, com.byd.dataplatform.web.action.UserAction, defined for 'new' in namespace '/users'Error creating bean with name 'com.byd.dataplatform.web.action.UserAction': Autowiring of fields failed; nested exception is org.springframework.beans.factory.BeanCreationException: Could not autowire field: private com.byd.dataplatform.service.IUserService com.byd.dataplatform.web.action.UserAction.userService; nested exception is org.springframework.beans.factory.NoSuchBeanDefinitionException: No unique bean of type [com.byd.dataplatform.service.IUserService] is defined: Unsatisfied dependency of type [interface com.byd.dataplatform.service.IUserService]: expected at least 1 matching bean
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'com.byd.dataplatform.web.action.UserAction': Autowiring of fields failed; nested exception is org.springframework.beans.factory.BeanCreationException: Could not autowire field: private com.byd.dataplatform.service.IUserService com.byd.dataplatform.web.action.UserAction.userService; nested exception is org.springframework.beans.factory.NoSuchBeanDefinitionException: No unique bean of type [com.byd.dataplatform.service.IUserService] is defined: Unsatisfied dependency of type [interface com.byd.dataplatform.service.IUserService]: expected at least 1 matching bean
org.springframework.beans.factory.BeanCreationException: Could not autowire field: private com.byd.dataplatform.service.IUserService com.byd.dataplatform.web.action.UserAction.userService; nested exception is org.springframework.beans.factory.NoSuchBeanDefinitionException: No unique bean of type [com.byd.dataplatform.service.IUserService] is defined: Unsatisfied dependency of type [interface com.byd.dataplatform.service.IUserService]: expected at least 1 matching bean
org.springframework.beans.factory.NoSuchBeanDefinitionException: No unique bean of type [com.byd.dataplatform.service.IUserService] is defined: Unsatisfied dependency of type [interface com.byd.dataplatform.service.IUserService]: expected at least 1 matching bean
原因:
没有把IUserService类型的实例注入到UserAction中!!!
解决办法:
在IUserService接口的实现类UserServiceImpl的类头加上@Service和@Transactional标注!!!
--------------------------------------------------------------------------------
异常信息:
org.hibernate.AnnotationException: mappedBy reference an unknown target entity property: com.byd.dataplatform.model.User.roles in com.byd.dataplatform.model.Role.users
at org.hibernate.cfg.annotations.CollectionBinder.bindStarToManySecondPass(CollectionBinder.java:655)
at org.hibernate.cfg.annotations.CollectionBinder$1.secondPass(CollectionBinder.java:619)
at org.hibernate.cfg.CollectionSecondPass.doSecondPass(CollectionSecondPass.java:66)
at org.hibernate.cfg.Configuration.secondPassCompile(Configuration.java:1221)
at org.hibernate.cfg.AnnotationConfiguration.secondPassCompile(AnnotationConfiguration.java:383)
at org.hibernate.cfg.Configuration.buildMappings(Configuration.java:1206)
at org.springframework.orm.hibernate3.LocalSessionFactoryBean.buildSessionFactory(LocalSessionFactoryBean.java:673)
at org.springframework.orm.hibernate3.AbstractSessionFactoryBean.afterPropertiesSet(AbstractSessionFactoryBean.java:211)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1369)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1335)
... 65 more
原因:
看异常信息就知道是mappedBy引用了未知的目标实体属性:User.roles在Role.users。
也就是说这里的“mappedBy = roles”中的roles写错误了,正确的应该是User类的Role类型的属性role(见User类的private Role role;)。
总结:mappedBy的值应该是拥有方(或叫维护端)引用的被拥有方(或叫被维护端)的类型的属性,而不是DB表中的列。
解决办法:
将mappedBy的值从原来的表的列名改为类的属性名!!!
原因和解决办法请参考以下案例:
hibernate一对多、多对一关系(注解)
写了一个新闻模型,一个新闻类型模型,模型如下:
新闻模型:
@Id
@AccessType(value = "property")
@GeneratedValue(strategy=GenerationType.AUTO)
private int id;
@AccessType(value="property")
@Column(name="title")
private String title;
@AccessType(value="property")
@Column(name="content")
private String content;
@AccessType(value="property")
@Column(name="write_date")
private Date write_date;
@ManyToOne
@JoinColumn(name="news_type", nullable=true, insertable = true, updatable = true)
private NewsType newsType;
新闻类型模型:
@Id
@AccessType(value = "property")
@GeneratedValue(strategy=GenerationType.AUTO)
private int id;
@AccessType(value="property")
@Column(name="type_name")
private String typeName;
@OneToMany(mappedBy = "news_type", cascade = CascadeType.ALL,fetch = FetchType.LAZY)
private List nif;
报错如下:
Error creating bean with name 'menuDAO' defined in file [E:\Program Files\Apache Software Foundation\Tomcat 6.0\webapps\fykj\WEB-INF\classes\base\system\dao\MenuDAO.class]: Unsatisfied dependency expressed through constructor argument with index 0 of type [org.hibernate.SessionFactory]: : Error creating bean with name 'sessionFactory' defined in file [E:\Program Files\Apache Software Foundation\Tomcat 6.0\webapps\fykj\WEB-INF\classes\applicationContext.xml]: Invocation of init method failed; nested exception is org.hibernate.AnnotationException: mappedBy reference an unknown target entity property: news.model.NewsInfo.news_type in news.model.NewsType.nif; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'sessionFactory' defined in file [E:\Program Files\Apache Software Foundation\Tomcat 6.0\webapps\fykj\WEB-INF\classes\applicationContext.xml]: Invocation of init method failed; nested exception is org.hibernate.AnnotationException: mappedBy reference an unknown target entity property: news.model.NewsInfo.news_type in news.model.NewsType.nif
如果我去掉新闻类型这边的一对多关系,就不会报错,大家帮我看看,估计是哪里的问题?
答案:
@OneToMany(mappedBy = "news_type", cascade = CascadeType.ALL,fetch = FetchType.LAZY) 这里的mappedBy 要对应
@ManyToOne
@JoinColumn(name="news_type", nullable=true, insertable = true, updatable = true)
private NewsType newsType;的NewsType对象名,也就是newsType而不是字段名news_type。
--------------------------------------------------------------------------------
异常信息:
[orm:13:38:04] WARN [http-8080-3] OgnlValueStack.warn(60) | Error setting expression 'excellentEmployee.list' with value '[Ljava.lang.String;@2af60e'
ognl.OgnlException: target is null for setProperty(null, "list", [Ljava.lang.String;@2af60e)
at ognl.OgnlRuntime.setProperty(OgnlRuntime.java:2239)
at ognl.ASTProperty.setValueBody(ASTProperty.java:127)
at ognl.SimpleNode.evaluateSetValueBody(SimpleNode.java:220)
at ognl.SimpleNode.setValue(SimpleNode.java:301)
at ognl.ASTChain.setValueBody(ASTChain.java:227)
at ognl.SimpleNode.evaluateSetValueBody(SimpleNode.java:220)
at ognl.SimpleNode.setValue(SimpleNode.java:301)
at ognl.Ognl.setValue(Ognl.java:737)
[orm:13:38:04] WARN [http-8080-3] OgnlValueStack.warn(60) | Error setting expression 'excellentEmployee.month' with value '[Ljava.lang.String;@171e82c'
ognl.OgnlException: target is null for setProperty(null, "month", [Ljava.lang.String;@171e82c)
at ognl.OgnlRuntime.setProperty(OgnlRuntime.java:2239)
at ognl.ASTProperty.setValueBody(ASTProperty.java:127)
at ognl.SimpleNode.evaluateSetValueBody(SimpleNode.java:220)
at ognl.SimpleNode.setValue(SimpleNode.java:301)
at ognl.ASTChain.setValueBody(ASTChain.java:227)
at ognl.SimpleNode.evaluateSetValueBody(SimpleNode.java:220)
at ognl.SimpleNode.setValue(SimpleNode.java:301)
at ognl.Ognl.setValue(Ognl.java:737)
[orm:13:38:04] WARN [http-8080-3] OgnlValueStack.warn(60) | Error setting expression 'excellentEmployee.plan' with value '[Ljava.lang.String;@1e70c74'
ognl.OgnlException: target is null for setProperty(null, "plan", [Ljava.lang.String;@1e70c74)
at ognl.OgnlRuntime.setProperty(OgnlRuntime.java:2239)
at ognl.ASTProperty.setValueBody(ASTProperty.java:127)
at ognl.SimpleNode.evaluateSetValueBody(SimpleNode.java:220)
at ognl.SimpleNode.setValue(SimpleNode.java:301)
at ognl.ASTChain.setValueBody(ASTChain.java:227)
at ognl.SimpleNode.evaluateSetValueBody(SimpleNode.java:220)
at ognl.SimpleNode.setValue(SimpleNode.java:301)
at ognl.Ognl.setValue(Ognl.java:737)
原因:
使用了Struts2的参数拦.截.器ParamsInterceptor,但是Action类里面没有相应属性的访问器方法(set和get方法),
实际只是少了set方法,此例是少了excellentEmployee属性的set方法!!!
解决办法:
在相应的Action类中加上excellentEmployee属性的set和get方法!!!
--------------------------------------------------------------------------------
异常信息:
Struts Problem Report
Struts has detected an unhandled exception:
Messages: could not resolve property: title of: com.byd.dataplatform.model.ActivityPublicize
File: org/hibernate/persister/entity/AbstractPropertyMapping.java
Line number: 81
Stacktraces
org.hibernate.QueryException: could not resolve property: title of: com.byd.dataplatform.model.ActivityPublicize
org.hibernate.persister.entity.AbstractPropertyMapping.propertyException(AbstractPropertyMapping.java:81)
org.hibernate.persister.entity.AbstractPropertyMapping.toType(AbstractPropertyMapping.java:75)
org.hibernate.persister.entity.AbstractEntityPersister.getSubclassPropertyTableNumber(AbstractEntityPersister.java:1468)
org.hibernate.persister.entity.BasicEntityPropertyMapping.toColumns(BasicEntityPropertyMapping.java:62)
org.hibernate.persister.entity.AbstractEntityPersister.toColumns(AbstractEntityPersister.java:1443)
org.hibernate.loader.criteria.CriteriaQueryTranslator.getColumns(CriteriaQueryTranslator.java:483)
org.hibernate.loader.criteria.CriteriaQueryTranslator.getColumnsUsingProjection(CriteriaQueryTranslator.java:443)
org.hibernate.criterion.SimpleExpression.toSqlString(SimpleExpression.java:68)
org.hibernate.loader.criteria.CriteriaQueryTranslator.getWhereCondition(CriteriaQueryTranslator.java:380)
org.hibernate.loader.criteria.CriteriaJoinWalker.(CriteriaJoinWalker.java:103)
org.hibernate.loader.criteria.CriteriaJoinWalker.(CriteriaJoinWalker.java:83)
org.hibernate.loader.criteria.CriteriaLoader.(CriteriaLoader.java:92)
org.hibernate.impl.SessionImpl.list(SessionImpl.java:1687)
org.hibernate.impl.CriteriaImpl.list(CriteriaImpl.java:347)
org.hibernate.impl.CriteriaImpl.uniqueResult(CriteriaImpl.java:369)
org.springside.modules.orm.hibernate.HibernateDao.countCriteriaResult(HibernateDao.java:260)
org.springside.modules.orm.hibernate.HibernateDao.findPage(HibernateDao.java:146)
org.springside.modules.orm.hibernate.HibernateDao.findPage(HibernateDao.java:306)
com.byd.dataplatform.service.impl.ActivityPublicizeServiceImpl.searchActivityPublicize(ActivityPublicizeServiceImpl.java:47)
com.byd.dataplatform.service.impl.ActivityPublicizeServiceImpl$$FastClassByCGLIB$$cb87df2b.invoke()
net.sf.cglib.proxy.MethodProxy.invoke(MethodProxy.java:191)
org.springframework.aop.framework.Cglib2AopProxy$CglibMethodInvocation.invokeJoinpoint(Cglib2AopProxy.java:688)
org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:150)
org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:110)
org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
org.springframework.aop.framework.Cglib2AopProxy$DynamicAdvisedInterceptor.intercept(Cglib2AopProxy.java:621)
com.byd.dataplatform.service.impl.ActivityPublicizeServiceImpl$$EnhancerByCGLIB$$a0e97874.searchActivityPublicize()
com.byd.dataplatform.web.action.activity_publicize.ActivityPublicizeAction.list(ActivityPublicizeAction.java:75)
com.byd.dataplatform.web.action.CrudActionSupport.execute(CrudActionSupport.java:33)
sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
java.lang.reflect.Method.invoke(Method.java:597)
原因:
是JSP页面上的form表单中使用到了一个在model层的POJO类(com.byd.dataplatform.model.ActivityPublicize)中
没有的一个属性title,所以通过反射调用title的访问器方法时导致异常!!!
解决办法:
将JSP页面使用到的属性名称改为与model层的具体POJO类的属性名称一致。此列即将JSP页面的title属性改为
ActivityPublicize类中的正确属性即可!
--------------------------------------------------------------------------------
异常信息:
JSP页面有几个查询条件输入框,当输入中文后,点击搜索后,在后台获取的中文全部变成乱码!!!
已知在web.xml中使用了如下字符编码过滤器配置,
springSecurityFilterChain
org.springframework.web.filter.DelegatingFilterProxy
springSecurityFilterChain
/*
JSP页面也使用了如下头部,
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
只是在JSP页面的form表单中使用了method="get"这种提交方式。
原因:
开始以为是form表单提交方式get的原因,后来查看SpringSide的mini-web示例的相关源码,
发现它用get这种表单提交方式就没有出现过乱码,所以目前原因还在查找当中--!
解决办法:
将JSP的form表单的提交方式改为post后,乱码问题解决!!!
--------------------------------------------------------------------------------
异常信息:
Struts Problem Report
Struts has detected an unhandled exception:
Messages: Page Size must larger than zero
File: org/springframework/util/Assert.java
Line number: 65
Stacktraces
java.lang.IllegalArgumentException: Page Size must larger than zero
org.springframework.util.Assert.isTrue(Assert.java:65)
org.springside.modules.orm.hibernate.HibernateDao.setPageParameterToCriteria(HibernateDao.java:175)
org.springside.modules.orm.hibernate.HibernateDao.findPage(HibernateDao.java:150)
org.springside.modules.orm.hibernate.HibernateDao.findPage(HibernateDao.java:306)
com.byd.dataplatform.service.impl.DataModelServiceImpl.searchDataModel(DataModelServiceImpl.java:88)
com.byd.dataplatform.service.impl.DataModelServiceImpl$$FastClassByCGLIB$$fe0bb7a8.invoke()
net.sf.cglib.proxy.MethodProxy.invoke(MethodProxy.java:191)
org.springframework.aop.framework.Cglib2AopProxy$CglibMethodInvocation.invokeJoinpoint(Cglib2AopProxy.java:688)
org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:150)
org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:110)
org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
org.springframework.aop.framework.Cglib2AopProxy$DynamicAdvisedInterceptor.intercept(Cglib2AopProxy.java:621)
com.byd.dataplatform.service.impl.DataModelServiceImpl$$EnhancerByCGLIB$$59ad3b19.searchDataModel()
com.byd.dataplatform.web.action.data_model.DataModelAction.list(DataModelAction.java:83)
com.byd.dataplatform.web.action.CrudActionSupport.execute(CrudActionSupport.java:33)
sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
java.lang.reflect.Method.invoke(Method.java:597)
com.opensymphony.xwork2.DefaultActionInvocation.invokeAction(DefaultActionInvocation.java:452)
com.opensymphony.xwork2.DefaultActionInvocation.invokeActionOnly(DefaultActionInvocation.java:291)
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:254)
com.opensymphony.xwork2.interceptor.DefaultWorkflowInterceptor.doIntercept(DefaultWorkflowInterceptor.java:176)
com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98)
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)
com.opensymphony.xwork2.validator.ValidationInterceptor.doIntercept(ValidationInterceptor.java:263)
org.apache.struts2.interceptor.validation.AnnotationValidationInterceptor.doIntercept(AnnotationValidationInterceptor.java:68)
com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98)
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)
com.opensymphony.xwork2.interceptor.ConversionErrorInterceptor.intercept(ConversionErrorInterceptor.java:133)
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)
com.opensymphony.xwork2.interceptor.ParametersInterceptor.doIntercept(ParametersInterceptor.java:207)
com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98)
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)
com.opensymphony.xwork2.interceptor.ParametersInterceptor.doIntercept(ParametersInterceptor.java:207)
com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98)
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)
com.opensymphony.xwork2.interceptor.StaticParametersInterceptor.intercept(StaticParametersInterceptor.java:190)
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)
org.apache.struts2.interceptor.FileUploadInterceptor.intercept(FileUploadInterceptor.java:243)
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)
com.opensymphony.xwork2.interceptor.ModelDrivenInterceptor.intercept(ModelDrivenInterceptor.java:100)
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)
com.opensymphony.xwork2.interceptor.ChainingInterceptor.intercept(ChainingInterceptor.java:142)
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)
com.opensymphony.xwork2.interceptor.PrepareInterceptor.doIntercept(PrepareInterceptor.java:166)
com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98)
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)
org.apache.struts2.interceptor.ServletConfigInterceptor.intercept(ServletConfigInterceptor.java:164)
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)
com.opensymphony.xwork2.interceptor.ParametersInterceptor.doIntercept(ParametersInterceptor.java:207)
com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98)
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)
org.apache.struts2.interceptor.MultiselectInterceptor.intercept(MultiselectInterceptor.java:75)
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)
org.apache.struts2.interceptor.CheckboxInterceptor.intercept(CheckboxInterceptor.java:94)
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)
com.opensymphony.xwork2.interceptor.I18nInterceptor.intercept(I18nInterceptor.java:176)
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)
com.opensymphony.xwork2.interceptor.AliasInterceptor.intercept(AliasInterceptor.java:190)
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)
com.opensymphony.xwork2.interceptor.ExceptionMappingInterceptor.intercept(ExceptionMappingInterceptor.java:187)
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)
org.apache.struts2.interceptor.MessageStoreInterceptor.intercept(MessageStoreInterceptor.java:204)
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)
org.apache.struts2.impl.StrutsActionProxy.execute(StrutsActionProxy.java:52)
org.apache.struts2.dispatcher.Dispatcher.serviceAction(Dispatcher.java:485)
org.apache.struts2.dispatcher.ng.ExecuteOperations.executeAction(ExecuteOperations.java:77)
org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter.doFilter(StrutsPrepareAndExecuteFilter.java:91)
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:298)
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:857)
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:588)
原因:
页面上需要分页用的page,而Action类中只使用了getRequest().setAttribute("page", page)把
page对象传到页面,但是没有写Action类里的page属性的get方法,因为页面分页的地方使用到了
Struts2的标签
上一页
下一页
,所以页面的test="page.hasPre"是取不到page的!!!
解决办法:
在Action类里加入page属性的get方法!!!
--------------------------------------------------------------------------------
异常信息:
在提交表单上传文件时,报如下异常信息,
[orm:13:37:10] WARN [http-8080-5] OgnlValueStack.warn(60) | Error setting expression 'accessory' with value '[Ljava.lang.String;@b13f9'
ognl.MethodFailedException: Method "setAccessory" failed for object com.byd.dataplatform.web.action.culture.ManufactureProjectAction@1927daf [java.lang.NoSuchMethodException: com.byd.dataplatform.web.action.culture.ManufactureProjectAction.setAccessory([Ljava.lang.String;)]
Caused by: java.lang.NoSuchMethodException: com.byd.dataplatform.web.action.culture.ManufactureProjectAction.setAccessory([Ljava.lang.String;)
at ognl.OgnlRuntime.callAppropriateMethod(OgnlRuntime.java:1226)
... 49 more
/-- Encapsulated exception ------------\
java.lang.NoSuchMethodException: com.byd.dataplatform.web.action.culture.ManufactureProjectAction.setAccessory([Ljava.lang.String;)
\--------------------------------------/
原因:
因为页面的form表单中没有没有加上enctype="multipart/form-data"导致Action类中取不到
文件表单域的相关值!
解决办法:
在form表单中加上enctype="multipart/form-data"以保证能正常上传文件!!!
--------------------------------------------------------------------------------
异常信息:
当点击了链接http://localhost:8080/DataPlatform/improvecase后,Tomcat服务器进入死循环状态,
程序关键部分源码如下,
//定义URL映射对应/improvecase/improvecase
@Namespace(value = "/improvecase")
//定义名为reload的result重定向到improvecase,其它result则按照convention默认。
@Results({@Result(name = CrudActionSupport.RELOAD, location = "improvecase", type = "redirect")})
@Controller
public class ImprovecaseAction extends CrudActionSupport {
@Autowired
private IImprovecaseService improvecaseService;
private Long id;
private Improvecase improvecase;
private Page page = new Page(15);
private List improvecases;
private List workshops;
// 转发到“提案改善”列表首页
@Action(value = "/improvecase",
results = {@Result(location = "improvecase/improvecase")})
public String index() throws Exception {
logger.debug(getClass().getSimpleName() + ".index method -> start");
logger.debug(getClass().getSimpleName() + ".index method -> end");
return SUCCESS;
}
// 列表
public String list() throws Exception {
logger.debug(getClass().getSimpleName() + ".list method -> start");
// TODO 将 车间/部门 列表放入 列表 页面,供查询时使用
putWorkshops();
List filters = PropertyFilter.buildFromHttpRequest(Struts2Utils.getRequest());
// 设置默认排序方式
if (!page.isOrderBySetted()) {
page.setOrderBy("id");
page.setOrder(Page.ASC);
}
page = improvecaseService.searchImprovecase(page, filters);
// improvecases = improvecaseService.list();
// Struts2Utils.getRequest().setAttribute("improvecases", improvecases);
Struts2Utils.getRequest().setAttribute("pageTitle", "文化模块");
logger.debug(getClass().getSimpleName() + ".list method -> end");
return SUCCESS;
}
// 其它代码省略
}
原因:
应该是index()方法上的注解
@Action(value = "/improvecase",
results = {@Result(location = "improvecase/improvecase")})
中的“location = "improvecase/improvecase"”的原因,因为默认的转发类型是type="dispatcher",
所以当结果是"improvecase/improvecase"时,它会与注解中的“value = "/improvecase"”相匹配,所
以会一直跳转到这个方法里,从而出现死循环!!!
解决办法:
将链接改掉,或者将index()方法中注解部分加上“type="redirect"”,让它不转发,而是重定向,代码修改
成如下样子,
@Action(value = "/improvecase",
results = {@Result(location = "improvecase/improvecase", type="redirect")})
--------------------------------------------------------------------------------
异常信息:
系统环境为:Windows XP SP3简体中文版、eclipse JEE v3.6.1、Tomcat v6.0.29、Spring v3.0.4、Hibernate v3.5.5、Struts2 v2.2.1,
使用到了Struts2的convention插件,即遵循“约定优于配置”的开发方式。在启动Tomcat时报如下错误,
[orm:09:58:36] ERROR [main] Dispatcher.error(38) | Dispatcher initialization failed
Unable to load configuration. - [unknown location]
at com.opensymphony.xwork2.config.ConfigurationManager.getConfiguration(ConfigurationManager.java:69)
at org.apache.struts2.dispatcher.Dispatcher.init_PreloadConfiguration(Dispatcher.java:371)
at org.apache.struts2.dispatcher.Dispatcher.init(Dispatcher.java:415)
at org.apache.struts2.dispatcher.ng.InitOperations.initDispatcher(InitOperations.java:69)
at org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter.init(StrutsPrepareAndExecuteFilter.java:51)
...
Caused by: Unable to find a result type for extension [rhtml] in location attribute [/WEB-INF/content/file_types/list.rhtml]. - [unknown location]
at org.apache.struts2.convention.DefaultResultMapBuilder$ResultInfo.determineType(DefaultResultMapBuilder.java:504)
at org.apache.struts2.convention.DefaultResultMapBuilder$ResultInfo.(DefaultResultMapBuilder.java:467)
at org.apache.struts2.convention.DefaultResultMapBuilder.makeResults(DefaultResultMapBuilder.java:362)
at org.apache.struts2.convention.DefaultResultMapBuilder.createFromResources(DefaultResultMapBuilder.java:268)
at org.apache.struts2.convention.DefaultResultMapBuilder.build(DefaultResultMapBuilder.java:191)
at org.apache.struts2.convention.PackageBasedActionConfigBuilder.createActionConfig(PackageBasedActionConfigBuilder.java:865)
at org.apache.struts2.convention.PackageBasedActionConfigBuilder.buildConfiguration(PackageBasedActionConfigBuilder.java:651)
at org.apache.struts2.convention.PackageBasedActionConfigBuilder.buildActionConfigs(PackageBasedActionConfigBuilder.java:336)
at org.apache.struts2.convention.ClasspathPackageProvider.loadPackages(ClasspathPackageProvider.java:53)
at com.opensymphony.xwork2.config.impl.DefaultConfiguration.reloadContainer(DefaultConfiguration.java:215)
at com.opensymphony.xwork2.config.ConfigurationManager.getConfiguration(ConfigurationManager.java:66)
... 31 more
2010-11-2 9:58:36 org.apache.catalina.core.StandardContext filterStart
严重: Exception starting filter struts2Filter
Unable to load configuration. - [unknown location]
at org.apache.struts2.dispatcher.Dispatcher.init(Dispatcher.java:428)
at org.apache.struts2.dispatcher.ng.InitOperations.initDispatcher(InitOperations.java:69)
at org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter.init(StrutsPrepareAndExecuteFilter.java:51)
...
Caused by: Unable to load configuration. - [unknown location]
at com.opensymphony.xwork2.config.ConfigurationManager.getConfiguration(ConfigurationManager.java:69)
at org.apache.struts2.dispatcher.Dispatcher.init_PreloadConfiguration(Dispatcher.java:371)
at org.apache.struts2.dispatcher.Dispatcher.init(Dispatcher.java:415)
... 29 more
Caused by: Unable to find a result type for extension [rhtml] in location attribute [/WEB-INF/content/file_types/list.rhtml]. - [unknown location]
at org.apache.struts2.convention.DefaultResultMapBuilder$ResultInfo.determineType(DefaultResultMapBuilder.java:504)
at org.apache.struts2.convention.DefaultResultMapBuilder$ResultInfo.(DefaultResultMapBuilder.java:467)
at org.apache.struts2.convention.DefaultResultMapBuilder.makeResults(DefaultResultMapBuilder.java:362)
at org.apache.struts2.convention.DefaultResultMapBuilder.createFromResources(DefaultResultMapBuilder.java:268)
at org.apache.struts2.convention.DefaultResultMapBuilder.build(DefaultResultMapBuilder.java:191)
at org.apache.struts2.convention.PackageBasedActionConfigBuilder.createActionConfig(PackageBasedActionConfigBuilder.java:865)
at org.apache.struts2.convention.PackageBasedActionConfigBuilder.buildConfiguration(PackageBasedActionConfigBuilder.java:651)
at org.apache.struts2.convention.PackageBasedActionConfigBuilder.buildActionConfigs(PackageBasedActionConfigBuilder.java:336)
at org.apache.struts2.convention.ClasspathPackageProvider.loadPackages(ClasspathPackageProvider.java:53)
at com.opensymphony.xwork2.config.impl.DefaultConfiguration.reloadContainer(DefaultConfiguration.java:215)
at com.opensymphony.xwork2.config.ConfigurationManager.getConfiguration(ConfigurationManager.java:66)
... 31 more
原因:
因为使用了Struts2的convention插件的“约定”,其默认的查找的JSP页面目录是WEB-INF\content,所以
在Tomcat启动时,Struts2的convention插件根据“约定”到content目录下查找各个文件,如果它发现某个
文件的名称与某个action类中的某个方法同名,但是这个文件的扩展名不属于已配置的或约定的扩展名,
则会报以上错误,即找不到该扩展名的文件对应在跳转结果类型。
解决办法:
将扩展名改正,或者重新配置,或者将此扩展名对应的文件删除掉!!!
--------------------------------------------------------------------------------
异常信息:
在eclipse_JEE中通过m2eclipse插件使用jetty:run参数来启动maven build,出现如下异常,
2010-11-13 09:20:53.000:WARN::Failed startup of context org.mortbay.jetty.plugin.Jetty6PluginWebAppContext@21447f{/data_platform,E:\workshop\eclipse_jee\data_platform\src\main\webapp}
java.lang.ClassNotFoundException: com.opensymphony.sitemesh.webapp.SiteMeshFilter
......
系统环境:
Windows XP SP3 简体中文版、eclipse_JEE v3.6.1、maven2.2.1、m2eclipse v0.1.0、Spring3.0.5、Hibernate3.3.2GA、Strtus2.2.1、
原因:
找不到com.opensymphony.sitemesh.webapp.SiteMeshFilter类,查看pom.xml和build path中的依赖,
发现缺少sitemesh的包。
解决办法:
在项目的maven管理配置文件pom.xml中加入sitemesh的包依赖!
--------------------------------------------------------------------------------
异常信息:
Struts Problem Report
Struts has detected an unhandled exception:
Messages: java.lang.Integer cannot be cast to java.lang.Long
File: org/springside/modules/orm/hibernate/HibernateDao.java
Line number: 260
Stacktraces
java.lang.ClassCastException: java.lang.Integer cannot be cast to java.lang.Long
org.springside.modules.orm.hibernate.HibernateDao.countCriteriaResult(HibernateDao.java:260)
org.springside.modules.orm.hibernate.HibernateDao.findPage(HibernateDao.java:146)
org.springside.modules.orm.hibernate.HibernateDao.findPage(HibernateDao.java:306)
com.byd.dataplatform.service.impl.ActivityPublicizeServiceImpl.searchActivityPublicize(ActivityPublicizeServiceImpl.java:47)
com.byd.dataplatform.service.impl.ActivityPublicizeServiceImpl$$FastClassByCGLIB$$cb87df2b.invoke()
net.sf.cglib.proxy.MethodProxy.invoke(MethodProxy.java:191)
org.springframework.aop.framework.Cglib2AopProxy$CglibMethodInvocation.invokeJoinpoint(Cglib2AopProxy.java:688)
org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:150)
org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:110)
org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
org.springframework.aop.framework.Cglib2AopProxy$DynamicAdvisedInterceptor.intercept(Cglib2AopProxy.java:621)
com.byd.dataplatform.service.impl.ActivityPublicizeServiceImpl$$EnhancerByCGLIB$$da357f5b.searchActivityPublicize()
com.byd.dataplatform.web.action.culture.ActivityPublicizeAction.list(ActivityPublicizeAction.java:73)
com.byd.dataplatform.web.action.CrudActionSupport.execute(CrudActionSupport.java:35)
系统环境:
Windows XP SP3 简体中文版、eclipse_JEE v3.6.1、maven2.2.1、m2eclipse v0.1.0、Spring3.0.5、Hibernate3.3.2GA、Strtus2.2.1、
原因:
初步估计应该是hibernate版本问题,因为原先可以运行时用的是3.5.3版本的,现在
换成3.3.2版本后出现此问题!
Hibernate3.5.x中内部可以将Integer类型的数据转换成Long,但在Hibernate3.3.2中是不行的,因此报以上错误!
解决办法:
更换hibernate版本为3.5.3及以上版本!
--------------------------------------------------------------------------------
No bean named 'springSecurityFilterChain' is defined 解决方法
异常信息:
Exception starting filter springSecurityFilterChain
org.springframework.beans.factory.NoSuchBeanDefinitionException: No bean named 'springSecurityFilterChain' is defined
at org.springframework.beans.factory.support.DefaultListableBeanFactory.getBeanDefinition(DefaultListableBeanFactory.java:387)
at org.springframework.beans.factory.support.AbstractBeanFactory.getMergedLocalBeanDefinition(AbstractBeanFactory.java:971)
at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:246)
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:185)
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:168)
at org.springframework.context.support.AbstractApplicationContext.getBean(AbstractApplicationContext.java:884)
at org.springframework.web.filter.DelegatingFilterProxy.initDelegate(DelegatingFilterProxy.java:216)
at org.springframework.web.filter.DelegatingFilterProxy.initFilterBean(DelegatingFilterProxy.java:145)
at org.springframework.web.filter.GenericFilterBean.init(GenericFilterBean.java:179)
最近在配置Spring Security 3.0的时候,遇到了这个问题
'springSecurityFilterChain' 是默认配置在web.xml中的filter:
springSecurityFilterChain
org.springframework.web.filter.DelegatingFilterProxy
springSecurityFilterChain
/*
在tomcat(6.0)启动时就报了上述错误。
原因:
Web服务器启动时,会启动在web.xml中定义的springSecurityFilterChain
这个filter,而此filter启动前必须先根据SpringSecurity3的配置文件
application-security.xml,由于该配置文件没找到,所以报以上错误!!!
解决办法:
修改了context-param的启动路径,原路径是:
contextConfigLocation
classpath*:applicationContext.xml
修改后的路径:
contextConfigLocation
classpath*:applicationContext*.xml
启动就正常了
--------------------------------------------------------------------------------
异常信息:
2010-11-24 08:52:10.796:WARN::/info_platform/j_spring_security_check
org.hibernate.QueryException: could not resolve property: loginName of: com.byd.info_platform.model.User
at org.hibernate.persister.entity.AbstractPropertyMapping.propertyException(AbstractPropertyMapping.java:81)
at org.hibernate.persister.entity.AbstractPropertyMapping.toType(AbstractPropertyMapping.java:75)
at org.hibernate.persister.entity.AbstractEntityPersister.getSubclassPropertyTableNumber(AbstractEntityPersister.java:1468)
at org.hibernate.persister.entity.BasicEntityPropertyMapping.toColumns(BasicEntityPropertyMapping.java:62)
at org.hibernate.persister.entity.AbstractEntityPersister.toColumns(AbstractEntityPersister.java:1443)
at org.hibernate.loader.criteria.CriteriaQueryTranslator.getColumns(CriteriaQueryTranslator.java:483)
at org.hibernate.loader.criteria.CriteriaQueryTranslator.getColumnsUsingProjection(CriteriaQueryTranslator.java:443)
at org.hibernate.criterion.SimpleExpression.toSqlString(SimpleExpression.java:68)
at org.hibernate.loader.criteria.CriteriaQueryTranslator.getWhereCondition(CriteriaQueryTranslator.java:380)
at org.hibernate.loader.criteria.CriteriaJoinWalker.(CriteriaJoinWalker.java:114)
at org.hibernate.loader.criteria.CriteriaJoinWalker.(CriteriaJoinWalker.java:83)
at org.hibernate.loader.criteria.CriteriaLoader.(CriteriaLoader.java:92)
at org.hibernate.impl.SessionImpl.list(SessionImpl.java:1687)
at org.hibernate.impl.CriteriaImpl.list(CriteriaImpl.java:347)
at org.hibernate.impl.CriteriaImpl.uniqueResult(CriteriaImpl.java:369)
at org.springside.modules.orm.hibernate.SimpleHibernateDao.findUniqueBy(SimpleHibernateDao.java:178)
at com.byd.info_platform.service.account.AccountManager.findUserByLoginName(AccountManager.java:77)
at com.byd.info_platform.service.account.AccountManager$$FastClassByCGLIB$$46307a92.invoke()
at net.sf.cglib.proxy.MethodProxy.invoke(MethodProxy.java:191)
at org.springframework.aop.framework.Cglib2AopProxy$CglibMethodInvocation.invokeJoinpoint(Cglib2AopProxy.java:688)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:150)
at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:110)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
at org.springframework.aop.framework.Cglib2AopProxy$DynamicAdvisedInterceptor.intercept(Cglib2AopProxy.java:621)
at com.byd.info_platform.service.account.AccountManager$$EnhancerByCGLIB$$6739196e.findUserByLoginName()
at com.byd.info_platform.service.account.UserDetailsServiceImpl.loadUserByUsername(UserDetailsServiceImpl.java:34)
at com.byd.info_platform.service.account.UserDetailsServiceImpl$$FastClassByCGLIB$$b30485d0.invoke()
at net.sf.cglib.proxy.MethodProxy.invoke(MethodProxy.java:191)
at org.springframework.aop.framework.Cglib2AopProxy$CglibMethodInvocation.invokeJoinpoint(Cglib2AopProxy.java:688)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:150)
at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:110)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
at org.springframework.aop.framework.Cglib2AopProxy$DynamicAdvisedInterceptor.intercept(Cglib2AopProxy.java:621)
at com.byd.info_platform.service.account.UserDetailsServiceImpl$$EnhancerByCGLIB$$6fa84a38.loadUserByUsername()
at org.springframework.security.authentication.dao.DaoAuthenticationProvider.retrieveUser(DaoAuthenticationProvider.java:86)
at org.springframework.security.authentication.dao.AbstractUserDetailsAuthenticationProvider.authenticate(AbstractUserDetailsAuthenticationProvider.java:129)
at org.springframework.security.authentication.ProviderManager.doAuthentication(ProviderManager.java:130)
at org.springframework.security.authentication.AbstractAuthenticationManager.authenticate(AbstractAuthenticationManager.java:48)
at org.springframework.security.authentication.ProviderManager.doAuthentication(ProviderManager.java:148)
at org.springframework.security.authentication.AbstractAuthenticationManager.authenticate(AbstractAuthenticationManager.java:48)
at org.springframework.security.web.authentication.UsernamePasswordAuthenticationFilter.attemptAuthentication(UsernamePasswordAuthenticationFilter.java:97)
at org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.doFilter(AbstractAuthenticationProcessingFilter.java:199)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:378)
at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:105)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:378)
at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:79)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:378)
at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:167)
at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:237)
at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:167)
at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
at org.springframework.orm.hibernate3.support.OpenSessionInViewFilter.doFilterInternal(OpenSessionInViewFilter.java:198)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76)
at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:88)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76)
[orm:08:52:10] ERROR [4239204@qtp-31199663-2] jsp._jspService(64) | could not resolve property: loginName of: com.byd.info_platform.model.User
org.hibernate.QueryException: could not resolve property: loginName of: com.byd.info_platform.model.User
at org.hibernate.persister.entity.AbstractPropertyMapping.propertyException(AbstractPropertyMapping.java:81)
at org.hibernate.persister.entity.AbstractPropertyMapping.toType(AbstractPropertyMapping.java:75)
at org.hibernate.persister.entity.AbstractEntityPersister.getSubclassPropertyTableNumber(AbstractEntityPersister.java:1468)
at org.hibernate.persister.entity.BasicEntityPropertyMapping.toColumns(BasicEntityPropertyMapping.java:62)
at org.hibernate.persister.entity.AbstractEntityPersister.toColumns(AbstractEntityPersister.java:1443)
at org.hibernate.loader.criteria.CriteriaQueryTranslator.getColumns(CriteriaQueryTranslator.java:483)
at org.hibernate.loader.criteria.CriteriaQueryTranslator.getColumnsUsingProjection(CriteriaQueryTranslator.java:443)
at org.hibernate.criterion.SimpleExpression.toSqlString(SimpleExpression.java:68)
at org.hibernate.loader.criteria.CriteriaQueryTranslator.getWhereCondition(CriteriaQueryTranslator.java:380)
at org.hibernate.loader.criteria.CriteriaJoinWalker.(CriteriaJoinWalker.java:114)
at org.hibernate.loader.criteria.CriteriaJoinWalker.(CriteriaJoinWalker.java:83)
at org.hibernate.loader.criteria.CriteriaLoader.(CriteriaLoader.java:92)
at org.hibernate.impl.SessionImpl.list(SessionImpl.java:1687)
at org.hibernate.impl.CriteriaImpl.list(CriteriaImpl.java:347)
at org.hibernate.impl.CriteriaImpl.uniqueResult(CriteriaImpl.java:369)
at org.springside.modules.orm.hibernate.SimpleHibernateDao.findUniqueBy(SimpleHibernateDao.java:178)
at com.byd.info_platform.service.account.AccountManager.findUserByLoginName(AccountManager.java:77)
at com.byd.info_platform.service.account.AccountManager$$FastClassByCGLIB$$46307a92.invoke()
at net.sf.cglib.proxy.MethodProxy.invoke(MethodProxy.java:191)
at org.springframework.aop.framework.Cglib2AopProxy$CglibMethodInvocation.invokeJoinpoint(Cglib2AopProxy.java:688)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:150)
at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:110)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
at org.springframework.aop.framework.Cglib2AopProxy$DynamicAdvisedInterceptor.intercept(Cglib2AopProxy.java:621)
at com.byd.info_platform.service.account.AccountManager$$EnhancerByCGLIB$$6739196e.findUserByLoginName()
at com.byd.info_platform.service.account.UserDetailsServiceImpl.loadUserByUsername(UserDetailsServiceImpl.java:34)
at com.byd.info_platform.service.account.UserDetailsServiceImpl$$FastClassByCGLIB$$b30485d0.invoke()
at net.sf.cglib.proxy.MethodProxy.invoke(MethodProxy.java:191)
at org.springframework.aop.framework.Cglib2AopProxy$CglibMethodInvocation.invokeJoinpoint(Cglib2AopProxy.java:688)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:150)
at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:110)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
at org.springframework.aop.framework.Cglib2AopProxy$DynamicAdvisedInterceptor.intercept(Cglib2AopProxy.java:621)
at com.byd.info_platform.service.account.UserDetailsServiceImpl$$EnhancerByCGLIB$$6fa84a38.loadUserByUsername()
at org.springframework.security.authentication.dao.DaoAuthenticationProvider.retrieveUser(DaoAuthenticationProvider.java:86)
at org.springframework.security.authentication.dao.AbstractUserDetailsAuthenticationProvider.authenticate(AbstractUserDetailsAuthenticationProvider.java:129)