<?xml version="1.0" encoding="UTF-8" standalone="yes"?><urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"><url><loc>https://www.mscharhag.com/grails/rendering-views-using-templates-instead-of-taglibs</loc><changefreq>monthly</changefreq><priority>0.8</priority><lastmod>2015-08-13</lastmod></url><url><loc>https://www.mscharhag.com/grails/grails-data-binding-list</loc><changefreq>monthly</changefreq><priority>0.8</priority><lastmod>2015-08-13</lastmod></url><url><loc>https://www.mscharhag.com/java/java-exceptions-and-generic-types</loc><changefreq>monthly</changefreq><priority>0.8</priority><lastmod>2015-08-13</lastmod></url><url><loc>https://www.mscharhag.com/software-development/mongodb-gridfs-removes-all-files-in-bucket</loc><changefreq>monthly</changefreq><priority>0.8</priority><lastmod>2015-08-13</lastmod></url><url><loc>https://www.mscharhag.com/grails/using-hibernate-filters-in-grails</loc><changefreq>monthly</changefreq><priority>0.8</priority><lastmod>2015-08-14</lastmod></url><url><loc>https://www.mscharhag.com/java/using-markdown-syntax-in-javadoc</loc><changefreq>monthly</changefreq><priority>0.8</priority><lastmod>2015-08-21</lastmod></url><url><loc>https://www.mscharhag.com/java/understanding-junits-runner-architecture</loc><changefreq>monthly</changefreq><priority>0.8</priority><lastmod>2020-09-25</lastmod></url><url><loc>https://www.mscharhag.com/api-design/bulk-and-batch-operations</loc><changefreq>monthly</changefreq><priority>0.8</priority><lastmod>2022-08-09</lastmod></url><url><loc>https://www.mscharhag.com/grails/grails-gorm-database-views</loc><changefreq>monthly</changefreq><priority>0.8</priority><lastmod>2015-08-14</lastmod></url><url><loc>https://www.mscharhag.com/java/aspectj-exception-translation</loc><changefreq>monthly</changefreq><priority>0.8</priority><lastmod>2015-08-15</lastmod></url><url><loc>https://www.mscharhag.com/groovy/groovy-null-nullobject</loc><changefreq>monthly</changefreq><priority>0.8</priority><lastmod>2020-06-21</lastmod></url><url><loc>https://www.mscharhag.com/grails/spring-security-call-bean-method-in-spel-expression</loc><changefreq>monthly</changefreq><priority>0.8</priority><lastmod>2015-08-21</lastmod></url><url><loc>https://www.mscharhag.com/java/oleaster-jasmine-junit-tests</loc><changefreq>monthly</changefreq><priority>0.8</priority><lastmod>2015-08-21</lastmod></url><url><loc>https://www.mscharhag.com/java/specification-pattern-in-java-jpa</loc><changefreq>monthly</changefreq><priority>0.8</priority><lastmod>2015-08-19</lastmod></url><url><loc>https://www.mscharhag.com/api-design/hypermedia-rest</loc><changefreq>monthly</changefreq><priority>0.8</priority><lastmod>2020-08-18</lastmod></url><url><loc>https://www.mscharhag.com/spring/spring-data-solr-getting-started</loc><changefreq>monthly</changefreq><priority>0.8</priority><lastmod>2020-06-21</lastmod></url><url><loc>https://www.mscharhag.com/java/java-rmi-things-to-remember</loc><changefreq>monthly</changefreq><priority>0.8</priority><lastmod>2015-08-14</lastmod></url><url><loc>https://www.mscharhag.com/java/building-rest-api-with-spark</loc><changefreq>monthly</changefreq><priority>0.8</priority><lastmod>2015-09-05</lastmod></url><url><loc>https://www.mscharhag.com/software-development/localization-six-things-learned</loc><changefreq>monthly</changefreq><priority>0.8</priority><lastmod>2015-08-14</lastmod></url><url><loc>https://www.mscharhag.com/spring/rest-api-error-messages</loc><changefreq>monthly</changefreq><priority>0.8</priority><lastmod>2021-05-30</lastmod></url><url><loc>https://www.mscharhag.com/spring/security-authorization-bean-methods</loc><changefreq>monthly</changefreq><priority>0.8</priority><lastmod>2020-10-15</lastmod></url><url><loc>https://www.mscharhag.com/grails/grails-tomcat-kill-switch</loc><changefreq>monthly</changefreq><priority>0.8</priority><lastmod>2015-08-15</lastmod></url><url><loc>https://www.mscharhag.com/java/java-file-io-basics</loc><changefreq>monthly</changefreq><priority>0.8</priority><lastmod>2015-09-26</lastmod></url><url><loc>https://www.mscharhag.com/groovy/groovy-introduces-traits</loc><changefreq>monthly</changefreq><priority>0.8</priority><lastmod>2015-09-26</lastmod></url><url><loc>https://www.mscharhag.com/java/static-code-analysis-jarchitect</loc><changefreq>monthly</changefreq><priority>0.8</priority><lastmod>2015-09-05</lastmod></url><url><loc>https://www.mscharhag.com/java/java-jsr-354-money-and-currency-api</loc><changefreq>monthly</changefreq><priority>0.8</priority><lastmod>2020-09-25</lastmod></url><url><loc>https://www.mscharhag.com/java/dependency-injection-domain-objects</loc><changefreq>monthly</changefreq><priority>0.8</priority><lastmod>2015-09-05</lastmod></url><url><loc>https://www.mscharhag.com/grails/using-spring-security-method-security</loc><changefreq>monthly</changefreq><priority>0.8</priority><lastmod>2015-08-21</lastmod></url><url><loc>https://www.mscharhag.com/api-design/updating-resources-put</loc><changefreq>monthly</changefreq><priority>0.8</priority><lastmod>2020-10-20</lastmod></url><url><loc>https://www.mscharhag.com/java/iso8601-durations</loc><changefreq>monthly</changefreq><priority>0.8</priority><lastmod>2020-07-13</lastmod></url><url><loc>https://www.mscharhag.com/java/exception-translation-with-et</loc><changefreq>monthly</changefreq><priority>0.8</priority><lastmod>2015-09-05</lastmod></url><url><loc>https://www.mscharhag.com/spring/clean-mock-mvc-tests</loc><changefreq>monthly</changefreq><priority>0.8</priority><lastmod>2020-11-02</lastmod></url><url><loc>https://www.mscharhag.com/java/java-8-date-time-api</loc><changefreq>monthly</changefreq><priority>0.8</priority><lastmod>2015-09-26</lastmod></url><url><loc>https://www.mscharhag.com/java/simplifying-nested-loops-lambdas</loc><changefreq>monthly</changefreq><priority>0.8</priority><lastmod>2016-04-03</lastmod></url><url><loc>https://www.mscharhag.com/java/records</loc><changefreq>monthly</changefreq><priority>0.8</priority><lastmod>2020-05-12</lastmod></url><url><loc>https://www.mscharhag.com/groovy/creating-android-apps-with-groovy</loc><changefreq>monthly</changefreq><priority>0.8</priority><lastmod>2015-09-05</lastmod></url><url><loc>https://www.mscharhag.com/java-ee-mvc/mvcbinding-validation</loc><changefreq>monthly</changefreq><priority>0.8</priority><lastmod>2018-05-28</lastmod></url><url><loc>https://www.mscharhag.com/java/vector-api</loc><changefreq>monthly</changefreq><priority>0.8</priority><lastmod>2021-04-06</lastmod></url><url><loc>https://www.mscharhag.com/grails/whats-new-in-grails-3</loc><changefreq>monthly</changefreq><priority>0.8</priority><lastmod>2015-09-05</lastmod></url><url><loc>https://www.mscharhag.com/java/resource-bundle-single-quote-escaping</loc><changefreq>monthly</changefreq><priority>0.8</priority><lastmod>2015-09-26</lastmod></url><url><loc>https://www.mscharhag.com/spring/spring-retry</loc><changefreq>monthly</changefreq><priority>0.8</priority><lastmod>2016-03-30</lastmod></url><url><loc>https://www.mscharhag.com/java/checking-null-values-with-objects-requiresnonnull</loc><changefreq>monthly</changefreq><priority>0.8</priority><lastmod>2015-08-16</lastmod></url><url><loc>https://www.mscharhag.com/spring/resource-versioning-with-spring-mvc</loc><changefreq>monthly</changefreq><priority>0.8</priority><lastmod>2015-09-21</lastmod></url><url><loc>https://www.mscharhag.com/api-design/rest-making-post-patch-idempotent</loc><changefreq>monthly</changefreq><priority>0.8</priority><lastmod>2021-06-13</lastmod></url><url><loc>https://www.mscharhag.com/java/text-blocks</loc><changefreq>monthly</changefreq><priority>0.8</priority><lastmod>2020-06-03</lastmod></url><url><loc>https://www.mscharhag.com/api-design/http-status-codes</loc><changefreq>monthly</changefreq><priority>0.8</priority><lastmod>2020-07-14</lastmod></url><url><loc>https://www.mscharhag.com/java-ee-mvc/global-exception-handling</loc><changefreq>monthly</changefreq><priority>0.8</priority><lastmod>2016-04-27</lastmod></url><url><loc>https://www.mscharhag.com/java/rocker-template-engine</loc><changefreq>monthly</changefreq><priority>0.8</priority><lastmod>2018-05-18</lastmod></url><url><loc>https://www.mscharhag.com/java/java-resource-bundle-conditions-with-choiceformat</loc><changefreq>monthly</changefreq><priority>0.8</priority><lastmod>2015-09-26</lastmod></url><url><loc>https://www.mscharhag.com/java/java-8-type-annotations</loc><changefreq>monthly</changefreq><priority>0.8</priority><lastmod>2015-09-26</lastmod></url><url><loc>https://www.mscharhag.com/java-ee-mvc/a-detailed-look-on-mvc-controllers</loc><changefreq>monthly</changefreq><priority>0.8</priority><lastmod>2015-10-05</lastmod></url><url><loc>https://www.mscharhag.com/api-design/rest-file-uploads-downloads</loc><changefreq>monthly</changefreq><priority>0.8</priority><lastmod>2021-09-27</lastmod></url><url><loc>https://www.mscharhag.com/java-ee-mvc/ozark-getting-started</loc><changefreq>monthly</changefreq><priority>0.8</priority><lastmod>2020-09-25</lastmod></url><url><loc>https://www.mscharhag.com/kotlin/type-conversion-with-adapters</loc><changefreq>monthly</changefreq><priority>0.8</priority><lastmod>2021-12-14</lastmod></url><url><loc>https://www.mscharhag.com/api-design/rest-retrieving-resources</loc><changefreq>monthly</changefreq><priority>0.8</priority><lastmod>2021-06-06</lastmod></url><url><loc>https://www.mscharhag.com/java-ee-mvc/path-parameters</loc><changefreq>monthly</changefreq><priority>0.8</priority><lastmod>2016-01-31</lastmod></url><url><loc>https://www.mscharhag.com/java-ee-mvc/form-parameters</loc><changefreq>monthly</changefreq><priority>0.8</priority><lastmod>2016-02-22</lastmod></url><url><loc>https://www.mscharhag.com/java-ee-mvc/bean-parameters</loc><changefreq>monthly</changefreq><priority>0.8</priority><lastmod>2016-03-15</lastmod></url><url><loc>https://www.mscharhag.com/java-ee-mvc/query-parameters</loc><changefreq>monthly</changefreq><priority>0.8</priority><lastmod>2016-01-31</lastmod></url><url><loc>https://www.mscharhag.com/architecture/layer-onion-hexagonal-architecture</loc><changefreq>monthly</changefreq><priority>0.8</priority><lastmod>2021-09-20</lastmod></url><url><loc>https://www.mscharhag.com/java/reduce-boilerplate-code-in-java-with-project-lombok</loc><changefreq>monthly</changefreq><priority>0.8</priority><lastmod>2015-09-26</lastmod></url><url><loc>https://www.mscharhag.com/groovy/groovy-shell</loc><changefreq>monthly</changefreq><priority>0.8</priority><lastmod>2015-08-15</lastmod></url><url><loc>https://www.mscharhag.com/software-development/blog-is-live</loc><changefreq>monthly</changefreq><priority>0.8</priority><lastmod>2015-08-12</lastmod></url><url><loc>https://www.mscharhag.com/grails/controller-namespaces-in-grails</loc><changefreq>monthly</changefreq><priority>0.8</priority><lastmod>2015-08-15</lastmod></url><url><loc>https://www.mscharhag.com/api-design/rest-many-to-many-relations</loc><changefreq>monthly</changefreq><priority>0.8</priority><lastmod>2020-09-25</lastmod></url><url><loc>https://www.mscharhag.com/java/dynamic-proxy-pattern</loc><changefreq>monthly</changefreq><priority>0.8</priority><lastmod>2020-09-15</lastmod></url><url><loc>https://www.mscharhag.com/spring/api-gateway-with-spring-cloud-zuul</loc><changefreq>monthly</changefreq><priority>0.8</priority><lastmod>2020-01-30</lastmod></url><url><loc>https://www.mscharhag.com/java/java-lambda-retrolambda</loc><changefreq>monthly</changefreq><priority>0.8</priority><lastmod>2015-09-05</lastmod></url><url><loc>https://www.mscharhag.com/java/regular-expression-matching-latin-script-characters</loc><changefreq>monthly</changefreq><priority>0.8</priority><lastmod>2015-09-26</lastmod></url><url><loc>https://www.mscharhag.com/software-development/using-intellij-bookmarks</loc><changefreq>monthly</changefreq><priority>0.8</priority><lastmod>2015-08-21</lastmod></url><url><loc>https://www.mscharhag.com/intellij/kotlin-operator-navigation</loc><changefreq>monthly</changefreq><priority>0.8</priority><lastmod>2020-06-13</lastmod></url><url><loc>https://www.mscharhag.com/kotlin/infix-functions</loc><changefreq>monthly</changefreq><priority>0.8</priority><lastmod>2020-06-17</lastmod></url><url><loc>https://www.mscharhag.com/software-development/bcrypt-maximum-password-length</loc><changefreq>monthly</changefreq><priority>0.8</priority><lastmod>2017-03-05</lastmod></url><url><loc>https://www.mscharhag.com/api-design/rest-pagination</loc><changefreq>monthly</changefreq><priority>0.8</priority><lastmod>2021-06-18</lastmod></url><url><loc>https://www.mscharhag.com/groovy/closure-composition-in-groovy</loc><changefreq>monthly</changefreq><priority>0.8</priority><lastmod>2015-08-15</lastmod></url><url><loc>https://www.mscharhag.com/java/stream-summary-statistics</loc><changefreq>monthly</changefreq><priority>0.8</priority><lastmod>2018-05-21</lastmod></url><url><loc>https://www.mscharhag.com/grails/gsp-boolean-values</loc><changefreq>monthly</changefreq><priority>0.8</priority><lastmod>2015-08-12</lastmod></url><url><loc>https://www.mscharhag.com/spring/property-references</loc><changefreq>monthly</changefreq><priority>0.8</priority><lastmod>2020-09-09</lastmod></url><url><loc>https://www.mscharhag.com/java/json-schema-validation</loc><changefreq>monthly</changefreq><priority>0.8</priority><lastmod>2020-09-25</lastmod></url><url><loc>https://www.mscharhag.com/java/ocr-tess4j</loc><changefreq>monthly</changefreq><priority>0.8</priority><lastmod>2020-09-25</lastmod></url><url><loc>https://www.mscharhag.com/grails/grails-dependency-injection-inheritance</loc><changefreq>monthly</changefreq><priority>0.8</priority><lastmod>2015-08-15</lastmod></url><url><loc>https://www.mscharhag.com/java/mysql-lower-bug-affects-hibernate-ordering</loc><changefreq>monthly</changefreq><priority>0.8</priority><lastmod>2015-08-13</lastmod></url><url><loc>https://www.mscharhag.com/software-development/pandoc-markdown-to-pdf</loc><changefreq>monthly</changefreq><priority>0.8</priority><lastmod>2016-02-29</lastmod></url><url><loc>https://www.mscharhag.com/spring/spring-method-parameter-validation</loc><changefreq>monthly</changefreq><priority>0.8</priority><lastmod>2021-01-26</lastmod></url><url><loc>https://www.mscharhag.com/java/micrometer-application-metrics</loc><changefreq>monthly</changefreq><priority>0.8</priority><lastmod>2019-12-11</lastmod></url><url><loc>https://www.mscharhag.com/api-design/resource-creation-post</loc><changefreq>monthly</changefreq><priority>0.8</priority><lastmod>2020-06-28</lastmod></url><url><loc>https://www.mscharhag.com/api-design/collection-sorting</loc><changefreq>monthly</changefreq><priority>0.8</priority><lastmod>2020-11-06</lastmod></url><url><loc>https://www.mscharhag.com/api-design/media-types-content-type-header</loc><changefreq>monthly</changefreq><priority>0.8</priority><lastmod>2021-10-06</lastmod></url><url><loc>https://www.mscharhag.com/api-design/rest-one-to-many-relations</loc><changefreq>monthly</changefreq><priority>0.8</priority><lastmod>2020-07-27</lastmod></url><url><loc>https://www.mscharhag.com/api-design/http-post-put-patch</loc><changefreq>monthly</changefreq><priority>0.8</priority><lastmod>2021-05-02</lastmod></url><url><loc>https://www.mscharhag.com/software-development/architecture-validation-with-archunit</loc><changefreq>monthly</changefreq><priority>0.8</priority><lastmod>2020-08-26</lastmod></url><url><loc>https://www.mscharhag.com/tools/shell-json-processing-jq</loc><changefreq>monthly</changefreq><priority>0.8</priority><lastmod>2020-09-21</lastmod></url><url><loc>https://www.mscharhag.com/api-design/http-rest-content-negotiation</loc><changefreq>monthly</changefreq><priority>0.8</priority><lastmod>2021-11-22</lastmod></url><url><loc>https://www.mscharhag.com/api-design/http-idempotent-safe</loc><changefreq>monthly</changefreq><priority>0.8</priority><lastmod>2021-01-26</lastmod></url><url><loc>https://www.mscharhag.com/spring/annotation-composition</loc><changefreq>monthly</changefreq><priority>0.8</priority><lastmod>2020-09-25</lastmod></url><url><loc>https://www.mscharhag.com/architecture/leaking-domain-logic</loc><changefreq>monthly</changefreq><priority>0.8</priority><lastmod>2021-11-01</lastmod></url><url><loc>https://www.mscharhag.com/api-design/rest-partial-updates-patch</loc><changefreq>monthly</changefreq><priority>0.8</priority><lastmod>2021-01-17</lastmod></url><url><loc>https://www.mscharhag.com/spring/json-schema-validation-handlermethodargumentresolver</loc><changefreq>monthly</changefreq><priority>0.8</priority><lastmod>2020-09-25</lastmod></url><url><loc>https://www.mscharhag.com/kotlin/validation-valiktor</loc><changefreq>monthly</changefreq><priority>0.8</priority><lastmod>2020-11-19</lastmod></url><url><loc>https://www.mscharhag.com/api-design/rest-error-format</loc><changefreq>monthly</changefreq><priority>0.8</priority><lastmod>2022-08-10</lastmod></url><url><loc>https://www.mscharhag.com/java/java-8-string-join</loc><changefreq>monthly</changefreq><priority>0.8</priority><lastmod>2020-09-25</lastmod></url><url><loc>https://www.mscharhag.com/intellij/http-client</loc><changefreq>monthly</changefreq><priority>0.8</priority><lastmod>2020-09-25</lastmod></url><url><loc>https://www.mscharhag.com/spring/validation-in-spring-boot-applications</loc><changefreq>monthly</changefreq><priority>0.8</priority><lastmod>2021-02-02</lastmod></url><url><loc>https://www.mscharhag.com/api-design/json-schema</loc><changefreq>monthly</changefreq><priority>0.8</priority><lastmod>2020-08-02</lastmod></url><url><loc>https://www.mscharhag.com/api-design/rest-hateoas-without-links</loc><changefreq>monthly</changefreq><priority>0.8</priority><lastmod>2020-12-01</lastmod></url><url><loc>https://www.mscharhag.com/security/snakeyaml-vulnerability-cve-2022-1471</loc><changefreq>monthly</changefreq><priority>0.8</priority><lastmod>2023-06-06</lastmod></url><url><loc>https://www.mscharhag.com/api-design/rest-concurrent-updates</loc><changefreq>monthly</changefreq><priority>0.8</priority><lastmod>2021-06-13</lastmod></url><url><loc>https://www.mscharhag.com/java/junit5-custom-extensions</loc><changefreq>monthly</changefreq><priority>0.8</priority><lastmod>2020-09-25</lastmod></url><url><loc>https://www.mscharhag.com/kotlin/ktor-getting-started</loc><changefreq>monthly</changefreq><priority>0.8</priority><lastmod>2020-07-08</lastmod></url><url><loc>https://www.mscharhag.com/api-design/rest-deleting-resources</loc><changefreq>monthly</changefreq><priority>0.8</priority><lastmod>2020-09-29</lastmod></url><url><loc>https://www.mscharhag.com/java/jdk14-switch</loc><changefreq>monthly</changefreq><priority>0.8</priority><lastmod>2020-04-20</lastmod></url><url><loc>https://www.mscharhag.com/api-design/rest-uri-design</loc><changefreq>monthly</changefreq><priority>0.8</priority><lastmod>2024-06-16</lastmod></url><url><loc>https://www.mscharhag.com/api-design/rest-asynchronous-operations</loc><changefreq>monthly</changefreq><priority>0.8</priority><lastmod>2020-10-07</lastmod></url><url><loc>https://www.mscharhag.com/api-design/rest-event-feed</loc><changefreq>monthly</changefreq><priority>0.8</priority><lastmod>2020-05-06</lastmod></url><url><loc>https://www.mscharhag.com/kotlin/dependency-injection-koin</loc><changefreq>monthly</changefreq><priority>0.8</priority><lastmod>2021-03-08</lastmod></url><url><loc>https://www.mscharhag.com/p/rest-api-design</loc><changefreq>monthly</changefreq><priority>0.9</priority><lastmod>2021-09-27</lastmod></url><url><loc>https://www.mscharhag.com</loc><changefreq>daily</changefreq><priority>1.0</priority><lastmod>2015-07-20</lastmod></url><url><loc>https://www.mscharhag.com/about</loc><changefreq>monthly</changefreq><priority>0.4</priority><lastmod>2015-07-20</lastmod></url></urlset>