Hibernate - связь «многие-к-одному», не удалось загрузить объект - PullRequest
0 голосов
/ 22 мая 2018

Итак, у меня есть две таблицы в моей базе данных, и я пытаюсь добавить несколько новых столбцов в одну из них.Столбцы - это просто дата или строки.Но когда я добавил их в конфигурационные файлы HBM, во время развертывания я получил ошибку.Проблема в том, что когда я удаляю новые свойства, все работает нормально.Я действительно не знаю, что еще я могу рассказать вам об этом.Вот файлы HBM и журнал ошибок.

Таблица 1:

<class name="Pracownik" table="PRACOWNICY">

<!-- EXISTING PROPERTIES -->

    <property name="utworzony" column="UTWORZONY" type="timestamp" not-null="true" />
    <many-to-one name="utworzonePrzez" 
                 outer-join="true" 
                 cascade="none"
                 class="pl.edu.Uzytkownik"
                 foreign-key="FK_WYDZIELENIE_UTWPRZEZ" lazy="false"  >
          <column name="UTWORZONE_PRZEZ" not-null="false"/>
    </many-to-one>

     <property name="modyfikowany" column="MODYFIKOWANY" type="timestamp" not-null="true" /> 
    <many-to-one name="zmodyfikowanePrzez" 
                 outer-join="true" 
                 cascade="none"
                 class="pl.edu.Uzytkownik"
                 foreign-key="FK_WYDZIELENIE_ZMODPRZEZ" lazy="false" >
            <column name="ZMODYFIKOWANE_PRZEZ" not-null="false"/>
    </many-to-one>

    <!-- NEW COLUMN -->
    <property name="someDate" column="JAKAS_DATA" type="timestamp" not-null="false" />
</class>

Таблица 2:

<class name="Uzytkownik" table="UZYTKOWNICY">

    <!-- EXISTING PROPERTIES -->

    <many-to-one 
        name="pracownicy" 
        column="PRACOWNIK_ID" 
        class="pl.xyz.Pracownik"  
        not-null="true" outer-join="true" lazy="false" />
</class>

Ошибка:

[HTTP:101216]Servlet: "action" failed to preload on startup in Web application: "/APP". javax.servlet.ServletException: could not load an entity: [pl.edu.Uzytkownik#12668473] at 
 pl.pi.zszmpa.web.CustomActionServlet.init(CustomActionServlet.java:232) at 
 javax.servlet.GenericServlet.init(GenericServlet.java:241) at 
 weblogic.servlet.internal.StubSecurityHelper$ServletInitAction.run(StubSecurityHelper.java:283) at 
 weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321) at 
 weblogic.security.service.SecurityManager.runAs(SecurityManager.java:121) at 
 weblogic.servlet.internal.StubSecurityHelper.createServlet(StubSecurityHelper.java:64) at 
 weblogic.servlet.internal.StubLifecycleHelper.createOneInstance(StubLifecycleHelper.java:58) at 
 weblogic.servlet.internal.StubLifecycleHelper.<init>(StubLifecycleHelper.java:48) at 
 weblogic.servlet.internal.ServletStubImpl.prepareServlet(ServletStubImpl.java:539) at 
 weblogic.servlet.internal.WebAppServletContext.preloadServlet(WebAppServletContext.java:1976) at 
 weblogic.servlet.internal.WebAppServletContext.loadServletsOnStartup(WebAppServletContext.java:1950) at 
 weblogic.servlet.internal.WebAppServletContext.preloadResources(WebAppServletContext.java:1869) at 
 weblogic.servlet.internal.WebAppServletContext.start(WebAppServletContext.java:3127) at 
 weblogic.servlet.internal.WebAppModule.startContexts(WebAppModule.java:1512) at 
 weblogic.servlet.internal.WebAppModule.start(WebAppModule.java:486) at 
 weblogic.application.internal.flow.ModuleStateDriver$3.next(ModuleStateDriver.java:427) at 
 weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:43) at 
 weblogic.application.internal.flow.ModuleStateDriver.start(ModuleStateDriver.java:119) at 
 weblogic.application.internal.flow.ScopedModuleDriver.start(ScopedModuleDriver.java:201) at 
 weblogic.application.internal.flow.ModuleListenerInvoker.start(ModuleListenerInvoker.java:249) at 
 weblogic.application.internal.flow.ModuleStateDriver$3.next(ModuleStateDriver.java:427) at 
 weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:43) at 
 weblogic.application.internal.flow.ModuleStateDriver.start(ModuleStateDriver.java:119) at 
 weblogic.application.internal.flow.StartModulesFlow.activate(StartModulesFlow.java:28) at 
 weblogic.application.internal.BaseDeployment$2.next(BaseDeployment.java:1269) at 
 weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:43) at 
 weblogic.application.internal.BaseDeployment.activate(BaseDeployment.java:409) at 
 weblogic.application.internal.EarDeployment.activate(EarDeployment.java:58) at 
 weblogic.application.internal.DeploymentStateChecker.activate(DeploymentStateChecker.java:161) at 
 weblogic.deploy.internal.targetserver.AppContainerInvoker.activate(AppContainerInvoker.java:79) at 
 weblogic.deploy.internal.targetserver.operations.AbstractOperation.activate(AbstractOperation.java:569) at 
 weblogic.deploy.internal.targetserver.operations.ActivateOperation.activateDeployment(ActivateOperation.java:150) at 
 weblogic.deploy.internal.targetserver.operations.ActivateOperation.doCommit(ActivateOperation.java:116) at 
 weblogic.deploy.internal.targetserver.operations.AbstractOperation.commit(AbstractOperation.java:323) at 
 weblogic.deploy.internal.targetserver.DeploymentManager.handleDeploymentCommit(DeploymentManager.java:844) at 
 weblogic.deploy.internal.targetserver.DeploymentManager.activateDeploymentList(DeploymentManager.java:1253) at 
 weblogic.deploy.internal.targetserver.DeploymentManager.handleCommit(DeploymentManager.java:440) at 
 weblogic.deploy.internal.targetserver.DeploymentServiceDispatcher.commit(DeploymentServiceDispatcher.java:164) at 
 weblogic.deploy.service.internal.targetserver.DeploymentReceiverCallbackDeliverer.doCommitCallback(DeploymentReceiverCallbackDeliverer.java:195) at 
 weblogic.deploy.service.internal.targetserver.DeploymentReceiverCallbackDeliverer.access$100(DeploymentReceiverCallbackDeliverer.java:13) at 
 weblogic.deploy.service.internal.targetserver.DeploymentReceiverCallbackDeliverer$2.run(DeploymentReceiverCallbackDeliverer.java:69) at 
 weblogic.work.SelfTuningWorkManagerImpl$WorkAdapterImpl.run(SelfTuningWorkManagerImpl.java:528) at 
 weblogic.work.ExecuteThread.execute(ExecuteThread.java:201) at 
 weblogic.work.ExecuteThread.run(ExecuteThread.java:173)
...