<?xml version="1.0" encoding="UTF-8"?>
<feed xmlns="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <title>Cannot retrieve group scoped configuration data</title>
  <link rel="self" href="https://liferay.dev/c/message_boards/find_thread?p_l_id=119785294&amp;threadId=122019394" />
  <subtitle>Cannot retrieve group scoped configuration data</subtitle>
  <id>https://liferay.dev/c/message_boards/find_thread?p_l_id=119785294&amp;threadId=122019394</id>
  <updated>2026-04-07T23:36:52Z</updated>
  <dc:date>2026-04-07T23:36:52Z</dc:date>
  <entry>
    <title>Cannot retrieve group scoped configuration data</title>
    <link rel="alternate" href="https://liferay.dev/c/message_boards/find_message?p_l_id=119785294&amp;messageId=122019393" />
    <author>
      <name>Steve Weiss</name>
    </author>
    <id>https://liferay.dev/c/message_boards/find_message?p_l_id=119785294&amp;messageId=122019393</id>
    <updated>2023-09-08T16:05:56Z</updated>
    <published>2023-09-08T16:05:55Z</published>
    <summary type="html">&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;I've created a configuration interface with group scope in Liferay
  7.4 dxp, following the documentation here: https://help.liferay.com/hc/en-us/articles/360028726152-Scoping-Configurations.&lt;/p&gt;
&lt;p&gt;The configuration form shows up in the site settings, and if I change
  a value it is saved. But when I retrieve the value in the portlet it's
  empty. Below are the relevant code snippets:&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;
  &lt;strong&gt;Configuration interface&lt;/strong&gt;:&lt;/p&gt;
&lt;p&gt;@ExtendedObjectClassDefinition(category = &amp;quot;NASA&amp;quot;, scope =
  ExtendedObjectClassDefinition.Scope.GROUP)&lt;br&gt; @Meta.OCD(&lt;br&gt;        
  id =
  &amp;quot;gov.nasa.hq.mailerform.internal.configuration.MailerFormGroupConfiguration&amp;quot;,&lt;br&gt;
          localization = &amp;quot;content/Language&amp;quot;,&lt;br&gt;         name
  = &amp;quot;MailerForm Configuration&amp;quot;)&lt;br&gt; public interface
  MailerFormGroupConfiguration {&lt;/p&gt;
&lt;p&gt;    @Meta.AD(&lt;br&gt;             required = false,&lt;br&gt;             name
  = &amp;quot;antiSamyPolicyFile&amp;quot;,&lt;br&gt;             description =
  &amp;quot;AntiSamy policy file&amp;quot;,&lt;br&gt;             deflt =
  &amp;quot;antisamy-slashdot.xml&amp;quot;)&lt;br&gt;     public String antiSamyPolicyFile();&lt;/p&gt;
&lt;p&gt;    @Meta.AD(&lt;br&gt;             required = false,&lt;br&gt;             name
  = &amp;quot;antiSamyPolicyDirectory&amp;quot;,&lt;br&gt;             deflt =
  &amp;quot;/app/liferay/data/portlet_properties/antisamy&amp;quot;)&lt;br&gt;    
  public String antiSamyPolicyDirectory();&lt;br&gt; }&lt;br&gt;  &lt;/p&gt;
&lt;p&gt;
  &lt;strong&gt;Registering the configuration:&lt;/strong&gt;
&lt;/p&gt;
&lt;p&gt;public class MailerFormGroupConfigurationBeanDeclaration implements
  ConfigurationBeanDeclaration {&lt;/p&gt;
&lt;p&gt;    @Override&lt;br&gt;     public Class&amp;lt;?&amp;gt;
  getConfigurationBeanClass() {&lt;br&gt;         return
  MailerFormGroupConfiguration.class;&lt;br&gt;     }&lt;/p&gt;
&lt;p&gt;}&lt;br&gt;  &lt;/p&gt;
&lt;p&gt;
  &lt;strong&gt;Portlet code:&lt;/strong&gt;
&lt;/p&gt;
&lt;p&gt;@Component(&lt;br&gt;         configurationPid =
  &amp;quot;gov.nasa.hq.mailerform.internal.configuration.MailerFormGroupConfiguration&amp;quot;,&lt;br&gt;
          property = {&lt;br&gt;                
  &amp;quot;com.liferay.portlet.display-category=NASA&amp;quot;,&lt;br&gt;            
     
  &amp;quot;com.liferay.portlet.header-portlet-css=/css/styles.css&amp;quot;,&lt;br&gt;
                  &amp;quot;com.liferay.portlet.instanceable=true&amp;quot;,&lt;br&gt;
                  &amp;quot;javax.portlet.display-name=MailerForm&amp;quot;,&lt;br&gt;
                 
  &amp;quot;javax.portlet.init-param.template-path=/&amp;quot;,&lt;br&gt;            
      &amp;quot;javax.portlet.init-param.view-template=/view.jsp&amp;quot;,&lt;br&gt;
                 
  &amp;quot;javax.portlet.init-param.error-template=/errorPage.jsp&amp;quot;,&lt;br&gt;
                 
  &amp;quot;javax.portlet.init-param.config-template=/admin/configuration.jsp&amp;quot;,&lt;br&gt;
                  &amp;quot;javax.portlet.name=&amp;quot; +
  MailerFormPortletKeys.MAILERFORM,&lt;br&gt;                
  &amp;quot;javax.portlet.resource-bundle=content.Language&amp;quot;,&lt;br&gt;      
           
  &amp;quot;javax.portlet.security-role-ref=power-user,user&amp;quot;&lt;br&gt;      
    },&lt;br&gt;         service = Portlet.class)&lt;br&gt;  &lt;/p&gt;
&lt;p&gt;
  &lt;strong&gt;// Declare class scope ConfigurationProvider&lt;/strong&gt;
&lt;/p&gt;
&lt;p&gt;    private ConfigurationProvider _configurationProvider;&lt;br&gt;  &lt;/p&gt;
&lt;p&gt;
  &lt;strong&gt;// Get a reference to ConfigurationProvider&lt;/strong&gt;
&lt;/p&gt;
&lt;p&gt;    @Reference(unbind = &amp;quot;-&amp;quot;)&lt;br&gt;     protected void
  setConfigurationProvider(ConfigurationProvider configurationProvider)
  {&lt;br&gt;         _configurationProvider = configurationProvider;&lt;br&gt;    
  }&lt;br&gt;  &lt;/p&gt;
&lt;p&gt;
  &lt;strong&gt;// Try reading from the configuration&lt;/strong&gt;
&lt;/p&gt;
&lt;p&gt;        try {&lt;br&gt;             MailerFormGroupConfiguration
  configuration = _configurationProvider&lt;br&gt;                    
  .getGroupConfiguration(MailerFormGroupConfiguration.class,
  scopeGroupId);&lt;br&gt;             _log.info(ID + &amp;quot;antiSamyPolicyFile
  = &amp;quot; + configuration.antiSamyPolicyFile());&lt;br&gt;         } catch
  (ConfigurationException e2) {&lt;br&gt;             // TODO Auto-generated
  catch block&lt;br&gt;             e2.printStackTrace();&lt;br&gt;         }&lt;/p&gt;
&lt;p&gt;
  &lt;strong&gt;When I print the value of &amp;quot;antiSamyPolicyFile&amp;quot; from
    the configuration it is empty:&lt;/strong&gt;
&lt;/p&gt;
&lt;p&gt;2023-09-08 15:59:50.933 INFO  [http-nio-8080-exec-2][MailerForm:196]
  doView: antiSamyPolicyFile = &lt;br&gt;  &lt;/p&gt;</summary>
    <dc:creator>Steve Weiss</dc:creator>
    <dc:date>2023-09-08T16:05:55Z</dc:date>
  </entry>
</feed>
