{"id":133627,"date":"2019-05-10T14:53:23","date_gmt":"2019-05-10T06:53:23","guid":{"rendered":"https:\/\/www.baeldung.com\/?p=53582"},"modified":"2019-05-10T14:53:23","modified_gmt":"2019-05-10T06:53:23","slug":"java-weekly-issue-280","status":"publish","type":"post","link":"https:\/\/itteacheritfreelance.hk\/test\/wordpress\/2019\/05\/10\/java-weekly-issue-280\/","title":{"rendered":"Java Weekly, Issue 280"},"content":{"rendered":"<p><strong>Here we go\u2026<\/strong><\/p>\n<h2><strong>1. Spring and Java<\/strong><\/h2>\n<h4><a href=\"https:\/\/techblog.bozho.net\/multiple-cache-configurations-with-caffeine-and-spring-boot\/\"  rel=\"noopener noreferrer\"><strong>&gt;&gt; Multiple Cache Configurations with Caffeine and Spring Boot<\/strong><\/a> [<span style=\"color: #993300;\">techblog.bozho.net<\/span>]<\/h4>\n<p>A novel extension of the <em>CaffeineCacheManager<\/em> lets you <strong>configure caches with different specs, all managed by the same <em>CacheManager<\/em><\/strong>. Very cool.<\/p>\n<h4><a href=\"https:\/\/www.petrikainulainen.net\/programming\/testing\/running-kotlin-tests-with-gradle\/\"  rel=\"noopener noreferrer\"><strong>&gt;&gt; Running Kotlin Tests With Gradle<\/strong><\/a> [<span style=\"color: #993300;\">petrikainulainen.net<\/span>]<\/h4>\n<p>With a bit of configuration, you can run both unit and integration tests in Kotlin \u2014 or either in isolation \u2014 during a Gradle build.<\/p>\n<h4><a href=\"https:\/\/www.infoq.com\/news\/2019\/05\/end-of-javax-package\"  rel=\"noopener noreferrer\"><strong>&gt;&gt; Eclipse and Oracle Unable to Agree on Terms for javax Package Namespace and Trademarks<\/strong><\/a> [<span style=\"color: #993300;\">infoq.com<\/span>]<\/h4>\n<p>And a mind-boggling decision results in <strong>a clear departure from the long history of Java SE and EE compatibility<\/strong>. And <a href=\"https:\/\/eclipse-foundation.blog\/2019\/05\/08\/jakarta-ee-8-faq\/\">some of the FAQ<\/a> on the developing situation.<\/p>\n<p>&nbsp;<\/p>\n<h4><strong>Also worth reading:<\/strong><\/h4>\n<ul>\n<li>\n<h4><a href=\"https:\/\/blog.sebastian-daschner.com\/entries\/thoughts-on-jakarta-package-name\"  rel=\"noopener noreferrer\"><strong>&gt;&gt; Thoughts on the Jakarta EE package name change<\/strong><\/a> [<span style=\"color: #993300;\">blog.sebastian-daschner.com<\/span>]<\/h4>\n<\/li>\n<li>\n<h4><a href=\"https:\/\/www.infoq.com\/news\/2019\/05\/spring-cloud-pluggable-circuit\"  rel=\"noopener noreferrer\"><strong>&gt;&gt; Spring Cloud Introduces Pluggable Circuit-Breaker Interface<\/strong><\/a> [<span style=\"color: #993300;\">infoq.com<\/span>]<\/h4>\n<\/li>\n<li>\n<h4><a href=\"https:\/\/vladmihalcea.com\/hibernate-statistics-jmx\/\"  rel=\"noopener noreferrer\"><strong>&gt;&gt; How to expose Hibernate Statistics via JMX<\/strong><\/a> [<span style=\"color: #993300;\">vladmihalcea.com<\/span>]<\/h4>\n<\/li>\n<li>\n<h4><a href=\"https:\/\/tomitribe4.wpengine.com\/blog\/5-minutes-or-less-activemq-with-jms-queues-and-topics\/\"  rel=\"noopener noreferrer\"><strong>&gt;&gt; 5 Minutes or Less: ActiveMQ with JMS Queues and Topics<\/strong><\/a> [<span style=\"color: #993300;\">tomitribe4.wpengine.com<\/span>]<\/h4>\n<\/li>\n<li>\n<h4><a href=\"https:\/\/www.vojtechruzicka.com\/idea-edu-tools\/\"  rel=\"noopener noreferrer\"><strong>&gt;&gt; IDEA EduTools: Learning directly in your IDE<\/strong><\/a> [<span style=\"color: #993300;\">vojtechruzicka.com<\/span>]<\/h4>\n<\/li>\n<li>\n<h4><a href=\"https:\/\/www.infoq.com\/news\/2019\/05\/apache-netbeans?utm_campaign=infoq_content&amp;utm_source=infoq&amp;utm_medium=feed&amp;utm_term=Java\"  rel=\"noopener noreferrer\"><strong>&gt;&gt; NetBeans Promoted to Top-Level Apache Project<\/strong><\/a> [<span style=\"color: #993300;\">infoq.com<\/span>]<\/h4>\n<\/li>\n<\/ul>\n<h4><strong>Webinars and presentations:<\/strong><\/h4>\n<ul>\n<li>\n<h4><a href=\"https:\/\/www.infoq.com\/presentations\/java-8-plus\"  rel=\"noopener noreferrer\"><strong>&gt;&gt; Life Beyond Java 8<\/strong><\/a> [<span style=\"color: #993300;\">infoq.com<\/span>]<\/h4>\n<\/li>\n<li>\n<h4><a href=\"https:\/\/spring.io\/blog\/2019\/05\/08\/spring-tips-reactive-web-views\"  rel=\"noopener noreferrer\"><strong>&gt;&gt; Spring Tips: Reactive Web Views<\/strong><\/a> [<span style=\"color: #993300;\">spring.io<\/span>]<\/h4>\n<\/li>\n<li>\n<h4><a href=\"https:\/\/spring.io\/blog\/2019\/05\/03\/a-bootiful-podcast-spring-cloud-engineer-olga-maciaszek-sharma\"  rel=\"noopener noreferrer\"><strong>&gt;&gt; A Bootiful Podcast: Spring Cloud Engineer Olga Maciaszek-Sharma<\/strong><\/a> [<span style=\"color: #993300;\">spring.io<\/span>]<\/h4>\n<\/li>\n<li>\n<h4><a href=\"https:\/\/www.infoq.com\/presentations\/java-science-aerospace\"  rel=\"noopener noreferrer\"><strong>&gt;&gt; Otherworldly Java: Gateway to the Moon and Beyond<\/strong><\/a> [<span style=\"color: #993300;\">infoq.com<\/span>]<\/h4>\n<\/li>\n<li>\n<h4><a href=\"https:\/\/www.infoq.com\/presentations\/graal-jit-c2\"  rel=\"noopener noreferrer\"><strong>&gt;&gt; Graal: Not Just a New JIT for the JVM<\/strong><\/a> [<span style=\"color: #993300;\">infoq.com<\/span>]<\/h4>\n<\/li>\n<li>\n<h4><a href=\"https:\/\/www.infoq.com\/presentations\/yugabytedb\"  rel=\"noopener noreferrer\"><strong>&gt;&gt; YugaByte DB &#8211; A Planet-Scale Database for Low Latency Transactional Apps<\/strong><\/a> [<span style=\"color: #993300;\">infoq.com<\/span>]<\/h4>\n<\/li>\n<li>\n<h4><a href=\"https:\/\/www.infoq.com\/presentations\/evaluate-devsecops-tools\"  rel=\"noopener noreferrer\"><strong>&gt;&gt; Many DevSecOps Tools are Just DevOps Lipstick on an Old Pig<\/strong><\/a> [<span style=\"color: #993300;\">infoq.com<\/span>]<\/h4>\n<\/li>\n<\/ul>\n<h4><strong>Time to upgrade:<\/strong><\/h4>\n<ul>\n<li>\n<h4><a href=\"https:\/\/spring.io\/blog\/2019\/05\/07\/spring-boot-for-apache-geode-pivotal-gemfire-1-0-0-release-available\"  rel=\"noopener noreferrer\"><strong>&gt;&gt; Spring Boot for Apache Geode &amp; Pivotal GemFire 1.0.0.RELEASE Available!<\/strong><\/a> [<span style=\"color: #993300;\">spring.io<\/span>]<\/h4>\n<\/li>\n<li>\n<h4><a href=\"http:\/\/in.relation.to\/2019\/05\/02\/hibernate-search-6-0-0-Alpha5\/\"  rel=\"noopener noreferrer\"><strong>&gt;&gt; Hibernate Search 6.0.0.Alpha5 released!<\/strong><\/a> [<span style=\"color: #993300;\">in.relation.to<\/span>]<\/h4>\n<\/li>\n<li>\n<h4><a href=\"https:\/\/www.infoq.com\/news\/2019\/04\/kotlin-1.3.30\"  rel=\"noopener noreferrer\"><strong>&gt;&gt; Kotlin 1.3.30 Brings Kotlin\/Native and KAPT Improvements, and More<\/strong><\/a> [<span style=\"color: #993300;\">infoq.com<\/span>]<\/h4>\n<\/li>\n<li>\n<h4><a href=\"http:\/\/andresalmiray.com\/announcing-oci-gradle-plugin-version-0-1-0\/\"  rel=\"noopener noreferrer\"><strong>&gt;&gt; Announcing oci-gradle-plugin version 0.1.0<\/strong><\/a> [<span style=\"color: #993300;\">andresalmiray.com<\/span>]<\/h4>\n<\/li>\n<\/ul>\n<p>&nbsp;<\/p>\n<h2><strong>2. Technical and Musings<\/strong><\/h2>\n<h4><a href=\"https:\/\/www.tomitribe.com\/blog\/surviving-the-frequency-of-open-source-vulnerabilities\/\"  rel=\"noopener noreferrer\"><strong>&gt;&gt; Surviving the Frequency of Open Source Vulnerabilities<\/strong><\/a> [<span style=\"color: #993300;\">tomitribe.com<\/span>]<\/h4>\n<p>With an estimated half of all web sites containing critical security vulnerabilities, <strong>no company is immune from cyberattacks<\/strong>.<\/p>\n<h4><a href=\"https:\/\/advancedweb.hu\/2019\/05\/07\/cf_workflows\/\"  rel=\"noopener noreferrer\"><strong>&gt;&gt; CloudFormation CLI workflows<\/strong><\/a> [<span style=\"color: #993300;\">advancedweb.hu<\/span>]<\/h4>\n<p>And though managing stacks via the console is tedious at best, <strong>a few basic tools and scripts can take away some of the pain<\/strong>.<\/p>\n<p>&nbsp;<\/p>\n<h4><strong>Also worth reading:<\/strong><\/h4>\n<ul>\n<li>\n<h4><strong><a href=\"https:\/\/vanwilgenburg.wordpress.com\/2019\/05\/03\/writing-integration-tests-for-cors-headers-with-karate\/\"  rel=\"noopener noreferrer\">&gt;&gt; Writing integration tests for CORS headers (with Karate)<\/a><\/strong> [<span style=\"color: #993300;\">vanwilgenburg.wordpress.com<\/span>]<\/h4>\n<\/li>\n<li>\n<h4><strong><a href=\"https:\/\/medium.com\/feedzaitech\/writing-testable-code-b3201d4538eb\">&gt;&gt; Writing Testable Code<\/a> <\/strong>[<span style=\"color: #993300;\">medium.com<\/span>]<\/h4>\n<\/li>\n<li>\n<h4><a href=\"https:\/\/lizkeogh.com\/2019\/05\/06\/on-multiple-givens-whens-and-thens\/\"  rel=\"noopener noreferrer\"><strong>&gt;&gt; On Multiple Givens, Whens and Thens<\/strong><\/a> [<span style=\"color: #993300;\">lizkeogh.com<\/span>]<\/h4>\n<\/li>\n<li>\n<h4><strong><a href=\"https:\/\/www.infoq.com\/news\/2019\/05\/google-cloud-code\"  rel=\"noopener noreferrer\">&gt;&gt; Google Announces Cloud Code: Extending IntelliJ and Visual Studio Code to Kubernetes Apps<\/a><\/strong> [<span style=\"color: #993300;\">infoq.com<\/span>]<\/h4>\n<\/li>\n<li>\n<h4><a href=\"https:\/\/blog.frankel.ch\/cherry-pick-automation-bash\/\"  rel=\"noopener noreferrer\"><strong>&gt;&gt; Cherry-pick automation with Bash<\/strong><\/a> [<span style=\"color: #993300;\">blog.frankel.ch<\/span>]<\/h4>\n<\/li>\n<li>\n<h4><a href=\"https:\/\/morethancoding.com\/2019\/05\/08\/lets-replace-the-term-technical-debt\/\"  rel=\"noopener noreferrer\"><strong>&gt;&gt; Let\u2019s Replace the Term \u201cTechnical Debt\u201d<\/strong><\/a> [<span style=\"color: #993300;\">morethancoding.com<\/span>]<\/h4>\n<\/li>\n<li>\n<h4><a href=\"https:\/\/mtlynch.io\/painless-web-app-testing\/\"><strong>&gt;&gt; End-to-End Testing Web Apps: The Painless Way<\/strong><\/a> [<span style=\"color: #993300;\">mtlynch.io<\/span>]<\/h4>\n<\/li>\n<\/ul>\n<p>&nbsp;<\/p>\n<h2><strong>3. Comics<\/strong><\/h2>\n<p>And my favorite Dilberts of the week:<\/p>\n<h4><strong><a href=\"https:\/\/dilbert.com\/strip\/2019-05-08\"  rel=\"noopener noreferrer\">&gt;&gt; Paying the Replacement More<\/a><\/strong> [<span style=\"color: #993300;\">dilbert.com<\/span>]<\/h4>\n<h4><strong><a href=\"https:\/\/dilbert.com\/strip\/2019-05-07\"  rel=\"noopener noreferrer\">&gt;&gt; Dogbert Narrates<\/a><\/strong> [<span style=\"color: #993300;\">dilbert.com<\/span>]<\/h4>\n<h4><strong><a href=\"https:\/\/dilbert.com\/strip\/2019-05-04\"  rel=\"noopener noreferrer\">&gt;&gt; Engineers Don&#8217;t Lie<\/a><\/strong> [<span style=\"color: #993300;\">dilbert.com<\/span>]<\/h4>\n<p>&nbsp;<\/p>\n<h2><strong>4. Pick of the Week<\/strong><\/h2>\n<h4><strong><a href=\"https:\/\/www.schneier.com\/blog\/archives\/2019\/05\/protecting_your_2.html\">&gt;&gt; Protecting Yourself from Identity Theft<\/a> <\/strong>[<span style=\"color: #993300;\">schneier.com<\/span>]<\/h4>\n<p><span style=\"font-weight: 400;\"><\/span><\/p>\n","protected":false},"excerpt":{"rendered":"<p>An interesting week in the Java ecosystem, as the Eclipse Foundation wrestles control of the javax.* package namespace completely away from Oracle.&nbsp;<a href=\"https:\/\/www.baeldung.com\/java-weekly-280\" title=\"Java Weekly, Issue 280\">&gt;&gt;&gt;<\/a> <a href=\"https:\/\/itteacheritfreelance.hk\/test\/wordpress\/2019\/05\/10\/java-weekly-issue-280\/\">\u95b1\u8b80\u5168\u6587 <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":142,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"jetpack_post_was_ever_published":false,"slim_seo":[],"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":true,"jetpack_social_options":{"image_generator_settings":{"template":"highway","enabled":false}}},"categories":[2,315,2149,7],"tags":[398,402,397,414,413,410,409,407,408,11,406,399,400,394,318,375,558,560,555,561,553,554,562,524,10,401,396,381,403,412,411,395,405,404,457,454,316],"jetpack_publicize_connections":[],"aioseo_notices":[],"jetpack_featured_media_url":"","jetpack_shortlink":"https:\/\/wp.me\/p7prtj-yLh","jetpack-related-posts":[],"jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/itteacheritfreelance.hk\/test\/wordpress\/wp-json\/wp\/v2\/posts\/133627"}],"collection":[{"href":"https:\/\/itteacheritfreelance.hk\/test\/wordpress\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/itteacheritfreelance.hk\/test\/wordpress\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/itteacheritfreelance.hk\/test\/wordpress\/wp-json\/wp\/v2\/users\/142"}],"replies":[{"embeddable":true,"href":"https:\/\/itteacheritfreelance.hk\/test\/wordpress\/wp-json\/wp\/v2\/comments?post=133627"}],"version-history":[{"count":2,"href":"https:\/\/itteacheritfreelance.hk\/test\/wordpress\/wp-json\/wp\/v2\/posts\/133627\/revisions"}],"predecessor-version":[{"id":150531,"href":"https:\/\/itteacheritfreelance.hk\/test\/wordpress\/wp-json\/wp\/v2\/posts\/133627\/revisions\/150531"}],"wp:attachment":[{"href":"https:\/\/itteacheritfreelance.hk\/test\/wordpress\/wp-json\/wp\/v2\/media?parent=133627"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/itteacheritfreelance.hk\/test\/wordpress\/wp-json\/wp\/v2\/categories?post=133627"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/itteacheritfreelance.hk\/test\/wordpress\/wp-json\/wp\/v2\/tags?post=133627"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}