Details
-
Bug
-
Resolution: Fixed
-
Medium
-
None
-
None
-
None
Description
Using a PluginSettingsFactory in a Crowd plugin fails on modification attempts:
org.springframework.dao.InvalidDataAccessApiUsageException: Write operations are not allowed in read-only mode (FlushMode.MANUAL): Turn your Session into FlushMode.COMMIT/AUTO or remove 'readOnly' marker from transaction definition. at org.springframework.orm.hibernate3.HibernateTemplate.checkWriteOperationAllowed(HibernateTemplate.java:1175) at org.springframework.orm.hibernate3.HibernateTemplate$16.doInHibernate(HibernateTemplate.java:739) at org.springframework.orm.hibernate3.HibernateTemplate.doExecute(HibernateTemplate.java:406) at org.springframework.orm.hibernate3.HibernateTemplate.executeWithNativeSession(HibernateTemplate.java:374) at org.springframework.orm.hibernate3.HibernateTemplate.saveOrUpdate(HibernateTemplate.java:737) at com.atlassian.crowd.util.persistence.hibernate.HibernateDao.update(HibernateDao.java:63) at com.atlassian.crowd.dao.property.PropertyDAOHibernate.update(PropertyDAOHibernate.java:62) at com.atlassian.crowd.manager.property.PluginPropertyManagerGeneric.setProperty(PluginPropertyManagerGeneric.java:64) at com.atlassian.sal.crowd.pluginsettings.CrowdPluginSettings.putActual(CrowdPluginSettings.java:54) at com.atlassian.sal.core.pluginsettings.AbstractStringPluginSettings.put(AbstractStringPluginSettings.java:76) at group.ExampleServlet.doGet(ExampleServlet.java:44)
The PluginPropertyManager needs an interceptor configured to set the appropriate transaction behaviour for that session.
Attachments
Issue Links
- mentioned in
-
Wiki Page Loading...