Guides → Grails ApprenticeGrails ApprenticeMicronaut @ConfigurationProperties in Grails Appgrails4configurationconfiguration-propertiesmicronautspring-bootproperty-bindingenvironment-profilestype-safe-configgrails6configurationconfiguration-propertiesmicronautspring-bootproperty-bindingenvironment-profilestype-safe-configGrails with Micronaut HTTP Clientmicronauthttp-clientrest-apideclarative-clientspockaopreactiveSpringBoot @ConfigurationProperties in Grails Appgrails3configurationconfiguration-propertiesspring-bootmicronautproperty-bindingenvironment-profilestaglibgrails4configurationconfiguration-propertiesspring-bootmicronautproperty-bindingenvironment-profilestaglibDownload an Excel file in Grails Appgrails3file-downloadexcelspreadsheet-builderpoicontrollersservicesgspfunctional-testsgebgrails4file-downloadexcelspreadsheet-builderpoicontrollersservicesgspfunctional-testsgebGrails URL Mappingsurl-mappingscontrollersrest-apiroutingweb-layerbeginnerapi-designGrails Loggingquickcastloggingslf4jconfigurationparameterized-loggingHow to change languages in a Grails app?grails3i18ninternationalizationmessage-bundlesweb-layergsptranslationbeginnergrails4i18ninternationalizationmessage-bundlesweb-layergsptranslationbeginnerHow to upload a file with Grails 4grails3file-uploadcommand-objectsawss3cloud-storagecontrollersvalidationgspformsgrails4file-uploadcommand-objectsawss3cloud-storagecontrollersvalidationgspformsCreate and test a Grails 5 TagLib; integrate the Trix WYSWYG editorgrails3taglibtrix-editorwysiwyggspfrontendplugin-developmentunit-testsgrails4taglibtrix-editorwysiwyggspfrontendplugin-developmentunit-testsCreating your first Grails Applicationgrails3beginnerdomain-classescontrollersservicesgspunit-testsintegration-testsmysqlscaffoldingasset-pipelineurl-mappingsgetting-startedcrudgrails4beginnerdomain-classescontrollersservicesgspunit-testsintegration-testsmysqlscaffoldingasset-pipelineurl-mappingsgetting-startedcrudgrails6beginnerdomain-classescontrollersservicesgspunit-testsintegration-testsmysqlscaffoldingasset-pipelineurl-mappingsgetting-startedcrudUsing Command Objects To Handle Form Datagrails3command-objectsformsdata-bindingvalidationcontrollersgspweb-layerunit-testsfunctional-testsbeginnergrails4command-objectsformsdata-bindingvalidationcontrollersgspweb-layerunit-testsfunctional-testsbeginnerDeveloping Grails 3 Applications with IntelliJ IDEAquickcastintellij-ideatoolingproductivityJSON Viewsquickcastjson-viewsrest-apiserializationweb-layer