Olá pessoal,
Estou há varios dias tentando a solução para meu problema e gostaria da ajuda de todos vocês.
Tenho estudado java pelo livro Java para a web e estou no capítulo 6, aplicando segurança ao sistema (Spring Security) e me deu com um erro no console do Tomcat.
Erro do console Tomcat:
Fev 20, 2013 11:26:49 AM org.apache.catalina.core.StandardContext filterStart
Grave: Exception starting filter conexaoFilter
java.lang.ExceptionInInitializerError
at financeiro.util.HibernateUtil.buildSessionFactory(HibernateUtil.java:20)
at financeiro.util.HibernateUtil.<clinit>(HibernateUtil.java:8)
at financeiro.web.filter.ConexaoHibernateFilter.init(ConexaoHibernateFilter.java:17)
at org.apache.catalina.core.ApplicationFilterConfig.initFilter(ApplicationFilterConfig.java:277)
at org.apache.catalina.core.ApplicationFilterConfig.getFilter(ApplicationFilterConfig.java:258)
at org.apache.catalina.core.ApplicationFilterConfig.setFilterDef(ApplicationFilterConfig.java:382)
at org.apache.catalina.core.ApplicationFilterConfig.<init>(ApplicationFilterConfig.java:103)
at org.apache.catalina.core.StandardContext.filterStart(StandardContext.java:4638)
at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5294)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1566)
at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1556)
at java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source)
at java.util.concurrent.FutureTask.run(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
Caused by: org.hibernate.MappingException: Could not determine type for: java.util.Set, at table: Usuario, for columns: [org.hibernate.mapping.Column(permissao)]
at org.hibernate.mapping.SimpleValue.getType(SimpleValue.java:292)
at org.hibernate.mapping.SimpleValue.isValid(SimpleValue.java:276)
at org.hibernate.mapping.Property.isValid(Property.java:207)
at org.hibernate.mapping.PersistentClass.validate(PersistentClass.java:458)
at org.hibernate.mapping.RootClass.validate(RootClass.java:215)
at org.hibernate.cfg.Configuration.validate(Configuration.java:1135)
at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1320)
at org.hibernate.cfg.AnnotationConfiguration.buildSessionFactory(AnnotationConfiguration.java:867)
at financeiro.util.HibernateUtil.buildSessionFactory(HibernateUtil.java:15)
... 16 more
A tabela usuario_permissao deveria ter sido criada no banco mas ele não determina tipo da coluna permissao.
Parte do código da classe Usuario.java:
@ElementCollection(targetClass = String.class)
@JoinTable(
name = "usuario_permissao",
uniqueConstraints = {@UniqueConstraint(columnNames = {"usuario","permissao"})},
joinColumns = @JoinColumn(name = "usuario"))
@Column(name = "permissao",length=50)
private Set<String> permissao = new HashSet<String>();
Pensei muito sobre as libs também
Segue as libs:
[list]
antlr-2.7.7.jar
aopalliance-1.0.jar
commons-beanutils-1.8.3.jar
commons-collections-3.2.1.jar
commons-digester3-3.2.jar
commons-logging-1.1.1.jar
dom4j-1.6.1.jar
ehcache-1.6.2.jar
el-api-2.2.jar
el-impl-2.2.jar
facelets-taglib-jsf20-spring-3-0.5.jar
hibernate-annotations.jar
hibernate-commons-annotations.jar
hibernate-core.jar
hsqldb-1.8.0.10.jar
javassist-3.15.0-GA.jar
javax.servlet.jsp.jstl-1.2.1.jar
javax.servlet.jsp.jstl-api-1.2.1.jar
jboss-logging-3.1.0.GA.jar
jboss-transaction-api_1.1_spec-1.0.0.Final.jar
jcl-over-slf4j-1.6.1.jar
jsf-api.jar
jsf-impl.jar
jstl.jar
jstl-1.2.jar
logback-classic-0.9.29.jar
logback-core-0.9.29.jar
mysql-connector-java-5.1.22-bin.jar
slf4j-api-1.6.1.jar
slf4j-simple-1.6.0.jar
spring-aop-3.0.7.RELEASE.jar
spring-asm-3.0.7.RELEASE.jar
spring-beans-3.0.7.RELEASE.jar
spring-context-3.0.7.RELEASE.jar
spring-context-support-3.0.7.RELEASE.jar
spring-core-3.0.7.RELEASE.jar
spring-expression-3.0.7.RELEASE.jar
spring-jdbc-3.0.7.RELEASE.jar
spring-security-acl-3.0.8.RELEASE.jar
spring-security-config-3.0.8.RELEASE.jar
spring-security-core-3.0.8.RELEASE.jar
spring-security-taglibs-3.0.8.RELEASE.jar
spring-security-web-3.0.8.RELEASE.jar
spring-tx-3.0.7.RELEASE.jar
spring-web-3.0.7.RELEASE.jar
spring-webmvc-3.0.7.RELEASE.jar
taglib-core-0.4.jar
[/list]
Pessoal gostaria muito mesmo de passar por este capítulo e ir em frente.
Quem puder ajudar meu muito obrigado.