Tomasz
Faszyński
Specjalista ds.
programowania
Temat: Spring + hibernate - problem z aplikacją
Mam pewien problem.Gdy startuje mi serwer otrzymuję w logach:
19:25:47,355 ERROR [pool-2-thread-1][MainServlet:347] org.postgresql.util.PSQLException: BŁĄD: relacja "company" nie istnieje
Pozycja: 23
org.postgresql.util.PSQLException: BŁĄD: relacja "company" nie istnieje
Pozycja: 23
at org.postgresql.core.v3.QueryExecutorImpl.receiveErrorResponse(QueryExecutorImpl.java:2103)
W swojej aplikacji mam ustawione, aby hibernate tworzył w bazę w postgresql (drop-create)
Jak próbuję zbudować aplikację to za pierwszym razem otrzymuję:
20:34:29,768 INFO [DispatcherPortlet:282] FrameworkPortlet 'Model': initialization completed in 9458 ms
20:34:29,768 INFO [DispatcherPortlet:119] Portlet 'Model' configured successfully
20:34:29,794 ERROR [pool-2-thread-19][HotDeployImpl:191] com.liferay.portal.kernel.deploy.hot.HotDeployException: Error registering portlets for Model-portlet
com.liferay.portal.kernel.deploy.hot.HotDeployException: Error registering portlets for Model-portlet
.....
Caused by: com.liferay.portal.NoSuchRoleException: No Role exists with the key {companyId=0, name=Administrator}
at com.liferay.portal.service.persistence.RolePersistenceImpl.findByC_N(RolePersistenceImpl.java:2879)
Jednak tworzy w bazie wszystkie tabele.
Company:
@Entity(name = "company")
@Table(name = "COMPANY")
public class Company {
@Id
@Column(name="ROW_ID")
private String rowId;
@OneToOne(fetch = FetchType.LAZY)
@PrimaryKeyJoinColumn(name = "ROW_ID")
private Party party;
Party:
@Entity(name="party")
@Table(name="PARTY")
public class Party {
@OneToOne(fetch = FetchType.LAZY, mappedBy = "party")
private Company company;
Gdy próbuję drugi raz zbudować aplikację to otrzymuję błąd:
2012-09-18 20:44:33 org.apache.catalina.loader.WebappClassLoader loadClass
INFO: Illegal access: this web application instance has been stopped already. Could not load org.springframework.orm.jpa.EntityManagerFactoryUtils. The eventual following stack trace is caused by an error thrown for debugging purposes as well as to attempt to terminate the thread which caused the illegal access, and has no functional impact.
java.lang.IllegalStateException
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1597)
...
20:44:33,559 ERROR [pool-2-thread-2][HotDeployImpl:191] com.liferay.portal.kernel.deploy.hot.HotDeployException: Error registering portlets for Model-portlet
com.liferay.portal.kernel.deploy.hot.HotDeployException: Error registering portlets for Model-portlet
I tak na zmianę, raz dział w części a raz w ogóle?
Co w ogóle może być przyczyną?