Learn about the breaking changes that went into Java since Java 8 and tools to help you find migration issues when migrating from Java 8 to Java 11/13.
Abstract:
A apresentação centra-se na temática de ter forma de controlar, versionar e actualizar toda a parte de Base de Dados de um projecto. Estamos a falar, desde a produção de modelos ER, a versionamento de scripts, passando pelo deploy dos mesmos e terminado na documentação. A apresentação conta ainda com uma breve demonstração do uso da ferramenta Flyway para versionar e controlar a execução de scripts nos diversos ambientes de um projecto.
Sobre o Nuno Alves:
Chamo-me Nuno Alves nascido em Coimbra, Portugal e vivi maioritariamente em Leiria. Licenciado em Engenharia Informática na ESTG-IPLeiria (Escola Superior de Tecnologia e Gestão) onde o gosto por dados e bases de dados se começou a desenvolver. Daí, profissionalmente a minha área de actuação ser em torno de bases de dados e infra-estruturas. Tenho cerca de 10 anos de experiência repartidos pelas áreas Financeira, Seguros, Governo, Militar em tecnologias que vão desde Oracle, PostgreSQL, MSSQLServer a DB2.
Better Front-end Development in Atlassian PluginsWojciech Seliga
Presentation showing these elements of plugin framework added in 2009 - 2011 which help us write easier much more sexier web 2.0 plugins. The talk then concentrates on Soy as the new templating mechanism which is getting very popular at Atlassian.
Better front-end development in Atlassian pluginsAtlassian
Traditionally the UI of Atlassian plugins have been based on a typical old-school MVC frameworks (webwork, Struts) with little dynamic behaviour. But no more! JIRA Team Lead Wociech Seliga will show you have to develop sexier and more user-friendly plugins based on a modern stack using AUI, Soy templates, Backbone.js and friends.
Are you still stuck in Java EE 5? Eager to move and boost developer productivity with all the cool things introduced in Java EE 7? Attend this session to hear about some of the solutions Tomitribe had to implement to completely migrate an application called Segurnet from Java EE 5 to Java EE 7. Expect a very technical session that delves into the details. Segurnet is a platform held by APS (Portuguese Insurance Association) that has served as an integration network for the insurance sector in Portugal for the last 20 years, with more than 33,000 active users.
One of the key features of JavaFX 2.0 is having full-fledged embedded browser. This enables JavaFX apps to embed web contents, and also to work together with HTML5 apps.
This session focuses on JavaFX's web component, WebEngine, and show how JavaFX can work together with web technologies (HTML/CSS/JavaScript) by using demos and sample codes.
(Session JS1-13 / Apr 4th, JavaOne Tokyo 2012)
Abstract:
A apresentação centra-se na temática de ter forma de controlar, versionar e actualizar toda a parte de Base de Dados de um projecto. Estamos a falar, desde a produção de modelos ER, a versionamento de scripts, passando pelo deploy dos mesmos e terminado na documentação. A apresentação conta ainda com uma breve demonstração do uso da ferramenta Flyway para versionar e controlar a execução de scripts nos diversos ambientes de um projecto.
Sobre o Nuno Alves:
Chamo-me Nuno Alves nascido em Coimbra, Portugal e vivi maioritariamente em Leiria. Licenciado em Engenharia Informática na ESTG-IPLeiria (Escola Superior de Tecnologia e Gestão) onde o gosto por dados e bases de dados se começou a desenvolver. Daí, profissionalmente a minha área de actuação ser em torno de bases de dados e infra-estruturas. Tenho cerca de 10 anos de experiência repartidos pelas áreas Financeira, Seguros, Governo, Militar em tecnologias que vão desde Oracle, PostgreSQL, MSSQLServer a DB2.
Better Front-end Development in Atlassian PluginsWojciech Seliga
Presentation showing these elements of plugin framework added in 2009 - 2011 which help us write easier much more sexier web 2.0 plugins. The talk then concentrates on Soy as the new templating mechanism which is getting very popular at Atlassian.
Better front-end development in Atlassian pluginsAtlassian
Traditionally the UI of Atlassian plugins have been based on a typical old-school MVC frameworks (webwork, Struts) with little dynamic behaviour. But no more! JIRA Team Lead Wociech Seliga will show you have to develop sexier and more user-friendly plugins based on a modern stack using AUI, Soy templates, Backbone.js and friends.
Are you still stuck in Java EE 5? Eager to move and boost developer productivity with all the cool things introduced in Java EE 7? Attend this session to hear about some of the solutions Tomitribe had to implement to completely migrate an application called Segurnet from Java EE 5 to Java EE 7. Expect a very technical session that delves into the details. Segurnet is a platform held by APS (Portuguese Insurance Association) that has served as an integration network for the insurance sector in Portugal for the last 20 years, with more than 33,000 active users.
One of the key features of JavaFX 2.0 is having full-fledged embedded browser. This enables JavaFX apps to embed web contents, and also to work together with HTML5 apps.
This session focuses on JavaFX's web component, WebEngine, and show how JavaFX can work together with web technologies (HTML/CSS/JavaScript) by using demos and sample codes.
(Session JS1-13 / Apr 4th, JavaOne Tokyo 2012)
CDI Best Practices with Real-Life Examples - TUT3287Ahmad Gohar
As the adoption of Contexts and Dependency Injection (CDI) for Java EE API grows, it is important to understand how to use CDI effectively to maximize the benefits of using a loosely coupled, type-safe, annotation-driven dependency injection solution. This session outlines the best practices for using CDI, such as annotations versus XML, @Named as a qualifier, qualifier type safety versus verbosity, effective use of producers/disposers, using scopes properly, best practices for using conversations, defining effective stereotypes, interceptors versus decorators, static versus dynamic injection/lookup, CDI versus Java EE resource injection, using CDI with EJB 3.1, CDI/JSF 2 integration patterns, and CDI/JPA 2 usage patterns.
Van Wilson
Senior Consultant with Cardinal Solutions
Find more by Van Wilson: https://speakerdeck.com/vjwilson
All Things Open
October 26-27, 2016
Raleigh, North Carolina
When it comes to developing enterprise-level web apps using PHP, a laravel development company can be your best business partner. A new version of the framework is also available – Laravel 9. Here you’ll learn more about the framework and what the newest version brings to the table.
Java APIs- The missing manual (concurrency)Hendrik Ebbers
This isn’t a talk about microservices, NoSQL, container solutions or hip new frameworks. This talk will show some of the standard Java APIs that are part of Java since version 5, 6, 7 or 8. All those features are very helpful to create maintainable and future-proof applications, regardless of whether JavaEE, Spring, JavaFX or any other framework is used. The talk will give an overview of some important standard concepts and APIs of Java like annotations, null values and concurrency.
All the Laravel Things – Up & Running to Making $$Joe Ferguson
Come learn about all the tools in the Laravel ecosystem designed to save you time and prevent you from writing the boring cruft needed for every application. We’ll cover getting started with local development, building basic apps, and deploying. We’ll cover how Laravel easily handles vagrant, testing, oauth login services, billing and subscription services through Laravel Spark, and deploying your application with services such as Laravel Envoyer and Forge to manage your servers.
Scaling Indexing and Replication in Jira Data Center AppsAtlassian
Building an app that scales well for Jira Data Center can be challenging, especially with regards to index replication.
Andriy Yakovlev, a Principal Premier Support Engineer at Atlassian will share some common problems customers have experienced with apps on large instances, and how to prevent them.
Attendees will learn about how indexing works in Jira, and how indexes are replicated in Jira Data Center, as well as what to look out for to prevent problems before they happen.
All the Laravel things: up and running to making $$Joe Ferguson
Laravel 5 has established itself as one of the best PHP rapid application development frameworks. Come learn about all the tools in the Laravel ecosystem designed to save you time and prevent you from writing the boring cruft you have to write for every application. We'll cover getting started with local development, building a basic application, and deploying to production. We'll review how Laravel easily handles vagrant, testing, oauth login services, billing and subscriptions services through Laravel Spark, and deploying your application with services such as Laravel Envoyer and Forge to manage your servers.
Beyond Fluffy Bunny. How I leveraged WebObjects in my lean startup.WO Community
This session will go over why I chose WO and WOnder as my application foundation, and how I applied the best practices from some of the best in our business to build my product. How I setup my applications and frameworks to maximize reuse and flexibility. And I will review other processes that allows me to run my business as a one plus (?) person shop.
Laravel Forge: Hello World to Hello ProductionJoe Ferguson
With the recent release of Laravel Forge, Envoyer and Homestead, it has never been easier to go from nothing to something with an easy to use PHP Framework. This talk will cover creating a basic Laravel application using the Laravel specific Vagrant box "Homestead", connecting to a server (Linode, Rackspace, Digital Ocean), and deploying the application via Forge. The talk will also cover tips and tricks on customizing Homestead to fit custom needs as well as how to use Forge & Envoyer to deploy new versions of our application.
MidwestPHP 2016 - Adventures in Laravel 5 Joe Ferguson
With the release of Laravel 5 there are a lot of new toys to play with. We'll cover the new features and how to start using them in your applications. We'll be covering the new directory structure, changes in blade templates, commands and events, form requests, helpers, route caching and middlewares, controller method injection, migrating from Laravel 4, and more! We will also discuss changes to Illuminate packages and the new Elixir, Socialite, and Contracts packages.
Video recording: https://youtu.be/JyKZEiVCBto
Learn about the breaking changes that went into Java since Java 8 and tools to help you find migration issues when migrating from Java 8 to Java 11 and later.
Presentation Abstract:
Are your applications running on Java 8? Thinking about switching your application to run on Java 11 and wondering about where to start? Come to this session to learn about the most impactful changes that went into Java 11 and what you will need to do to move your application to run on Java 11. Topics will include the removal of APIs (such as Java EE packages) and behavior changes resulting from moving an application from running on Java 8 to running on Java 11. We will also go over tools to use that will help you identify potential issues within your application and how to resolve them.
CDI Best Practices with Real-Life Examples - TUT3287Ahmad Gohar
As the adoption of Contexts and Dependency Injection (CDI) for Java EE API grows, it is important to understand how to use CDI effectively to maximize the benefits of using a loosely coupled, type-safe, annotation-driven dependency injection solution. This session outlines the best practices for using CDI, such as annotations versus XML, @Named as a qualifier, qualifier type safety versus verbosity, effective use of producers/disposers, using scopes properly, best practices for using conversations, defining effective stereotypes, interceptors versus decorators, static versus dynamic injection/lookup, CDI versus Java EE resource injection, using CDI with EJB 3.1, CDI/JSF 2 integration patterns, and CDI/JPA 2 usage patterns.
Van Wilson
Senior Consultant with Cardinal Solutions
Find more by Van Wilson: https://speakerdeck.com/vjwilson
All Things Open
October 26-27, 2016
Raleigh, North Carolina
When it comes to developing enterprise-level web apps using PHP, a laravel development company can be your best business partner. A new version of the framework is also available – Laravel 9. Here you’ll learn more about the framework and what the newest version brings to the table.
Java APIs- The missing manual (concurrency)Hendrik Ebbers
This isn’t a talk about microservices, NoSQL, container solutions or hip new frameworks. This talk will show some of the standard Java APIs that are part of Java since version 5, 6, 7 or 8. All those features are very helpful to create maintainable and future-proof applications, regardless of whether JavaEE, Spring, JavaFX or any other framework is used. The talk will give an overview of some important standard concepts and APIs of Java like annotations, null values and concurrency.
All the Laravel Things – Up & Running to Making $$Joe Ferguson
Come learn about all the tools in the Laravel ecosystem designed to save you time and prevent you from writing the boring cruft needed for every application. We’ll cover getting started with local development, building basic apps, and deploying. We’ll cover how Laravel easily handles vagrant, testing, oauth login services, billing and subscription services through Laravel Spark, and deploying your application with services such as Laravel Envoyer and Forge to manage your servers.
Scaling Indexing and Replication in Jira Data Center AppsAtlassian
Building an app that scales well for Jira Data Center can be challenging, especially with regards to index replication.
Andriy Yakovlev, a Principal Premier Support Engineer at Atlassian will share some common problems customers have experienced with apps on large instances, and how to prevent them.
Attendees will learn about how indexing works in Jira, and how indexes are replicated in Jira Data Center, as well as what to look out for to prevent problems before they happen.
All the Laravel things: up and running to making $$Joe Ferguson
Laravel 5 has established itself as one of the best PHP rapid application development frameworks. Come learn about all the tools in the Laravel ecosystem designed to save you time and prevent you from writing the boring cruft you have to write for every application. We'll cover getting started with local development, building a basic application, and deploying to production. We'll review how Laravel easily handles vagrant, testing, oauth login services, billing and subscriptions services through Laravel Spark, and deploying your application with services such as Laravel Envoyer and Forge to manage your servers.
Beyond Fluffy Bunny. How I leveraged WebObjects in my lean startup.WO Community
This session will go over why I chose WO and WOnder as my application foundation, and how I applied the best practices from some of the best in our business to build my product. How I setup my applications and frameworks to maximize reuse and flexibility. And I will review other processes that allows me to run my business as a one plus (?) person shop.
Laravel Forge: Hello World to Hello ProductionJoe Ferguson
With the recent release of Laravel Forge, Envoyer and Homestead, it has never been easier to go from nothing to something with an easy to use PHP Framework. This talk will cover creating a basic Laravel application using the Laravel specific Vagrant box "Homestead", connecting to a server (Linode, Rackspace, Digital Ocean), and deploying the application via Forge. The talk will also cover tips and tricks on customizing Homestead to fit custom needs as well as how to use Forge & Envoyer to deploy new versions of our application.
MidwestPHP 2016 - Adventures in Laravel 5 Joe Ferguson
With the release of Laravel 5 there are a lot of new toys to play with. We'll cover the new features and how to start using them in your applications. We'll be covering the new directory structure, changes in blade templates, commands and events, form requests, helpers, route caching and middlewares, controller method injection, migrating from Laravel 4, and more! We will also discuss changes to Illuminate packages and the new Elixir, Socialite, and Contracts packages.
Video recording: https://youtu.be/JyKZEiVCBto
Learn about the breaking changes that went into Java since Java 8 and tools to help you find migration issues when migrating from Java 8 to Java 11 and later.
Presentation Abstract:
Are your applications running on Java 8? Thinking about switching your application to run on Java 11 and wondering about where to start? Come to this session to learn about the most impactful changes that went into Java 11 and what you will need to do to move your application to run on Java 11. Topics will include the removal of APIs (such as Java EE packages) and behavior changes resulting from moving an application from running on Java 8 to running on Java 11. We will also go over tools to use that will help you identify potential issues within your application and how to resolve them.
Making The Move To Java 17 (JConf 2022)Alex Motley
Are your applications still running on Java 8 or even older, unsupported versions? Or maybe you've already made the move to Java 11? Thinking about switching your application to run on Java 17 and not sure where to start? There is a lot to think about when it comes to planning a Java migration, but there are tools and strategies that can help! Come to this session to learn about the significant changes in Java that might impact your application. Topics include the removal of APIs (such as Java EE packages) and behavior changes resulting from moving an application running previous Java versions to Java 17. Learn about tools to use that help you identify potential issues within your application and how to resolve them! The discussion is informative to developers and system administrations who are interested in evaluating applications before they are migrated and while making the code changes.
Lara Technologies are pleased to introduce ourselves as a trusted organization in providing Software Training Division. JAVA/J2EE, ANDROID, WEB SERVICES, LOGICAL CODING, BASICS OF C LANGUAGE, SOFT SKILLS, APTITUDE etc. located in Bangalore. We have 9 years of experience in training students in Java/J2EE and project driving stream.
Java is the class-based and object-oriented programming language. In java, you can write once and run anywhere means WORA. Here get the Top 6 new features in Java 2019.
Java Platform, Enterprise Edition 6 (Java EE 6) is the new, improved release of Java EE 5 with new features and a corresponding release of GlassFish v3.
GraphSummit Paris - The art of the possible with Graph TechnologyNeo4j
Sudhir Hasbe, Chief Product Officer, Neo4j
Join us as we explore breakthrough innovations enabled by interconnected data and AI. Discover firsthand how organizations use relationships in data to uncover contextual insights and solve our most pressing challenges – from optimizing supply chains, detecting fraud, and improving customer experiences to accelerating drug discoveries.
Providing Globus Services to Users of JASMIN for Environmental Data AnalysisGlobus
JASMIN is the UK’s high-performance data analysis platform for environmental science, operated by STFC on behalf of the UK Natural Environment Research Council (NERC). In addition to its role in hosting the CEDA Archive (NERC’s long-term repository for climate, atmospheric science & Earth observation data in the UK), JASMIN provides a collaborative platform to a community of around 2,000 scientists in the UK and beyond, providing nearly 400 environmental science projects with working space, compute resources and tools to facilitate their work. High-performance data transfer into and out of JASMIN has always been a key feature, with many scientists bringing model outputs from supercomputers elsewhere in the UK, to analyse against observational or other model data in the CEDA Archive. A growing number of JASMIN users are now realising the benefits of using the Globus service to provide reliable and efficient data movement and other tasks in this and other contexts. Further use cases involve long-distance (intercontinental) transfers to and from JASMIN, and collecting results from a mobile atmospheric radar system, pushing data to JASMIN via a lightweight Globus deployment. We provide details of how Globus fits into our current infrastructure, our experience of the recent migration to GCSv5.4, and of our interest in developing use of the wider ecosystem of Globus services for the benefit of our user community.
Cyaniclab : Software Development Agency Portfolio.pdfCyanic lab
CyanicLab, an offshore custom software development company based in Sweden,India, Finland, is your go-to partner for startup development and innovative web design solutions. Our expert team specializes in crafting cutting-edge software tailored to meet the unique needs of startups and established enterprises alike. From conceptualization to execution, we offer comprehensive services including web and mobile app development, UI/UX design, and ongoing software maintenance. Ready to elevate your business? Contact CyanicLab today and let us propel your vision to success with our top-notch IT solutions.
In software engineering, the right architecture is essential for robust, scalable platforms. Wix has undergone a pivotal shift from event sourcing to a CRUD-based model for its microservices. This talk will chart the course of this pivotal journey.
Event sourcing, which records state changes as immutable events, provided robust auditing and "time travel" debugging for Wix Stores' microservices. Despite its benefits, the complexity it introduced in state management slowed development. Wix responded by adopting a simpler, unified CRUD model. This talk will explore the challenges of event sourcing and the advantages of Wix's new "CRUD on steroids" approach, which streamlines API integration and domain event management while preserving data integrity and system resilience.
Participants will gain valuable insights into Wix's strategies for ensuring atomicity in database updates and event production, as well as caching, materialization, and performance optimization techniques within a distributed system.
Join us to discover how Wix has mastered the art of balancing simplicity and extensibility, and learn how the re-adoption of the modest CRUD has turbocharged their development velocity, resilience, and scalability in a high-growth environment.
Large Language Models and the End of ProgrammingMatt Welsh
Talk by Matt Welsh at Craft Conference 2024 on the impact that Large Language Models will have on the future of software development. In this talk, I discuss the ways in which LLMs will impact the software industry, from replacing human software developers with AI, to replacing conventional software with models that perform reasoning, computation, and problem-solving.
Check out the webinar slides to learn more about how XfilesPro transforms Salesforce document management by leveraging its world-class applications. For more details, please connect with sales@xfilespro.com
If you want to watch the on-demand webinar, please click here: https://www.xfilespro.com/webinars/salesforce-document-management-2-0-smarter-faster-better/
May Marketo Masterclass, London MUG May 22 2024.pdfAdele Miller
Can't make Adobe Summit in Vegas? No sweat because the EMEA Marketo Engage Champions are coming to London to share their Summit sessions, insights and more!
This is a MUG with a twist you don't want to miss.
Globus Connect Server Deep Dive - GlobusWorld 2024Globus
We explore the Globus Connect Server (GCS) architecture and experiment with advanced configuration options and use cases. This content is targeted at system administrators who are familiar with GCS and currently operate—or are planning to operate—broader deployments at their institution.
Unleash Unlimited Potential with One-Time Purchase
BoxLang is more than just a language; it's a community. By choosing a Visionary License, you're not just investing in your success, you're actively contributing to the ongoing development and support of BoxLang.
In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...Juraj Vysvader
In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I didn't get rich from it but it did have 63K downloads (powered possible tens of thousands of websites).
Utilocate offers a comprehensive solution for locate ticket management by automating and streamlining the entire process. By integrating with Geospatial Information Systems (GIS), it provides accurate mapping and visualization of utility locations, enhancing decision-making and reducing the risk of errors. The system's advanced data analytics tools help identify trends, predict potential issues, and optimize resource allocation, making the locate ticket management process smarter and more efficient. Additionally, automated ticket management ensures consistency and reduces human error, while real-time notifications keep all relevant personnel informed and ready to respond promptly.
The system's ability to streamline workflows and automate ticket routing significantly reduces the time taken to process each ticket, making the process faster and more efficient. Mobile access allows field technicians to update ticket information on the go, ensuring that the latest information is always available and accelerating the locate process. Overall, Utilocate not only enhances the efficiency and accuracy of locate ticket management but also improves safety by minimizing the risk of utility damage through precise and timely locates.
Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...Globus
Large Language Models (LLMs) are currently the center of attention in the tech world, particularly for their potential to advance research. In this presentation, we'll explore a straightforward and effective method for quickly initiating inference runs on supercomputers using the vLLM tool with Globus Compute, specifically on the Polaris system at ALCF. We'll begin by briefly discussing the popularity and applications of LLMs in various fields. Following this, we will introduce the vLLM tool, and explain how it integrates with Globus Compute to efficiently manage LLM operations on Polaris. Attendees will learn the practical aspects of setting up and remotely triggering LLMs from local machines, focusing on ease of use and efficiency. This talk is ideal for researchers and practitioners looking to leverage the power of LLMs in their work, offering a clear guide to harnessing supercomputing resources for quick and effective LLM inference.
Listen to the keynote address and hear about the latest developments from Rachana Ananthakrishnan and Ian Foster who review the updates to the Globus Platform and Service, and the relevance of Globus to the scientific community as an automation platform to accelerate scientific discovery.
Gamify Your Mind; The Secret Sauce to Delivering Success, Continuously Improv...Shahin Sheidaei
Games are powerful teaching tools, fostering hands-on engagement and fun. But they require careful consideration to succeed. Join me to explore factors in running and selecting games, ensuring they serve as effective teaching tools. Learn to maintain focus on learning objectives while playing, and how to measure the ROI of gaming in education. Discover strategies for pitching gaming to leadership. This session offers insights, tips, and examples for coaches, team leads, and enterprise leaders seeking to teach from simple to complex concepts.
Software Engineering, Software Consulting, Tech Lead.
Spring Boot, Spring Cloud, Spring Core, Spring JDBC, Spring Security,
Spring Transaction, Spring MVC,
Log4j, REST/SOAP WEB-SERVICES.
Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...Mind IT Systems
Healthcare providers often struggle with the complexities of chronic conditions and remote patient monitoring, as each patient requires personalized care and ongoing monitoring. Off-the-shelf solutions may not meet these diverse needs, leading to inefficiencies and gaps in care. It’s here, custom healthcare software offers a tailored solution, ensuring improved care and effectiveness.
Navigating the Metaverse: A Journey into Virtual Evolution"Donna Lenk
Join us for an exploration of the Metaverse's evolution, where innovation meets imagination. Discover new dimensions of virtual events, engage with thought-provoking discussions, and witness the transformative power of digital realms."
Developing Distributed High-performance Computing Capabilities of an Open Sci...Globus
COVID-19 had an unprecedented impact on scientific collaboration. The pandemic and its broad response from the scientific community has forged new relationships among public health practitioners, mathematical modelers, and scientific computing specialists, while revealing critical gaps in exploiting advanced computing systems to support urgent decision making. Informed by our team’s work in applying high-performance computing in support of public health decision makers during the COVID-19 pandemic, we present how Globus technologies are enabling the development of an open science platform for robust epidemic analysis, with the goal of collaborative, secure, distributed, on-demand, and fast time-to-solution analyses to support public health.
2. ABOUT ME
MigrationTools Dev Lead @IBM
Team Goal: painless migrations for Java apps
Banks, retail, insurance, etc
MigrationTooling Development
Java migrations (Since Java 5)
On-premise to Cloud
Application Server Development
Open Liberty
WebSphere Application Server
10. WHY MIGRATE?
• New Java 11+ features
• var for local variables (JEP 286)
• New methods in classes (Collection, etc) (JEP 269)
• Launch Single-File Source-Code Programs (JEP 330)
33. OUT-OF-DATE
DEPENDENCIES
Libraries (ASM, Mockito, Spring, etc)
Build Tools (Gradle, Maven, etc)
IDE (Eclipse, IntelliJ,VS Code, etc)
Application servers (OpenLiberty, JBoss,WebLogic, etc)
My advice: take this time to upgrade your dependencies to
the latest supported version. Setup automation tools.
35. MODULARITY
Java Platform Module System
(JPMS)
Breaks code into modules containing packages
Applications must declare dependency on modules for access
Disruptive for Java SE application migrations
“Kill switch” on by default
(currently)
--illegal-access=permit
My Advice: when first migrating to
Java 11+, keep the “kill switch” on
38. TOOLING
• Download: http://ibm.biz/WAMT4AppBinaries
• Command line tool (free personal and commercial use)
• Scans an application for migration issues and produces a report with identified problems, solutions and resource links
• Documentation
Application Binary Scanner Tool
• Command utility shipped with JDK (run with the target Java version – Java 11+)
• Migration Relevant Option: -jdkinternals
• Binary scanner will recommend running JDeps if it identifies internal APIs
• Documentation
JDeps
• Use an auto-upgrade dependency tool to keep your dependencies up-to-date
• Example: dependabot
Tools to automate dependency updates (various options)
40. NEXT STEPS
Step 1
Try running your app on Java 11+. If your app runs successfully, you can skip the next two steps.
Step 2
Debug your Java 11+ migration issues or run the application binary scanner tool.
java -jar binaryAppScanner.jar C:AppsMyApplication.jar --analyzeJavaSE --sourceJava=oracle8 --targetJava=java11
(Help command: java -jar binaryAppScanner.jar --help --analyzeJavaSE)
Step 3
Fix your application code or build files. Repeat steps 1-3.
Step 4
Update your dependencies and tools as needed.
Step 5
Run all your application tests.
Step 6
Celebrate!
Let me know if the tools helped….or didn’t! (@DaliaShea)
41. REFERENCES
• My Blog on adding the Java 11+ feature to the migration tools (written instructions on running binary scanner):
https://developer.ibm.com/tutorials/migration-to-java-11-made-easy/
• Binary Scanner: https://developer.ibm.com/wasdev/downloads/#asset/tools-Migration_Toolkit_for_Application_Binaries
• Tool documentation and videos - see the « additional information » section
• Eclipse IDE Plugin Source Scanner: https://developer.ibm.com/wasdev/downloads/#asset/tools-
WebSphere_Application_Server_Migration_Toolkit
• Tool documentation and videos - see the « additional information » section
• Video of how to migrate to Java 11 using the Eclipse IDE source scanner: https://youtu.be/m-l9eu4AAq4
• Link to the java11demo GitHub repo: https://github.com/daliasheasha/java11demo
• JVM Ecosystem Report 2020: https://snyk.io/blog/jvm-ecosystem-report-2020/
• Oracle Java SE Support Roadmap: https://www.oracle.com/technetwork/java/java-se-support-roadmap.html
• Migrating from Oracle Java to AdoptOpenJDK: https://adoptopenjdk.net/MigratingtoAdoptOpenJDKfromOracleJava.pdf
• Andy Guibert’s blog on OpenLiberty Java 11+ support: https://openliberty.io/blog/2019/02/06/java-11.html