{"action":"created","issue":{"url":"https://api.github.com/repos/BroadleafCommerce/BroadleafCommerce/issues/1338","labels_url":"https://api.github.com/repos/BroadleafCommerce/BroadleafCommerce/issues/1338/labels{/name}","comments_url":"https://api.github.com/repos/BroadleafCommerce/BroadleafCommerce/issues/1338/comments","events_url":"https://api.github.com/repos/BroadleafCommerce/BroadleafCommerce/issues/1338/events","html_url":"https://github.com/BroadleafCommerce/BroadleafCommerce/issues/1338","id":71982775,"number":1338,"title":"Exception when saving structured content on DemoSite admin","user":{"login":"ncrum","id":3411402,"avatar_url":"https://avatars.githubusercontent.com/u/3411402?v=3","gravatar_id":"","url":"https://api.github.com/users/ncrum","html_url":"https://github.com/ncrum","followers_url":"https://api.github.com/users/ncrum/followers","following_url":"https://api.github.com/users/ncrum/following{/other_user}","gists_url":"https://api.github.com/users/ncrum/gists{/gist_id}","starred_url":"https://api.github.com/users/ncrum/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ncrum/subscriptions","organizations_url":"https://api.github.com/users/ncrum/orgs","repos_url":"https://api.github.com/users/ncrum/repos","events_url":"https://api.github.com/users/ncrum/events{/privacy}","received_events_url":"https://api.github.com/users/ncrum/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/BroadleafCommerce/BroadleafCommerce/labels/type-bug","name":"type-bug","color":"e11d21"}],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":2,"created_at":"2015-04-29T20:33:53Z","updated_at":"2015-04-29T21:08:12Z","closed_at":null,"body":"Steps to recreate:\r\n1. Click on `Content` then `Content Items`\r\n2. Click on `Home Page Featured Products Title`\r\n3. Click Save and observer error\r\n\r\n**Admin Page**\r\n```\r\nRuleFieldPersistenceProvider is currently only compatible with map fields when modelled using @OneToMany\r\n\r\njava.lang.UnsupportedOperationException: RuleFieldPersistenceProvider is currently only compatible with map fields when modelled using @OneToMany\r\norg.broadleafcommerce.openadmin.server.service.persistence.module.provider.RuleFieldPersistenceProvider.populateSimpleRule(RuleFieldPersistenceProvider.java:232)\r\n```\r\n\r\n**Console:**\r\n```\r\n[artifact:mvn] [ WARN] 15:22:56 DataBinder - Skipping URI variable 'id' since the request contains a bind value with the same name.\r\n[artifact:mvn] [ERROR] 15:22:56 DynamicEntityRemoteService - Problem updating org.broadleafcommerce.cms.structure.domain.StructuredContent\r\n[artifact:mvn] org.broadleafcommerce.common.exception.ServiceException: Problem updating entity : RuleFieldPersistenceProvider is currently only compatible with map fields when modelled using @OneToMany\r\n[artifact:mvn] \tat org.broadleafcommerce.openadmin.server.service.persistence.module.BasicPersistenceModule.update(BasicPersistenceModule.java:770)\r\n[artifact:mvn] \tat org.broadleafcommerce.openadmin.server.service.persistence.module.BasicPersistenceModule.update(BasicPersistenceModule.java:936)\r\n[artifact:mvn] \tat org.broadleafcommerce.openadmin.server.service.persistence.PersistenceManagerImpl.update(PersistenceManagerImpl.java:530)\r\n[artifact:mvn] \tat org.broadleafcommerce.openadmin.server.service.DynamicEntityRemoteService$7.execute(DynamicEntityRemoteService.java:258)\r\n[artifact:mvn] \tat org.broadleafcommerce.openadmin.server.service.DynamicEntityRemoteService$7.execute(DynamicEntityRemoteService.java:249)\r\n[artifact:mvn] \tat org.broadleafcommerce.openadmin.server.service.persistence.PersistenceThreadManager.operation(PersistenceThreadManager.java:33)\r\n[artifact:mvn] \tat org.broadleafcommerce.openadmin.server.service.DynamicEntityRemoteService.nonTransactionalUpdate(DynamicEntityRemoteService.java:249)\r\n[artifact:mvn] \tat org.broadleafcommerce.openadmin.server.service.DynamicEntityRemoteService$4.execute(DynamicEntityRemoteService.java:179)\r\n[artifact:mvn] \tat org.broadleafcommerce.common.util.StreamingTransactionCapableUtil.runOptionalTransactionalOperation(StreamingTransactionCapableUtil.java:140)\r\n[artifact:mvn] \tat org.broadleafcommerce.common.util.StreamingTransactionCapableUtil.runTransactionalOperation(StreamingTransactionCapableUtil.java:113)\r\n[artifact:mvn] \tat org.broadleafcommerce.common.util.StreamingTransactionCapableUtil.runTransactionalOperation(StreamingTransactionCapableUtil.java:107)\r\n[artifact:mvn] \tat org.broadleafcommerce.openadmin.server.service.DynamicEntityRemoteService.update(DynamicEntityRemoteService.java:176)\r\n[artifact:mvn] \tat sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)\r\n[artifact:mvn] \tat sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)\r\n[artifact:mvn] \tat sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)\r\n[artifact:mvn] \tat java.lang.reflect.Method.invoke(Method.java:606)\r\n[artifact:mvn] \tat org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:317)\r\n[artifact:mvn] \tat org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:190)\r\n[artifact:mvn] \tat org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:157)\r\n[artifact:mvn] \tat org.springframework.security.access.intercept.aopalliance.MethodSecurityInterceptor.invoke(MethodSecurityInterceptor.java:64)\r\n[artifact:mvn] \tat org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:179)\r\n[artifact:mvn] \tat org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:207)\r\n[artifact:mvn] \tat com.sun.proxy.$Proxy215.update(Unknown Source)\r\n[artifact:mvn] \tat org.broadleafcommerce.openadmin.server.service.AdminEntityServiceImpl.update(AdminEntityServiceImpl.java:752)\r\n[artifact:mvn] \tat org.broadleafcommerce.openadmin.server.service.AdminEntityServiceImpl.update(AdminEntityServiceImpl.java:744)\r\n[artifact:mvn] \tat org.broadleafcommerce.openadmin.server.service.AdminEntityServiceImpl.updateEntity(AdminEntityServiceImpl.java:181)\r\n[artifact:mvn] \tat org.broadleafcommerce.openadmin.web.controller.entity.AdminBasicEntityController.saveEntity(AdminBasicEntityController.java:493)\r\n[artifact:mvn] \tat org.broadleafcommerce.cms.admin.web.controller.AdminStructuredContentController.saveEntity(AdminStructuredContentController.java:103)\r\n[artifact:mvn] \tat org.broadleafcommerce.openadmin.web.controller.entity.AdminBasicEntityController.saveEntityJson(AdminBasicEntityController.java:413)\r\n[artifact:mvn] \tat sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)\r\n[artifact:mvn] \tat sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)\r\n[artifact:mvn] \tat sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)\r\n[artifact:mvn] \tat java.lang.reflect.Method.invoke(Method.java:606)\r\n[artifact:mvn] \tat org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:221)\r\n[artifact:mvn] \tat org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:137)\r\n[artifact:mvn] \tat org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:110)\r\n[artifact:mvn] \tat org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandleMethod(RequestMappingHandlerAdapter.java:776)\r\n[artifact:mvn] \tat org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:705)\r\n[artifact:mvn] \tat org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:85)\r\n[artifact:mvn] \tat org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:959)\r\n[artifact:mvn] \tat org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:893)\r\n[artifact:mvn] \tat org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:966)\r\n[artifact:mvn] \tat org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:868)\r\n[artifact:mvn] \tat javax.servlet.http.HttpServlet.service(HttpServlet.java:647)\r\n[artifact:mvn] \tat org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:842)\r\n[artifact:mvn] \tat javax.servlet.http.HttpServlet.service(HttpServlet.java:728)\r\n[artifact:mvn] \tat org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305)\r\n[artifact:mvn] \tat org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)\r\n[artifact:mvn] \tat org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)\r\n[artifact:mvn] \tat org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)\r\n[artifact:mvn] \tat org.broadleafcommerce.openadmin.web.compatibility.JSCompatibilityRequestFilter.doFilterInternal(JSCompatibilityRequestFilter.java:40)\r\n[artifact:mvn] \tat org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)\r\n[artifact:mvn] \tat org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)\r\n[artifact:mvn] \tat org.broadleafcommerce.common.web.util.PrecompressedArtifactFilter.doFilter(PrecompressedArtifactFilter.java:89)\r\n[artifact:mvn] \tat org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)\r\n[artifact:mvn] \tat org.springframework.web.filter.HiddenHttpMethodFilter.doFilterInternal(HiddenHttpMethodFilter.java:77)\r\n[artifact:mvn] \tat org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)\r\n[artifact:mvn] \tat org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)\r\n[artifact:mvn] \tat org.broadleafcommerce.openadmin.web.filter.BroadleafAdminRequestFilter$1.execute(BroadleafAdminRequestFilter.java:73)\r\n[artifact:mvn] \tat org.broadleafcommerce.openadmin.web.filter.BroadleafAdminRequestFilter$1.execute(BroadleafAdminRequestFilter.java:68)\r\n[artifact:mvn] \tat org.broadleafcommerce.openadmin.server.service.persistence.PersistenceThreadManager.operation(PersistenceThreadManager.java:33)\r\n[artifact:mvn] \tat org.broadleafcommerce.openadmin.web.filter.BroadleafAdminRequestFilter.doFilterInternal(BroadleafAdminRequestFilter.java:68)\r\n[artifact:mvn] \tat org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)\r\n[artifact:mvn] \tat org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)\r\n[artifact:mvn] \tat org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:192)\r\n[artifact:mvn] \tat org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:166)\r\n[artifact:mvn] \tat org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)\r\n[artifact:mvn] \tat org.springframework.security.web.access.intercept.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:108)\r\n[artifact:mvn] \tat org.springframework.security.web.access.intercept.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:84)\r\n[artifact:mvn] \tat org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)\r\n[artifact:mvn] \tat org.springframework.security.web.access.intercept.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:118)\r\n[artifact:mvn] \tat org.springframework.security.web.access.intercept.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:84)\r\n[artifact:mvn] \tat org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)\r\n[artifact:mvn] \tat org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:113)\r\n[artifact:mvn] \tat org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)\r\n[artifact:mvn] \tat org.springframework.security.web.session.SessionManagementFilter.doFilter(SessionManagementFilter.java:103)\r\n[artifact:mvn] \tat org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)\r\n[artifact:mvn] \tat org.springframework.security.web.authentication.AnonymousAuthenticationFilter.doFilter(AnonymousAuthenticationFilter.java:113)\r\n[artifact:mvn] \tat org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)\r\n[artifact:mvn] \tat org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter.doFilter(SecurityContextHolderAwareRequestFilter.java:154)\r\n[artifact:mvn] \tat org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)\r\n[artifact:mvn] \tat org.springframework.security.web.savedrequest.RequestCacheAwareFilter.doFilter(RequestCacheAwareFilter.java:45)\r\n[artifact:mvn] \tat org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)\r\n[artifact:mvn] \tat org.springframework.security.web.authentication.ui.DefaultLoginPageGeneratingFilter.doFilter(DefaultLoginPageGeneratingFilter.java:155)\r\n[artifact:mvn] \tat org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)\r\n[artifact:mvn] \tat org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.doFilter(AbstractAuthenticationProcessingFilter.java:199)\r\n[artifact:mvn] \tat org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)\r\n[artifact:mvn] \tat org.broadleafcommerce.common.security.handler.CsrfFilter.doFilter(CsrfFilter.java:85)\r\n[artifact:mvn] \tat org.broadleafcommerce.openadmin.web.filter.AdminCsrfFilter.doFilter(AdminCsrfFilter.java:57)\r\n[artifact:mvn] \tat org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)\r\n[artifact:mvn] \tat org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:110)\r\n[artifact:mvn] \tat org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)\r\n[artifact:mvn] \tat org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:50)\r\n[artifact:mvn] \tat org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)\r\n[artifact:mvn] \tat org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)\r\n[artifact:mvn] \tat org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:87)\r\n[artifact:mvn] \tat org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)\r\n[artifact:mvn] \tat org.springframework.security.web.access.channel.ChannelProcessingFilter.doFilter(ChannelProcessingFilter.java:144)\r\n[artifact:mvn] \tat org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)\r\n[artifact:mvn] \tat org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)\r\n[artifact:mvn] \tat org.springframework.orm.jpa.support.OpenEntityManagerInViewFilter.doFilterInternal(OpenEntityManagerInViewFilter.java:178)\r\n[artifact:mvn] \tat org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)\r\n[artifact:mvn] \tat org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)\r\n[artifact:mvn] \tat org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:192)\r\n[artifact:mvn] \tat org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:166)\r\n[artifact:mvn] \tat org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)\r\n[artifact:mvn] \tat org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:192)\r\n[artifact:mvn] \tat org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:160)\r\n[artifact:mvn] \tat org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:344)\r\n[artifact:mvn] \tat org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:261)\r\n[artifact:mvn] \tat org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)\r\n[artifact:mvn] \tat org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)\r\n[artifact:mvn] \tat org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:85)\r\n[artifact:mvn] \tat org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)\r\n[artifact:mvn] \tat org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)\r\n[artifact:mvn] \tat org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)\r\n[artifact:mvn] \tat org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:222)\r\n[artifact:mvn] \tat org.apache.catalina.core.StandardContextValve.__invoke(StandardContextValve.java:123)\r\n[artifact:mvn] \tat org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java)\r\n[artifact:mvn] \tat org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:502)\r\n[artifact:mvn] \tat org.apache.catalina.core.StandardHostValve.__invoke(StandardHostValve.java:171)\r\n[artifact:mvn] \tat org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java)\r\n[artifact:mvn] \tat org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:100)\r\n[artifact:mvn] \tat org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:953)\r\n[artifact:mvn] \tat org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)\r\n[artifact:mvn] \tat org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:408)\r\n[artifact:mvn] \tat org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1041)\r\n[artifact:mvn] \tat org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:603)\r\n[artifact:mvn] \tat org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:310)\r\n[artifact:mvn] \tat java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)\r\n[artifact:mvn] \tat java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)\r\n[artifact:mvn] \tat java.lang.Thread.run(Thread.java:745)\r\n[artifact:mvn] Caused by: java.lang.UnsupportedOperationException: RuleFieldPersistenceProvider is currently only compatible with map fields when modelled using @OneToMany\r\n[artifact:mvn] \tat org.broadleafcommerce.openadmin.server.service.persistence.module.provider.RuleFieldPersistenceProvider.populateSimpleRule(RuleFieldPersistenceProvider.java:232)\r\n[artifact:mvn] \tat org.broadleafcommerce.openadmin.server.service.persistence.module.provider.RuleFieldPersistenceProvider.populateValue(RuleFieldPersistenceProvider.java:118)\r\n[artifact:mvn] \tat org.broadleafcommerce.openadmin.server.service.persistence.module.BasicPersistenceModule.createPopulatedInstance(BasicPersistenceModule.java:359)\r\n[artifact:mvn] \tat org.broadleafcommerce.openadmin.server.service.persistence.module.BasicPersistenceModule.update(BasicPersistenceModule.java:751)\r\n[artifact:mvn] \t... 131 more\r\n[artifact:mvn] [ERROR] 15:22:56 AdminMappingExceptionResolver - Unhandled error processing ajax request\r\n[artifact:mvn] java.lang.UnsupportedOperationException: RuleFieldPersistenceProvider is currently only compatible with map fields when modelled using @OneToMany\r\n[artifact:mvn] \tat org.broadleafcommerce.openadmin.server.service.persistence.module.provider.RuleFieldPersistenceProvider.populateSimpleRule(RuleFieldPersistenceProvider.java:232)\r\n[artifact:mvn] \tat org.broadleafcommerce.openadmin.server.service.persistence.module.provider.RuleFieldPersistenceProvider.populateValue(RuleFieldPersistenceProvider.java:118)\r\n[artifact:mvn] \tat org.broadleafcommerce.openadmin.server.service.persistence.module.BasicPersistenceModule.createPopulatedInstance(BasicPersistenceModule.java:359)\r\n[artifact:mvn] \tat org.broadleafcommerce.openadmin.server.service.persistence.module.BasicPersistenceModule.update(BasicPersistenceModule.java:751)\r\n[artifact:mvn] \tat org.broadleafcommerce.openadmin.server.service.persistence.module.BasicPersistenceModule.update(BasicPersistenceModule.java:936)\r\n[artifact:mvn] \tat org.broadleafcommerce.openadmin.server.service.persistence.PersistenceManagerImpl.update(PersistenceManagerImpl.java:530)\r\n[artifact:mvn] \tat org.broadleafcommerce.openadmin.server.service.DynamicEntityRemoteService$7.execute(DynamicEntityRemoteService.java:258)\r\n[artifact:mvn] \tat org.broadleafcommerce.openadmin.server.service.DynamicEntityRemoteService$7.execute(DynamicEntityRemoteService.java:249)\r\n[artifact:mvn] \tat org.broadleafcommerce.openadmin.server.service.persistence.PersistenceThreadManager.operation(PersistenceThreadManager.java:33)\r\n[artifact:mvn] \tat org.broadleafcommerce.openadmin.server.service.DynamicEntityRemoteService.nonTransactionalUpdate(DynamicEntityRemoteService.java:249)\r\n[artifact:mvn] \tat org.broadleafcommerce.openadmin.server.service.DynamicEntityRemoteService$4.execute(DynamicEntityRemoteService.java:179)\r\n[artifact:mvn] \tat org.broadleafcommerce.common.util.StreamingTransactionCapableUtil.runOptionalTransactionalOperation(StreamingTransactionCapableUtil.java:140)\r\n[artifact:mvn] \tat org.broadleafcommerce.common.util.StreamingTransactionCapableUtil.runTransactionalOperation(StreamingTransactionCapableUtil.java:113)\r\n[artifact:mvn] \tat org.broadleafcommerce.common.util.StreamingTransactionCapableUtil.runTransactionalOperation(StreamingTransactionCapableUtil.java:107)\r\n[artifact:mvn] \tat org.broadleafcommerce.openadmin.server.service.DynamicEntityRemoteService.update(DynamicEntityRemoteService.java:176)\r\n[artifact:mvn] \tat sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)\r\n[artifact:mvn] \tat sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)\r\n[artifact:mvn] \tat sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)\r\n[artifact:mvn] \tat java.lang.reflect.Method.invoke(Method.java:606)\r\n[artifact:mvn] \tat org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:317)\r\n[artifact:mvn] \tat org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:190)\r\n[artifact:mvn] \tat org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:157)\r\n[artifact:mvn] \tat org.springframework.security.access.intercept.aopalliance.MethodSecurityInterceptor.invoke(MethodSecurityInterceptor.java:64)\r\n[artifact:mvn] \tat org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:179)\r\n[artifact:mvn] \tat org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:207)\r\n[artifact:mvn] \tat com.sun.proxy.$Proxy215.update(Unknown Source)\r\n[artifact:mvn] \tat org.broadleafcommerce.openadmin.server.service.AdminEntityServiceImpl.update(AdminEntityServiceImpl.java:752)\r\n[artifact:mvn] \tat org.broadleafcommerce.openadmin.server.service.AdminEntityServiceImpl.update(AdminEntityServiceImpl.java:744)\r\n[artifact:mvn] \tat org.broadleafcommerce.openadmin.server.service.AdminEntityServiceImpl.updateEntity(AdminEntityServiceImpl.java:181)\r\n[artifact:mvn] \tat org.broadleafcommerce.openadmin.web.controller.entity.AdminBasicEntityController.saveEntity(AdminBasicEntityController.java:493)\r\n[artifact:mvn] \tat org.broadleafcommerce.cms.admin.web.controller.AdminStructuredContentController.saveEntity(AdminStructuredContentController.java:103)\r\n[artifact:mvn] \tat org.broadleafcommerce.openadmin.web.controller.entity.AdminBasicEntityController.saveEntityJson(AdminBasicEntityController.java:413)\r\n[artifact:mvn] \tat sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)\r\n[artifact:mvn] \tat sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)\r\n[artifact:mvn] \tat sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)\r\n[artifact:mvn] \tat java.lang.reflect.Method.invoke(Method.java:606)\r\n[artifact:mvn] \tat org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:221)\r\n[artifact:mvn] \tat org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:137)\r\n[artifact:mvn] \tat org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:110)\r\n[artifact:mvn] \tat org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandleMethod(RequestMappingHandlerAdapter.java:776)\r\n[artifact:mvn] \tat org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:705)\r\n[artifact:mvn] \tat org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:85)\r\n[artifact:mvn] \tat org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:959)\r\n[artifact:mvn] \tat org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:893)\r\n[artifact:mvn] \tat org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:966)\r\n[artifact:mvn] \tat org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:868)\r\n[artifact:mvn] \tat javax.servlet.http.HttpServlet.service(HttpServlet.java:647)\r\n[artifact:mvn] \tat org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:842)\r\n[artifact:mvn] \tat javax.servlet.http.HttpServlet.service(HttpServlet.java:728)\r\n[artifact:mvn] \tat org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305)\r\n[artifact:mvn] \tat org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)\r\n[artifact:mvn] \tat org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)\r\n[artifact:mvn] \tat org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)\r\n[artifact:mvn] \tat org.broadleafcommerce.openadmin.web.compatibility.JSCompatibilityRequestFilter.doFilterInternal(JSCompatibilityRequestFilter.java:40)\r\n[artifact:mvn] \tat org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)\r\n[artifact:mvn] \tat org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)\r\n[artifact:mvn] \tat org.broadleafcommerce.common.web.util.PrecompressedArtifactFilter.doFilter(PrecompressedArtifactFilter.java:89)\r\n[artifact:mvn] \tat org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)\r\n[artifact:mvn] \tat org.springframework.web.filter.HiddenHttpMethodFilter.doFilterInternal(HiddenHttpMethodFilter.java:77)\r\n[artifact:mvn] \tat org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)\r\n[artifact:mvn] \tat org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)\r\n[artifact:mvn] \tat org.broadleafcommerce.openadmin.web.filter.BroadleafAdminRequestFilter$1.execute(BroadleafAdminRequestFilter.java:73)\r\n[artifact:mvn] \tat org.broadleafcommerce.openadmin.web.filter.BroadleafAdminRequestFilter$1.execute(BroadleafAdminRequestFilter.java:68)\r\n[artifact:mvn] \tat org.broadleafcommerce.openadmin.server.service.persistence.PersistenceThreadManager.operation(PersistenceThreadManager.java:33)\r\n[artifact:mvn] \tat org.broadleafcommerce.openadmin.web.filter.BroadleafAdminRequestFilter.doFilterInternal(BroadleafAdminRequestFilter.java:68)\r\n[artifact:mvn] \tat org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)\r\n[artifact:mvn] \tat org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)\r\n[artifact:mvn] \tat org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:192)\r\n[artifact:mvn] \tat org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:166)\r\n[artifact:mvn] \tat org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)\r\n[artifact:mvn] \tat org.springframework.security.web.access.intercept.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:108)\r\n[artifact:mvn] \tat org.springframework.security.web.access.intercept.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:84)\r\n[artifact:mvn] \tat org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)\r\n[artifact:mvn] \tat org.springframework.security.web.access.intercept.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:118)\r\n[artifact:mvn] \tat org.springframework.security.web.access.intercept.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:84)\r\n[artifact:mvn] \tat org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)\r\n[artifact:mvn] \tat org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:113)\r\n[artifact:mvn] \tat org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)\r\n[artifact:mvn] \tat org.springframework.security.web.session.SessionManagementFilter.doFilter(SessionManagementFilter.java:103)\r\n[artifact:mvn] \tat org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)\r\n[artifact:mvn] \tat org.springframework.security.web.authentication.AnonymousAuthenticationFilter.doFilter(AnonymousAuthenticationFilter.java:113)\r\n[artifact:mvn] \tat org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)\r\n[artifact:mvn] \tat org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter.doFilter(SecurityContextHolderAwareRequestFilter.java:154)\r\n[artifact:mvn] \tat org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)\r\n[artifact:mvn] \tat org.springframework.security.web.savedrequest.RequestCacheAwareFilter.doFilter(RequestCacheAwareFilter.java:45)\r\n[artifact:mvn] \tat org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)\r\n[artifact:mvn] \tat org.springframework.security.web.authentication.ui.DefaultLoginPageGeneratingFilter.doFilter(DefaultLoginPageGeneratingFilter.java:155)\r\n[artifact:mvn] \tat org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)\r\n[artifact:mvn] \tat org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.doFilter(AbstractAuthenticationProcessingFilter.java:199)\r\n[artifact:mvn] \tat org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)\r\n[artifact:mvn] \tat org.broadleafcommerce.common.security.handler.CsrfFilter.doFilter(CsrfFilter.java:85)\r\n[artifact:mvn] \tat org.broadleafcommerce.openadmin.web.filter.AdminCsrfFilter.doFilter(AdminCsrfFilter.java:57)\r\n[artifact:mvn] \tat org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)\r\n[artifact:mvn] \tat org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:110)\r\n[artifact:mvn] \tat org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)\r\n[artifact:mvn] \tat org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:50)\r\n[artifact:mvn] \tat org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)\r\n[artifact:mvn] \tat org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)\r\n[artifact:mvn] \tat org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:87)\r\n[artifact:mvn] \tat org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)\r\n[artifact:mvn] \tat org.springframework.security.web.access.channel.ChannelProcessingFilter.doFilter(ChannelProcessingFilter.java:144)\r\n[artifact:mvn] \tat org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)\r\n[artifact:mvn] \tat org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)\r\n[artifact:mvn] \tat org.springframework.orm.jpa.support.OpenEntityManagerInViewFilter.doFilterInternal(OpenEntityManagerInViewFilter.java:178)\r\n[artifact:mvn] \tat org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)\r\n[artifact:mvn] \tat org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)\r\n[artifact:mvn] \tat org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:192)\r\n[artifact:mvn] \tat org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:166)\r\n[artifact:mvn] \tat org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)\r\n[artifact:mvn] \tat org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:192)\r\n[artifact:mvn] \tat org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:160)\r\n[artifact:mvn] \tat org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:344)\r\n[artifact:mvn] \tat org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:261)\r\n[artifact:mvn] \tat org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)\r\n[artifact:mvn] \tat org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)\r\n[artifact:mvn] \tat org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:85)\r\n[artifact:mvn] \tat org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)\r\n[artifact:mvn] \tat org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)\r\n[artifact:mvn] \tat org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)\r\n[artifact:mvn] \tat org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:222)\r\n[artifact:mvn] \tat org.apache.catalina.core.StandardContextValve.__invoke(StandardContextValve.java:123)\r\n[artifact:mvn] \tat org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java)\r\n[artifact:mvn] \tat org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:502)\r\n[artifact:mvn] \tat org.apache.catalina.core.StandardHostValve.__invoke(StandardHostValve.java:171)\r\n[artifact:mvn] \tat org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java)\r\n[artifact:mvn] \tat org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:100)\r\n[artifact:mvn] \tat org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:953)\r\n[artifact:mvn] \tat org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)\r\n[artifact:mvn] \tat org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:408)\r\n[artifact:mvn] \tat org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1041)\r\n[artifact:mvn] \tat org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:603)\r\n[artifact:mvn] \tat org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:310)\r\n[artifact:mvn] \tat java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)\r\n[artifact:mvn] \tat java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)\r\n[artifact:mvn] \tat java.lang.Thread.run(Thread.java:745)\r\n```\r\n\r\n@phillipuniverse"},"comment":{"url":"https://api.github.com/repos/BroadleafCommerce/BroadleafCommerce/issues/comments/97586067","html_url":"https://github.com/BroadleafCommerce/BroadleafCommerce/issues/1338#issuecomment-97586067","issue_url":"https://api.github.com/repos/BroadleafCommerce/BroadleafCommerce/issues/1338","id":97586067,"user":{"login":"ncrum","id":3411402,"avatar_url":"https://avatars.githubusercontent.com/u/3411402?v=3","gravatar_id":"","url":"https://api.github.com/users/ncrum","html_url":"https://github.com/ncrum","followers_url":"https://api.github.com/users/ncrum/followers","following_url":"https://api.github.com/users/ncrum/following{/other_user}","gists_url":"https://api.github.com/users/ncrum/gists{/gist_id}","starred_url":"https://api.github.com/users/ncrum/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ncrum/subscriptions","organizations_url":"https://api.github.com/users/ncrum/orgs","repos_url":"https://api.github.com/users/ncrum/repos","events_url":"https://api.github.com/users/ncrum/events{/privacy}","received_events_url":"https://api.github.com/users/ncrum/received_events","type":"User","site_admin":false},"created_at":"2015-04-29T21:08:12Z","updated_at":"2015-04-29T21:08:12Z","body":"Here is the field that is having the OneToMany conflict:\r\n```Java\r\n@ManyToMany(targetEntity = StructuredContentRuleImpl.class, cascade = {CascadeType.ALL})\r\n    @JoinTable(name = \"BLC_SC_RULE_MAP\", inverseJoinColumns = @JoinColumn(name = \"SC_RULE_ID\", referencedColumnName = \"SC_RULE_ID\"))\r\n    @Cascade(value={org.hibernate.annotations.CascadeType.ALL, org.hibernate.annotations.CascadeType.DELETE_ORPHAN})\r\n    @MapKeyColumn(name = \"MAP_KEY\", nullable = false)\r\n    @AdminPresentationMapFields(\r\n        mapDisplayFields = {\r\n            @AdminPresentationMapField(\r\n                fieldName = RuleIdentifier.CUSTOMER_FIELD_KEY,\r\n                fieldPresentation = @AdminPresentation(fieldType = SupportedFieldType.RULE_SIMPLE, order = 1,\r\n                    tab = Presentation.Tab.Name.Rules, tabOrder = Presentation.Tab.Order.Rules,\r\n                    group = Presentation.Group.Name.Rules, groupOrder = Presentation.Group.Order.Rules,\r\n                    ruleIdentifier = RuleIdentifier.CUSTOMER, friendlyName = \"Generic_Customer_Rule\")\r\n            ),\r\n            @AdminPresentationMapField(\r\n                fieldName = RuleIdentifier.TIME_FIELD_KEY,\r\n                fieldPresentation = @AdminPresentation(fieldType = SupportedFieldType.RULE_SIMPLE, order = 2,\r\n                    tab = Presentation.Tab.Name.Rules, tabOrder = Presentation.Tab.Order.Rules,\r\n                    group = Presentation.Group.Name.Rules, groupOrder = Presentation.Group.Order.Rules,\r\n                    ruleIdentifier = RuleIdentifier.TIME, friendlyName = \"Generic_Time_Rule\")\r\n            ),\r\n            @AdminPresentationMapField(\r\n                fieldName = RuleIdentifier.REQUEST_FIELD_KEY,\r\n                fieldPresentation = @AdminPresentation(fieldType = SupportedFieldType.RULE_SIMPLE, order = 3,\r\n                    tab = Presentation.Tab.Name.Rules, tabOrder = Presentation.Tab.Order.Rules,\r\n                    group = Presentation.Group.Name.Rules, groupOrder = Presentation.Group.Order.Rules,\r\n                    ruleIdentifier = RuleIdentifier.REQUEST, friendlyName = \"Generic_Request_Rule\")\r\n            ),\r\n            @AdminPresentationMapField(\r\n                fieldName = RuleIdentifier.PRODUCT_FIELD_KEY,\r\n                fieldPresentation = @AdminPresentation(fieldType = SupportedFieldType.RULE_SIMPLE, order = 4,\r\n                    tab = Presentation.Tab.Name.Rules, tabOrder = Presentation.Tab.Order.Rules,\r\n                    group = Presentation.Group.Name.Rules, groupOrder = Presentation.Group.Order.Rules,\r\n                    ruleIdentifier = RuleIdentifier.PRODUCT, friendlyName = \"Generic_Product_Rule\")\r\n                    ),\r\n            @AdminPresentationMapField(\r\n                fieldName = RuleIdentifier.ORDER_FIELD_KEY,\r\n                fieldPresentation = @AdminPresentation(fieldType = SupportedFieldType.RULE_SIMPLE, order = 5,\r\n                    tab = Presentation.Tab.Name.Rules, tabOrder = Presentation.Tab.Order.Rules,\r\n                    group = Presentation.Group.Name.Rules, groupOrder = Presentation.Group.Order.Rules,\r\n                    ruleIdentifier = RuleIdentifier.ORDER, friendlyName = \"Generic_Order_Rule\")\r\n                    ),\r\n            @AdminPresentationMapField(\r\n                fieldName = RuleIdentifier.CATEGORY,\r\n                fieldPresentation = @AdminPresentation(fieldType = SupportedFieldType.RULE_SIMPLE, order = 6,\r\n                    tab = Presentation.Tab.Name.Rules, tabOrder = Presentation.Tab.Order.Rules,\r\n                    group = Presentation.Group.Name.Rules, groupOrder = Presentation.Group.Order.Rules,\r\n                    ruleIdentifier = RuleIdentifier.CATEGORY, friendlyName = \"Generic_Category_Rule\")\r\n                    )\r\n        }\r\n    )\r\n    @Cache(usage= CacheConcurrencyStrategy.NONSTRICT_READ_WRITE, region=\"blCMSElements\")\r\n    @IgnoreEnterpriseBehavior\r\n    Map<String, StructuredContentRule> structuredContentMatchRules = new HashMap<String, StructuredContentRule>();\r\n```"}}