Skip to content
Snippets Groups Projects
Commit c40aa7b3 authored by buczekp's avatar buczekp
Browse files

[LMS-1453] improved workaround

SVN: 15247
parent fa21dacf
No related branches found
No related tags found
No related merge requests found
...@@ -657,6 +657,8 @@ public class ExternalDataBO extends AbstractExternalDataBusinessObject implement ...@@ -657,6 +657,8 @@ public class ExternalDataBO extends AbstractExternalDataBusinessObject implement
public void updateStatus(String dataSetCode, DataSetArchivizationStatus newStatus) public void updateStatus(String dataSetCode, DataSetArchivizationStatus newStatus)
{ {
// WORKAROUND: clearing session solved StaleObjectStateException problem
getExternalDataDAO().clearSession();
loadByCode(dataSetCode, false, true); loadByCode(dataSetCode, false, true);
externalData.setStatus(newStatus); externalData.setStatus(newStatus);
validateAndSave(); validateAndSave();
......
...@@ -84,4 +84,6 @@ public interface IGenericDAO<T extends IIdHolder> ...@@ -84,4 +84,6 @@ public interface IGenericDAO<T extends IIdHolder>
*/ */
public List<T> listAllEntities() throws DataAccessException; public List<T> listAllEntities() throws DataAccessException;
public void clearSession();
} }
...@@ -161,4 +161,10 @@ public abstract class AbstractGenericEntityDAO<T extends IIdHolder> extends Abst ...@@ -161,4 +161,10 @@ public abstract class AbstractGenericEntityDAO<T extends IIdHolder> extends Abst
{ {
return cast(getHibernateTemplate().loadAll(getEntityClass())); return cast(getHibernateTemplate().loadAll(getEntityClass()));
} }
public void clearSession()
{
getHibernateTemplate().clear();
}
} }
...@@ -294,6 +294,7 @@ public class ExternalDataBOTest extends AbstractBOTest ...@@ -294,6 +294,7 @@ public class ExternalDataBOTest extends AbstractBOTest
context.checking(new Expectations() context.checking(new Expectations()
{ {
{ {
one(externalDataDAO).clearSession();
one(externalDataDAO).tryToFindFullDataSetByCode(dataSet.getCode(), false, true); one(externalDataDAO).tryToFindFullDataSetByCode(dataSet.getCode(), false, true);
will(returnValue(dataSet)); will(returnValue(dataSet));
one(externalDataDAO).validateAndSaveUpdatedEntity(dataSet); one(externalDataDAO).validateAndSaveUpdatedEntity(dataSet);
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment