This document provides an overview of Apache Tamaya, an open source project that aims to define a common API for accessing configuration in Java applications in a flexible, pluggable, and extensible way. It discusses the history and objectives of Tamaya, core concepts like the configuration interface and property sources, and various extensions. The document also presents use cases around areas like accessing configuration similarly across different runtimes, reducing redundancy, enforcing configuration policies, and integrating enterprise configurations. Finally, it demonstrates Tamaya's configuration injection and template capabilities.
Configure Your Projects with Apache TamayaAnatole Tresch
Anatole Tresch and Werner Keil from Trivadis AG presented on Apache Tamaya, an open source configuration management library. They discussed the need for a common configuration API, Tamaya's core concepts including property sources and combination policies, and its extensible plugin architecture. The presentation demonstrated Tamaya's API and how it can be used to access configuration data from various sources in a type-safe manner.
Configuration for Java EE: Config JSR and TamayaDmitry Kornilov
Slides from our joint talk with Werner Keil about configuration proposal for Java EE and Tamaya we've done on 16 Mov 2016 in Sofia on Java2Days conference.
The document discusses proposed changes to Java EE 8 and beyond. It proposes adding support for reactive programming, a unified event model, eventual consistency, NoSQL persistence and querying, and security enhancements like OAuth2 and secret management. It also discusses packaging improvements and making Java EE more suitable for cloud and microservices development. Feedback is sought from the Java EE community on the proposals.
If you use scripting languages to power web, mobile, and/or enterprise applications, this session will show you how to use Oracle Database efficiently. It demonstrates how PHP can take full advantage of new performance, scalability, availability, and security features in Oracle Database 12c and Oracle Linux. Many of these features are available to other C-based scripting languages too, like Ruby, Python and Perl. DBA's will also benefit by seeing how applications can be monitored.
Native REST Web Services with Oracle 11gMarcelo Ochoa
This document provides an overview and summary of using native REST web services with Oracle 11g:
1) It discusses REST (REpresentational State Transfer) and the Restlet framework for building REST applications in Java. The Restlet framework includes an XDB Restlet adapter to integrate with Oracle XML DB.
2) It demonstrates creating a simple REST application using the XDB adapter and Restlet framework with sample Java resource classes to represent users, orders, and order items.
3) It shows how to register the REST application with Oracle XML DB, test the application using HTTP requests, and benchmark the performance of caching.
This document provides an overview of Apache Tamaya, an open source project that aims to define a common API for accessing configuration in Java applications in a flexible, pluggable, and extensible way. It discusses the history and objectives of Tamaya, core concepts like the configuration interface and property sources, and various extensions. The document also presents use cases around areas like accessing configuration similarly across different runtimes, reducing redundancy, enforcing configuration policies, and integrating enterprise configurations. Finally, it demonstrates Tamaya's configuration injection and template capabilities.
Configure Your Projects with Apache TamayaAnatole Tresch
Anatole Tresch and Werner Keil from Trivadis AG presented on Apache Tamaya, an open source configuration management library. They discussed the need for a common configuration API, Tamaya's core concepts including property sources and combination policies, and its extensible plugin architecture. The presentation demonstrated Tamaya's API and how it can be used to access configuration data from various sources in a type-safe manner.
Configuration for Java EE: Config JSR and TamayaDmitry Kornilov
Slides from our joint talk with Werner Keil about configuration proposal for Java EE and Tamaya we've done on 16 Mov 2016 in Sofia on Java2Days conference.
The document discusses proposed changes to Java EE 8 and beyond. It proposes adding support for reactive programming, a unified event model, eventual consistency, NoSQL persistence and querying, and security enhancements like OAuth2 and secret management. It also discusses packaging improvements and making Java EE more suitable for cloud and microservices development. Feedback is sought from the Java EE community on the proposals.
If you use scripting languages to power web, mobile, and/or enterprise applications, this session will show you how to use Oracle Database efficiently. It demonstrates how PHP can take full advantage of new performance, scalability, availability, and security features in Oracle Database 12c and Oracle Linux. Many of these features are available to other C-based scripting languages too, like Ruby, Python and Perl. DBA's will also benefit by seeing how applications can be monitored.
Native REST Web Services with Oracle 11gMarcelo Ochoa
This document provides an overview and summary of using native REST web services with Oracle 11g:
1) It discusses REST (REpresentational State Transfer) and the Restlet framework for building REST applications in Java. The Restlet framework includes an XDB Restlet adapter to integrate with Oracle XML DB.
2) It demonstrates creating a simple REST application using the XDB adapter and Restlet framework with sample Java resource classes to represent users, orders, and order items.
3) It shows how to register the REST application with Oracle XML DB, test the application using HTTP requests, and benchmark the performance of caching.
Seminar Sehari
PHP Indonesia
Saturday, 5th May 2012
Pelajari lebih lanjut tentang PHP+Oracle di http://pojokprogrammer.net
Related Content:
http://pojokprogrammer.net/search/node/oracle
JAX-RS is a Java API that allows developers to easily build RESTful web services. It uses annotations to define resources, HTTP methods, request and response content types. Resources are identified by URIs and linked together through hypermedia. The API supports content negotiation, multiple representations, and stateless communication as defined by the REST architectural style. Jersey is a popular open source JAX-RS implementation that also provides a client API for consuming RESTful services.
This document discusses the Performance Schema in MySQL, which records instrumentation data to help profile and monitor database activity. It provides an overview of the Performance Schema's components and tables, how it has evolved between MySQL versions to include more metrics and functionality, and examples of how to query the tables to analyze wait events, statements, stages and other performance data.
This tutorial shows how to develop painless web applications using PHP and Oracle Database 11g. It covers connecting to the database, fetching and displaying data, using bind variables, creating transactions, and more. The document provides code examples for each task and instructions for running the code. It assumes basic PHP knowledge and aims to help developers get started integrating PHP with an Oracle database.
The document provides an overview of MySQL including:
- MySQL is an open-source relational database management system that runs as a server providing multi-user access to databases.
- MySQL 5.6 introduced improvements to performance, scalability, InnoDB, optimization, replication, and added new capabilities like NoSQL access to InnoDB and a MySQL Hadoop applier.
- MySQL Enterprise Edition offers additional high availability, security, scalability, and monitoring features over the community version through components like the MySQL Thread Pool which improves scalability as user connections grow.
Oracle Office Hours - Exposing REST services with APEX and ORDSDoug Gault
This document provides an overview and agenda for exposing RESTful services using Oracle Application Express (APEX) and Oracle REST Data Services (ORDS). It begins with a brief introduction to REST concepts and then discusses the history of supporting REST in APEX and ORDS. The document outlines the key components and APIs available in ORDS for enabling schemas and defining REST modules, templates and handlers to expose database objects and custom services via REST. It also provides examples of enabling the schema and using auto-REST to expose database tables through REST.
The document advertises Oracle database books and resources from O'Reilly including titles on Oracle performance optimization, SQL and PL/SQL programming, application servers, and DBA guides. It also provides links to the O'Reilly online book catalog and developer portal for Oracle and other emerging technologies, where readers can find book samples, code examples, and information on new platforms.
Solving Performance Problems Using MySQL Enterprise MonitorOracleMySQL
The document discusses using MySQL Enterprise Monitor to diagnose performance problems in a Group Replication cluster. It demonstrates creating a 3-node replication cluster using sandbox instances, loading sample data, and issuing problematic queries. It then shows how the Monitor identifies different types of performance issues from the query analyzer and detected events, including queries with full table scans, sorts, long-running queries, and replication outages.
The document provides an overview of Java EE 7 APIs supported in WebLogic Server 12c, including JAX-RS 2.0, JSON Processing API 1.0, Java Persistence API 2.1, and Java API for WebSocket 1.0. It discusses how these APIs are enabled and configured in WebLogic 12c. It also describes key features of the APIs such as asynchronous processing in JAX-RS 2.0, schema generation in JPA 2.1, and developing WebSocket applications using the Java API for WebSocket 1.0.
Web application performance correlates with page views. Find out in this session how to maximize the performance of the OCI8 database extension to build fast, scalable web sites and attract users. Includes discussion of Oracle Database 11.2 and the upcoming PHP OCI8 1.4 extension.
This document provides an overview of key considerations and new features for upgrading to Oracle Database 12c. It discusses checking and potentially updating initialization parameters, applying the latest bundle patches, enabling new authentication protocols for client connections, using the new SQLCL tool instead of SQL*Plus, and configuring the free Oracle Enterprise Manager Express product for database management and monitoring. It also mentions new features for the Oracle Automatic Storage Management cluster and the introduction of a management repository for storing cluster metrics.
This is one of the 15 minute "TED" style talk presented as part of the Database Symposium at the ODTUG Kscope18 conference. In this presentation @SQLMaria coveres topics like what data type you should use to store JSON documents (varchar2, clob or blob) the pro's and con's of using an IS JSON check constraint, and how to load, index, and query JSON documents.
This document discusses MySQL partitioning, including when and why to use partitioning, different types of partitioning, and how to manage partitions. It covers using partitioning for faster deletion of data by dropping partitions, faster queries through partition pruning, and making some operations like adding indexes faster by performing them on individual partitions rather than entire tables. It provides examples and best practices for using partitioning for both short and long term rolling of data.
Expose your data as an api is with oracle rest data services -spoug MadridVinay Kumar
This document provides information about Vinay Kumar and the topics he will discuss at SPOUG18-Madrid, including:
- An introduction to Oracle REST Data Services (ORDS) architecture and how it maps HTTP requests to SQL queries and transforms results to JSON.
- Best practices for using ORDS, including defining modules and templates, mapping URLs to SQL, connection pooling, and publishing APIs.
- How ORDS enables RESTful access to relational database content by allowing developers to declaratively map HTTP methods like GET, POST, PUT, DELETE to SQL operations.
MySQL 5.7 includes several new features that improve performance, replication, and high availability. Key features include performance improvements from the performance schema and optimizer enhancements, replication improvements like multi-source replication and transaction-based parallel replication, and InnoDB improvements such as online operations and general tablespaces.
Instrumenting plugins for Performance SchemaMark Leith
This document discusses how to instrument plugins for the MySQL Performance Schema to provide visibility into plugin operations and avoid "black holes" in performance data. It covers the main interfaces for instrumenting threads, file/memory/network operations. An example audit plugin is provided that instruments mutexes, files, stages. The Performance Schema output shows the staged, waited events for a query.
The 5.5 and 5.6 releases of MySQL introduce several new mechanisms that provide improved monitoring and performance tuning functionality. Examples are performance schemas, InnoDB metrics tables, optimizer trace, and extended explain functionality. This session outlines the vision for monitoring-related functionality in MySQL and presents an overview of the new mechanisms. It shows how these are integrated with MySQL management tools. Furthermore, it discusses how these mechanisms can be utilized by application developers, DBAs, and production engineers for tracking down performance issues and monitoring production systems.
Seminar Sehari
PHP Indonesia
Saturday, 5th May 2012
Pelajari lebih lanjut tentang PHP+Oracle di http://pojokprogrammer.net
Related Content:
http://pojokprogrammer.net/search/node/oracle
JAX-RS is a Java API that allows developers to easily build RESTful web services. It uses annotations to define resources, HTTP methods, request and response content types. Resources are identified by URIs and linked together through hypermedia. The API supports content negotiation, multiple representations, and stateless communication as defined by the REST architectural style. Jersey is a popular open source JAX-RS implementation that also provides a client API for consuming RESTful services.
This document discusses the Performance Schema in MySQL, which records instrumentation data to help profile and monitor database activity. It provides an overview of the Performance Schema's components and tables, how it has evolved between MySQL versions to include more metrics and functionality, and examples of how to query the tables to analyze wait events, statements, stages and other performance data.
This tutorial shows how to develop painless web applications using PHP and Oracle Database 11g. It covers connecting to the database, fetching and displaying data, using bind variables, creating transactions, and more. The document provides code examples for each task and instructions for running the code. It assumes basic PHP knowledge and aims to help developers get started integrating PHP with an Oracle database.
The document provides an overview of MySQL including:
- MySQL is an open-source relational database management system that runs as a server providing multi-user access to databases.
- MySQL 5.6 introduced improvements to performance, scalability, InnoDB, optimization, replication, and added new capabilities like NoSQL access to InnoDB and a MySQL Hadoop applier.
- MySQL Enterprise Edition offers additional high availability, security, scalability, and monitoring features over the community version through components like the MySQL Thread Pool which improves scalability as user connections grow.
Oracle Office Hours - Exposing REST services with APEX and ORDSDoug Gault
This document provides an overview and agenda for exposing RESTful services using Oracle Application Express (APEX) and Oracle REST Data Services (ORDS). It begins with a brief introduction to REST concepts and then discusses the history of supporting REST in APEX and ORDS. The document outlines the key components and APIs available in ORDS for enabling schemas and defining REST modules, templates and handlers to expose database objects and custom services via REST. It also provides examples of enabling the schema and using auto-REST to expose database tables through REST.
The document advertises Oracle database books and resources from O'Reilly including titles on Oracle performance optimization, SQL and PL/SQL programming, application servers, and DBA guides. It also provides links to the O'Reilly online book catalog and developer portal for Oracle and other emerging technologies, where readers can find book samples, code examples, and information on new platforms.
Solving Performance Problems Using MySQL Enterprise MonitorOracleMySQL
The document discusses using MySQL Enterprise Monitor to diagnose performance problems in a Group Replication cluster. It demonstrates creating a 3-node replication cluster using sandbox instances, loading sample data, and issuing problematic queries. It then shows how the Monitor identifies different types of performance issues from the query analyzer and detected events, including queries with full table scans, sorts, long-running queries, and replication outages.
The document provides an overview of Java EE 7 APIs supported in WebLogic Server 12c, including JAX-RS 2.0, JSON Processing API 1.0, Java Persistence API 2.1, and Java API for WebSocket 1.0. It discusses how these APIs are enabled and configured in WebLogic 12c. It also describes key features of the APIs such as asynchronous processing in JAX-RS 2.0, schema generation in JPA 2.1, and developing WebSocket applications using the Java API for WebSocket 1.0.
Web application performance correlates with page views. Find out in this session how to maximize the performance of the OCI8 database extension to build fast, scalable web sites and attract users. Includes discussion of Oracle Database 11.2 and the upcoming PHP OCI8 1.4 extension.
This document provides an overview of key considerations and new features for upgrading to Oracle Database 12c. It discusses checking and potentially updating initialization parameters, applying the latest bundle patches, enabling new authentication protocols for client connections, using the new SQLCL tool instead of SQL*Plus, and configuring the free Oracle Enterprise Manager Express product for database management and monitoring. It also mentions new features for the Oracle Automatic Storage Management cluster and the introduction of a management repository for storing cluster metrics.
This is one of the 15 minute "TED" style talk presented as part of the Database Symposium at the ODTUG Kscope18 conference. In this presentation @SQLMaria coveres topics like what data type you should use to store JSON documents (varchar2, clob or blob) the pro's and con's of using an IS JSON check constraint, and how to load, index, and query JSON documents.
This document discusses MySQL partitioning, including when and why to use partitioning, different types of partitioning, and how to manage partitions. It covers using partitioning for faster deletion of data by dropping partitions, faster queries through partition pruning, and making some operations like adding indexes faster by performing them on individual partitions rather than entire tables. It provides examples and best practices for using partitioning for both short and long term rolling of data.
Expose your data as an api is with oracle rest data services -spoug MadridVinay Kumar
This document provides information about Vinay Kumar and the topics he will discuss at SPOUG18-Madrid, including:
- An introduction to Oracle REST Data Services (ORDS) architecture and how it maps HTTP requests to SQL queries and transforms results to JSON.
- Best practices for using ORDS, including defining modules and templates, mapping URLs to SQL, connection pooling, and publishing APIs.
- How ORDS enables RESTful access to relational database content by allowing developers to declaratively map HTTP methods like GET, POST, PUT, DELETE to SQL operations.
MySQL 5.7 includes several new features that improve performance, replication, and high availability. Key features include performance improvements from the performance schema and optimizer enhancements, replication improvements like multi-source replication and transaction-based parallel replication, and InnoDB improvements such as online operations and general tablespaces.
Instrumenting plugins for Performance SchemaMark Leith
This document discusses how to instrument plugins for the MySQL Performance Schema to provide visibility into plugin operations and avoid "black holes" in performance data. It covers the main interfaces for instrumenting threads, file/memory/network operations. An example audit plugin is provided that instruments mutexes, files, stages. The Performance Schema output shows the staged, waited events for a query.
The 5.5 and 5.6 releases of MySQL introduce several new mechanisms that provide improved monitoring and performance tuning functionality. Examples are performance schemas, InnoDB metrics tables, optimizer trace, and extended explain functionality. This session outlines the vision for monitoring-related functionality in MySQL and presents an overview of the new mechanisms. It shows how these are integrated with MySQL management tools. Furthermore, it discusses how these mechanisms can be utilized by application developers, DBAs, and production engineers for tracking down performance issues and monitoring production systems.
The days of JNI is counted, Project Panama is on the rise to tear down the walls between Java and C/C++ forever. FFI (Foreign Function Interface) technology finally arrives into the Java world.
10 Things You Didn’t Know About Mobile Email from Litmus & HubSpotHubSpot
The document discusses key insights about mobile email usage and optimization. It shows that mobile email opens have grown 600% from 2011-2016, with over 70% of emails now being opened on mobile devices. When emails look bad on mobile, over 80% of users will still read them. The document provides tips for optimizing elements like preview text, links, text sizes, touch targets, and layouts for mobile. It also discusses different mobile email design approaches and resources for templates.
This document summarizes diversity data from HubSpot in 2016. It shows the breakdown of employees by gender, age, ethnicity, and management level across different departments. While diversity is still lacking, especially in technical roles and leadership, progress was made in 2016 with increases in female representation and hiring of underrepresented ethnic groups. Continued efforts are needed to create a more inclusive workforce.
The lack of visible female role models is pervasive in the tech industry, particularly on Wikipedia, where just under 17% of Wikipedia biographies were on women. That's why HubSpot wrote fourteen Wikipedia entries for remarkable women in tech to help inspire young women to reach positions at the highest levels of STEM.
Le PIM, levier d'une transformation digitale réussie et efficace (Akeneo + Eram)Fred de GOMBERT
Retour d'experience d'Eram sur la mise en oeuvre du PIM Akeneo dans le cadre de leur replatforming e-commerce.
Conférence donnée à l'occasion du salon Ecommerce One to One Monaco 2017
The document discusses Irish whiskey, including its production process, differences from Scotch whiskey, popular brands, and service. Irish whiskey is distilled from malted and unmalted cereals like barley in Ireland. The production involves steeping, malting, fermentation, distillation, and a minimum of 3 years of maturation in oak casks in Ireland. Compared to Scotch, Irish whiskey does not use peat and is distilled three times instead of twice. Popular Irish whiskey brands include Jameson, Bushmills, and Tullamore Dew.
React is a library for building user interfaces using components. It uses a virtual DOM for rendering components, which are pieces of UI defined as classes or functions. Components receive data via props and local state, and can be nested to build complex UIs. The component lifecycle includes mounting, updating, and unmounting phases. Data flows unidirectionally down the component tree. React has a vibrant ecosystem and community for continued learning.
How to Use Mobile to Build a Brand Customers Love - Digital Summit SeattleApptentive
In his talk for Digital Summit Seattle, Robi Ganguly, Co-founder and CEO of Apptentive, shares how companies can use mobile to build customer relationships and improve the customer experience.
El documento describe los principios de la didáctica crítica para la enseñanza del inglés. Establece tres fases de aprendizaje: apertura con una introducción al tema, desarrollo a través de contenidos y aplicaciones, y cierre con una evaluación. Luego, detalla las actividades de una clase de inglés para principiantes enfocada en presentaciones y pronunciación, utilizando explicaciones, ejemplos auditivos y visuales, y ejercicios prácticos entre compañeros. El objetivo es generar un ambiente de
Resumo de direito previdenciário 2016 concurso inssecalmont
Este documento fornece um resumo esquematizado do direito previdenciário atualizado em janeiro de 2016 para o concurso do INSS. Ele cobre os principais assuntos cobrados nos últimos concursos, como benefícios previdenciários, legislação constitucional da seguridade social e artigos da Constituição Federal relacionados à saúde e previdência. O material foi elaborado com base em cursos preparatórios e em editais anteriores para técnicos do INSS.
This document presents 27 images showing the negative effects of human activity and lifestyle choices on the environment. The images depict overdeveloped cities, deforestation, pollution, wildlife extinction, climate change impacts like melting ice caps, and other examples of how human actions are endangering nature. Collectively, the photos provide a powerful visual message about the damage being done and the urgent need to address these issues.
Configuration with Microprofile and Apache TamayaAnatole Tresch
This document discusses configuration in computing systems. It defines configuration as parameters and settings that control the behavior of computer programs. It can describe hardware, software, and documentation arrangements. Configuration is commonly stored in files and can be accessed via APIs or dependency injection. It discusses standards like Microprofile and Apache Tamaya, which provide APIs to access configuration from various sources like system properties, environment variables, and files. Configuration can be accessed at different stages from development to runtime.
What's cool in the new and updated OSGi Specs (EclipseCon 2014)David Bosschaert
Presentation given by Carsten Ziegeler and me at EclipseCon 2014 in Burlingame (CA) about ongoing specification work in OSGi, covering the Core Platform Expert Group (CPEG) and the Enterprise Expert Group (EEG)
Introduction to Everit Component Registry - B Zsoldosmfrancis
OSGi Community Event 2014
Abstract:
Everit Component Registry is an amazingly simple yet powerful new open source Component Model. The primary goal of its concept is to allow more configuration options via Configuration Admin and by doing that, offer an alternative to the de-facto standard, whiteboard pattern.
The implementation of Everit Component Registry is in progress. The goal of the session is to
show the status of the project
talk about all the ideas that came up till now
collect about new ideas and weaknesses with the help of the audience
See the most important parts of the concept below:
Configuration via Configuration Admin The concept is similar to Declarative Services. Every configuration should be done via Configuration Admin.
Reference clauses Instead of a simple OSGi filter, references of these components can be configured with clause(s). By doing that it is possible to specify attributes of the binding on the consumer side. The OSGi filter is only a directive of the clause. E.g.: Imagine a ServletContext component that accepts Servlet OSGi services. A clause that selects a servlet can be the following:
myServlet;filter:=(...);mapping=/my/*;init_param1=value1
Cardinality The following cardinalities are supported: 0..1, 1..1, 0..N, 1..N. The choice must be made in the source code. In case of 0..1 and 1..1 cardinality, the type of the clause configuration property is String. In case of 0..N and 1..N the type is String[].
Optionality There is no optional support like in Declarative Services. In case the cardinality is 0..1 or 0..N, it can be configured via Configuration Admin if a service should be picked up or not. In case one ore more clause is defined via ConfigAdmin, all of the clauses must be satisfied.
Dynamism If it is allowed by the programmer of the component, the reference can be updated without restarting the component instance.
Programmability Sub-status and message can be dropped from activate() and deactivate() methods. By doing that, it is possible to get more information in the console about the state of the component (E.g.: unsatisfied programmatic requirements).
New component classes and already instantiated objects can be registered programmatically. By doing that, existing Component Model logic can be mixed with the new concept.
Avoiding magic Using proxy instances, bytecode manipulation, runtime inheritance and other tricks is strictly forbidden. Injected service objects are not “enhanced”, they should be used as they are.
Speaker Bio:
Balazs Zsoldos is the co-founder of Everit. He is the leader of the development of Everit OpenSource Components. Developing Java based solutions is not only his job but also his passion.
He believes in simplicity. That is why he decided to design and build as many simple, but useful goal-oriented modules as he can. As the base of the stack, he chose OSGi.
Balazs does not believe in monoholitic frameworks, therefore all of the sol
Jetpack, with new features in 2021 GDG Georgetown IO ExtendedToru Wonyoung Choi
Jetpack released new features in 2021 including:
- Compose integrations with libraries like Hilt, Paging, and Navigation.
- Improvements to CameraX, Room, DataStore, Navigation, and other libraries.
- New libraries like AppSearch, Macrobenchmark, and Google Shortcuts.
- Support for additional form factors with updates to libraries like Window and Wear.
- Many libraries reached stable versions or added new capabilities in alpha/beta stages.
The document discusses dependency injection and declarative services in OSGi. It provides an overview of different implementations of dependency injection in OSGi including Declarative Services, iPOJO, Spring DM, and Peaberry. It then focuses on Declarative Services version 1.0 and 1.1, describing the component lifecycle, configuration, and use of XML descriptors and annotations. Key upcoming changes in version 1.1 include more flexible component lifecycle method signatures and support for private properties.
The document provides an overview of new concepts and features in Java EE 6, including profiles like Web Profile 1.0 that define subsets of the platform, new specifications like Managed Beans 1.0 and Interceptors 1.1, and updates to existing specifications such as EJB 3.1, JPA 2.0, Servlet 3.0, and JSF 2.0. It discusses concepts like pruning of specifications, portable JNDI names, embeddable containers, and the move of Facelets as the preferred view definition language for JSF.
This document discusses new features and improvements in Spring 4. It covers Java 8 support including lambda expressions, date/time API updates, and optional types. It also summarizes core container improvements like meta annotations, generic qualifiers, and conditional bean configuration. General web improvements involving the @RestController annotation and Jackson serialization views are outlined. Testing improvements such as active profile resolution and the SocketUtils class are also mentioned.
The document discusses annotation processing in Java. Annotation processing allows annotations to be inspected at compile time and to generate code. It works by having an annotation processor implement the Processor interface and process annotations. The processor can find annotated elements, generate Java code using APIs like JavaPoet, and write the generated code files so they are available to the compiler. An example project called HolyFragment is described that uses annotation processing to generate helper code for fragments annotated with a custom @Holy annotation.
This document summarizes new features in Spring 3 and 3.1 for component-based application design. Spring 3 focuses on annotation-based components while also supporting concise XML configurations. Key features include stereotypes, factory methods, expression language support, standardized annotations, validation, formatting, scheduling, and REST support. Spring 3.1 enhances environments with profiles for bean definitions, enables Java-based configuration, adds a "c:" namespace for XML, and introduces declarative caching capabilities.
Slice: OpenJPA for Distributed PersistencePinaki Poddar
The document discusses Slice, an OpenJPA module that allows JPA applications to use distributed, horizontally partitioned databases in a transparent manner. It describes how Slice works under the hood to enable features like parallel query execution across database partitions, replication of master data, and distribution policies to determine which partition a given object is stored in. The document provides examples of configuring Slice and developing distribution policies.
Griffon is a desktop application framework inspired by Grails that leverages Swing and Groovy. It follows conventions like convention over configuration and pervasive MVC. Griffon emphasizes writing modular code, automated testing, and deploying applications easily to applets, webstart, or desktop without code changes. The presentation discusses porting legacy apps to Griffon by embracing its tenets like data binding, simpler layout managers like MigLayout, and using SwingWorker for long background tasks.
The document discusses managing configuration settings across different environments when deploying web applications. It describes using web.config transformations to maintain a single configuration file with environment-specific settings. The transformations are applied during deployment to the target environment. MS Deploy is also mentioned as a tool that can deploy applications and synchronize configurations remotely.
This document provides an overview and introduction to Spring Boot. It discusses:
- The goals of Spring Boot to provide a faster setup process and default configurations without needing XML.
- Key features like auto-configuration, embedded servlet containers, and the use of starters for common dependencies.
- Conventions for project structure, main application classes, and defining beans.
- How to configure databases, implement JPA repositories, and build REST APIs with Spring MVC and data REST.
- Tips for testing Spring applications and building executable JAR files for deployment.
This document provides an overview and introduction to Spring Boot. It discusses:
- The goals of Spring Boot to provide a faster setup process and default configurations without needing XML.
- Key features like auto-configuration, embedded servlet containers, and the use of starters for common dependencies.
- Conventions in Spring Boot for project structure, main classes, configuration properties, and more.
- How to set up a Spring Boot project using Maven, including using the spring-boot-starter-parent and starter POMs.
- Support in Spring Boot for Spring MVC, data access with JPA/Spring Data, REST services, and testing.
The document provides an overview of the Struts 1.1 framework. It introduces Struts and describes its core components - the controller, model, and view. It discusses how Struts implements the MVC pattern and follows the JSP Model 2 architecture. It highlights some of the key features of Struts 1.1, including internationalization support, tag libraries, and configuration. It also provides an example of building a sample application called Beer4All to demonstrate how to use Struts.
Jakarta Concurrency provides APIs for concurrency and asynchronous programming in Java EE and Jakarta EE applications. It allows adding asynchronous breaks and running tasks in parallel or periodically. New features in Jakarta EE 10 include deployable managed executor services and scheduled executor services. Future plans include better integration with CDI contexts and aligning asynchronous servlets and JAX-RS with Concurrency. Developers are encouraged to get involved in the open source Eclipse project.
This document provides an overview of Spring Boot, a framework for creating stand-alone, production-grade Spring based applications. It discusses how Spring Boot aims to make it easy to create Spring applications with default configurations and minimal code. The key topics covered include: using Maven and Gradle build tools with Spring Boot, common features and conventions like auto-configuration and main application classes, Spring Data and JPA for database access, Spring MVC features for web applications, and testing Spring applications.
A detailed overview presentation on Java EE Connector Architecture 1.6 (JSR 322) Technology that was released recently as part of Java EE 6.
See http://blogs.sun.com/sivakumart/entry/java_ee_connector_architecture_1 for the announcement and http://jcp.org/en/jsr/detail?id=322 for the JSR.
This presentation was originally delivered in JavaOne 2009, San Francisco and has detailed presentation notes.
The document discusses configuration in Java applications. It provides an overview of configuration concepts, the configuration lifecycle, popular configuration runtime systems like Apache Tamaya and Microprofile Config, and how to access and manage configuration data programmatically. It also describes configuration backends that connect configuration systems to different data sources, as well as extension services that provide additional functionality.
Wie man Applikationen nicht bauen sollte...Anatole Tresch
Immer wieder hört man, wie man Applikationen und Lösungen den richtig baut. Wieso also nicht mal den Spiess umkehren und ansehen, was so alles passieren kann, wenn Architektur und Prozesse eben nicht optimal gelebt werden. Dann heisst es zurücklehnen, schmunzeln und zufrieden sein, wenn es im eigenen Projekt nicht ganz so schlimm ist...
How should IT architecture look like in the ages of Cloud and Devops? How do the changes and the technological evolution of the last years affect our systems and processes? Why is innovation and digitalization important? What means 'cloud-native', how should I build my solutions? To anwer these questions we will look at the "Big Five": Microservices and Containers, cloud and DevOps and finally BigData, IoT and last-but-not-least artificial intelligence.
In diesem Vortrag gehen wir der Frage nach, wie IT Architektur im Zeitalter von Cloud und DevOps ausgestaltet werden soll. Welchen Einfluss haben die Veränderungen und Fortschritte der letzten Jahre auf Systeme und Prozesse. Wieso sind Innovation und Digitalisierung so wichtig? Was bedeutet 'cloud-native' eigentlich und wie soll ich denn nun meine Anwendungen bauen? Dazu sehen wir uns fünf Innovationsbereiche etwas näher an und analysieren ihren Einfluss auf unsere IT- und Lösungsarchitektur: Microservices und Container, Cloud und DevOps, BigData, IoT und last-but-not-least künstliche Intelligenz.
The document discusses deploying Java microservices applications to Kubernetes. It covers running a sample Spring Boot app in Docker containers, then deploying it and its MongoDB dependency to a local Kubernetes cluster using Minishift. It also discusses using the Fabric8 Maven plugin to simplify building Docker images and generating Kubernetes manifests from a Maven project. Helm is introduced as a way to package full applications and dependencies for Kubernetes.
The document discusses containers and Docker. It provides an overview of containers and how they solve compatibility issues like those encountered in shipping cargo. Docker is presented as a container system for code that provides many of the same benefits as physical containers, like portability and isolation of applications and dependencies. Examples are given of how Docker can be used by developers and operations teams.
The document discusses building resilience into software systems. It defines resilience as the ability to recover from failures or adversity. Complex distributed systems are prone to failures due to their interconnected nature. To maximize availability, systems should be designed to minimize downtime after failures through resilient patterns like asynchronous communications, isolation, and failure containment. The presentation provides examples of how frameworks like Hystrix, Akka, Vertx, and Spring Boot can help implement resilience techniques in Java systems.
Tamaya is an Apache project that provides a configuration API for Java applications. It allows configuration to be stored in various sources like files, databases, or remote servers and provides a unified way to access configuration through a simple API. This allows applications to be configured once but run anywhere, regardless of the runtime environment. The presentation demonstrated how Tamaya's API works and how extensions allow additional configuration backends and features. It also showed how Tamaya aims to provide a complete, extensible but lightweight solution for configuration in Java applications.
Legacy Renewal of Central Framework in the EnterpriseAnatole Tresch
Speak done at GeeCon and other Conferences in 2014 showing an experience report of some of the complexities to be faced when changing commonly used frameworks and runtime components in Credit Suisse and how issues were solved finally.
This document introduces the JSR 354 Java Money and Currency API. It provides an overview of key aspects of the API including currencies, monetary amounts, monetary context, currency conversion, and extension points. The agenda outlines possible hackday topics ranging from easy to hard, such as building a money machine application, adding new functionalities to the reference implementation, handling Bitcoin and other currencies, and improving performance.
The presentation introduces JSR 354 (Currency and Money). It will discuss the API from a user perspective, and gives details on the design decisions done. The presentation will demonstrate how the JSR models monetary capabilities, monetary amounts, currencies, roundings, financial arithmetics as well as formatting and currency conversion in a platform independent and flexible way.
The presentation is targeting more advanced developers being interested in modeling financial concerns in Java and advanced API design in general.
Programming Foundation Models with DSPy - Meetup SlidesZilliz
Prompting language models is hard, while programming language models is easy. In this talk, I will discuss the state-of-the-art framework DSPy for programming foundation models with its powerful optimizers and runtime constraint system.
HCL Notes and Domino License Cost Reduction in the World of DLAUpanagenda
Webinar Recording: https://www.panagenda.com/webinars/hcl-notes-and-domino-license-cost-reduction-in-the-world-of-dlau/
The introduction of DLAU and the CCB & CCX licensing model caused quite a stir in the HCL community. As a Notes and Domino customer, you may have faced challenges with unexpected user counts and license costs. You probably have questions on how this new licensing approach works and how to benefit from it. Most importantly, you likely have budget constraints and want to save money where possible. Don’t worry, we can help with all of this!
We’ll show you how to fix common misconfigurations that cause higher-than-expected user counts, and how to identify accounts which you can deactivate to save money. There are also frequent patterns that can cause unnecessary cost, like using a person document instead of a mail-in for shared mailboxes. We’ll provide examples and solutions for those as well. And naturally we’ll explain the new licensing model.
Join HCL Ambassador Marc Thomas in this webinar with a special guest appearance from Franz Walder. It will give you the tools and know-how to stay on top of what is going on with Domino licensing. You will be able lower your cost through an optimized configuration and keep it low going forward.
These topics will be covered
- Reducing license cost by finding and fixing misconfigurations and superfluous accounts
- How do CCB and CCX licenses really work?
- Understanding the DLAU tool and how to best utilize it
- Tips for common problem areas, like team mailboxes, functional/test users, etc
- Practical examples and best practices to implement right away
leewayhertz.com-AI in predictive maintenance Use cases technologies benefits ...alexjohnson7307
Predictive maintenance is a proactive approach that anticipates equipment failures before they happen. At the forefront of this innovative strategy is Artificial Intelligence (AI), which brings unprecedented precision and efficiency. AI in predictive maintenance is transforming industries by reducing downtime, minimizing costs, and enhancing productivity.
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slackshyamraj55
Discover the seamless integration of RPA (Robotic Process Automation), COMPOSER, and APM with AWS IDP enhanced with Slack notifications. Explore how these technologies converge to streamline workflows, optimize performance, and ensure secure access, all while leveraging the power of AWS IDP and real-time communication via Slack notifications.
Ocean lotus Threat actors project by John Sitima 2024 (1).pptxSitimaJohn
Ocean Lotus cyber threat actors represent a sophisticated, persistent, and politically motivated group that poses a significant risk to organizations and individuals in the Southeast Asian region. Their continuous evolution and adaptability underscore the need for robust cybersecurity measures and international cooperation to identify and mitigate the threats posed by such advanced persistent threat groups.
GraphRAG for Life Science to increase LLM accuracyTomaz Bratanic
GraphRAG for life science domain, where you retriever information from biomedical knowledge graphs using LLMs to increase the accuracy and performance of generated answers
How to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdfChart Kalyan
A Mix Chart displays historical data of numbers in a graphical or tabular form. The Kalyan Rajdhani Mix Chart specifically shows the results of a sequence of numbers over different periods.
Nunit vs XUnit vs MSTest Differences Between These Unit Testing Frameworks.pdfflufftailshop
When it comes to unit testing in the .NET ecosystem, developers have a wide range of options available. Among the most popular choices are NUnit, XUnit, and MSTest. These unit testing frameworks provide essential tools and features to help ensure the quality and reliability of code. However, understanding the differences between these frameworks is crucial for selecting the most suitable one for your projects.
Salesforce Integration for Bonterra Impact Management (fka Social Solutions A...Jeffrey Haguewood
Sidekick Solutions uses Bonterra Impact Management (fka Social Solutions Apricot) and automation solutions to integrate data for business workflows.
We believe integration and automation are essential to user experience and the promise of efficient work through technology. Automation is the critical ingredient to realizing that full vision. We develop integration products and services for Bonterra Case Management software to support the deployment of automations for a variety of use cases.
This video focuses on integration of Salesforce with Bonterra Impact Management.
Interested in deploying an integration with Salesforce for Bonterra Impact Management? Contact us at sales@sidekicksolutionsllc.com to discuss next steps.
Digital Marketing Trends in 2024 | Guide for Staying AheadWask
https://www.wask.co/ebooks/digital-marketing-trends-in-2024
Feeling lost in the digital marketing whirlwind of 2024? Technology is changing, consumer habits are evolving, and staying ahead of the curve feels like a never-ending pursuit. This e-book is your compass. Dive into actionable insights to handle the complexities of modern marketing. From hyper-personalization to the power of user-generated content, learn how to build long-term relationships with your audience and unlock the secrets to success in the ever-shifting digital landscape.
Taking AI to the Next Level in Manufacturing.pdfssuserfac0301
Read Taking AI to the Next Level in Manufacturing to gain insights on AI adoption in the manufacturing industry, such as:
1. How quickly AI is being implemented in manufacturing.
2. Which barriers stand in the way of AI adoption.
3. How data quality and governance form the backbone of AI.
4. Organizational processes and structures that may inhibit effective AI adoption.
6. Ideas and approaches to help build your organization's AI strategy.
TrustArc Webinar - 2024 Global Privacy SurveyTrustArc
How does your privacy program stack up against your peers? What challenges are privacy teams tackling and prioritizing in 2024?
In the fifth annual Global Privacy Benchmarks Survey, we asked over 1,800 global privacy professionals and business executives to share their perspectives on the current state of privacy inside and outside of their organizations. This year’s report focused on emerging areas of importance for privacy and compliance professionals, including considerations and implications of Artificial Intelligence (AI) technologies, building brand trust, and different approaches for achieving higher privacy competence scores.
See how organizational priorities and strategic approaches to data security and privacy are evolving around the globe.
This webinar will review:
- The top 10 privacy insights from the fifth annual Global Privacy Benchmarks Survey
- The top challenges for privacy leaders, practitioners, and organizations in 2024
- Key themes to consider in developing and maintaining your privacy program
In the rapidly evolving landscape of technologies, XML continues to play a vital role in structuring, storing, and transporting data across diverse systems. The recent advancements in artificial intelligence (AI) present new methodologies for enhancing XML development workflows, introducing efficiency, automation, and intelligent capabilities. This presentation will outline the scope and perspective of utilizing AI in XML development. The potential benefits and the possible pitfalls will be highlighted, providing a balanced view of the subject.
We will explore the capabilities of AI in understanding XML markup languages and autonomously creating structured XML content. Additionally, we will examine the capacity of AI to enrich plain text with appropriate XML markup. Practical examples and methodological guidelines will be provided to elucidate how AI can be effectively prompted to interpret and generate accurate XML markup.
Further emphasis will be placed on the role of AI in developing XSLT, or schemas such as XSD and Schematron. We will address the techniques and strategies adopted to create prompts for generating code, explaining code, or refactoring the code, and the results achieved.
The discussion will extend to how AI can be used to transform XML content. In particular, the focus will be on the use of AI XPath extension functions in XSLT, Schematron, Schematron Quick Fixes, or for XML content refactoring.
The presentation aims to deliver a comprehensive overview of AI usage in XML development, providing attendees with the necessary knowledge to make informed decisions. Whether you’re at the early stages of adopting AI or considering integrating it in advanced XML development, this presentation will cover all levels of expertise.
By highlighting the potential advantages and challenges of integrating AI with XML development tools and languages, the presentation seeks to inspire thoughtful conversation around the future of XML development. We’ll not only delve into the technical aspects of AI-powered XML development but also discuss practical implications and possible future directions.
Monitoring and Managing Anomaly Detection on OpenShift.pdfTosin Akinosho
Monitoring and Managing Anomaly Detection on OpenShift
Overview
Dive into the world of anomaly detection on edge devices with our comprehensive hands-on tutorial. This SlideShare presentation will guide you through the entire process, from data collection and model training to edge deployment and real-time monitoring. Perfect for those looking to implement robust anomaly detection systems on resource-constrained IoT/edge devices.
Key Topics Covered
1. Introduction to Anomaly Detection
- Understand the fundamentals of anomaly detection and its importance in identifying unusual behavior or failures in systems.
2. Understanding Edge (IoT)
- Learn about edge computing and IoT, and how they enable real-time data processing and decision-making at the source.
3. What is ArgoCD?
- Discover ArgoCD, a declarative, GitOps continuous delivery tool for Kubernetes, and its role in deploying applications on edge devices.
4. Deployment Using ArgoCD for Edge Devices
- Step-by-step guide on deploying anomaly detection models on edge devices using ArgoCD.
5. Introduction to Apache Kafka and S3
- Explore Apache Kafka for real-time data streaming and Amazon S3 for scalable storage solutions.
6. Viewing Kafka Messages in the Data Lake
- Learn how to view and analyze Kafka messages stored in a data lake for better insights.
7. What is Prometheus?
- Get to know Prometheus, an open-source monitoring and alerting toolkit, and its application in monitoring edge devices.
8. Monitoring Application Metrics with Prometheus
- Detailed instructions on setting up Prometheus to monitor the performance and health of your anomaly detection system.
9. What is Camel K?
- Introduction to Camel K, a lightweight integration framework built on Apache Camel, designed for Kubernetes.
10. Configuring Camel K Integrations for Data Pipelines
- Learn how to configure Camel K for seamless data pipeline integrations in your anomaly detection workflow.
11. What is a Jupyter Notebook?
- Overview of Jupyter Notebooks, an open-source web application for creating and sharing documents with live code, equations, visualizations, and narrative text.
12. Jupyter Notebooks with Code Examples
- Hands-on examples and code snippets in Jupyter Notebooks to help you implement and test anomaly detection models.
Driving Business Innovation: Latest Generative AI Advancements & Success StorySafe Software
Are you ready to revolutionize how you handle data? Join us for a webinar where we’ll bring you up to speed with the latest advancements in Generative AI technology and discover how leveraging FME with tools from giants like Google Gemini, Amazon, and Microsoft OpenAI can supercharge your workflow efficiency.
During the hour, we’ll take you through:
Guest Speaker Segment with Hannah Barrington: Dive into the world of dynamic real estate marketing with Hannah, the Marketing Manager at Workspace Group. Hear firsthand how their team generates engaging descriptions for thousands of office units by integrating diverse data sources—from PDF floorplans to web pages—using FME transformers, like OpenAIVisionConnector and AnthropicVisionConnector. This use case will show you how GenAI can streamline content creation for marketing across the board.
Ollama Use Case: Learn how Scenario Specialist Dmitri Bagh has utilized Ollama within FME to input data, create custom models, and enhance security protocols. This segment will include demos to illustrate the full capabilities of FME in AI-driven processes.
Custom AI Models: Discover how to leverage FME to build personalized AI models using your data. Whether it’s populating a model with local data for added security or integrating public AI tools, find out how FME facilitates a versatile and secure approach to AI.
We’ll wrap up with a live Q&A session where you can engage with our experts on your specific use cases, and learn more about optimizing your data workflows with AI.
This webinar is ideal for professionals seeking to harness the power of AI within their data management systems while ensuring high levels of customization and security. Whether you're a novice or an expert, gain actionable insights and strategies to elevate your data processes. Join us to see how FME and AI can revolutionize how you work with data!
Introduction of Cybersecurity with OSS at Code Europe 2024Hiroshi SHIBATA
I develop the Ruby programming language, RubyGems, and Bundler, which are package managers for Ruby. Today, I will introduce how to enhance the security of your application using open-source software (OSS) examples from Ruby and RubyGems.
The first topic is CVE (Common Vulnerabilities and Exposures). I have published CVEs many times. But what exactly is a CVE? I'll provide a basic understanding of CVEs and explain how to detect and handle vulnerabilities in OSS.
Next, let's discuss package managers. Package managers play a critical role in the OSS ecosystem. I'll explain how to manage library dependencies in your application.
I'll share insights into how the Ruby and RubyGems core team works to keep our ecosystem safe. By the end of this talk, you'll have a better understanding of how to safeguard your code.
Azure API Management to expose backend services securely
Configuration beyond Java EE 8
1. BASEL BERN BRUGG DÜSSELDORF FRANKFURT A.M. FREIBURG I.BR. GENF
HAMBURG KOPENHAGEN LAUSANNE MÜNCHEN STUTTGART WIEN ZÜRICH
Configuration
beyond
Java EE
Configuration
with Apache
Tamaya and Microprofile.io
2. Configuration beyond Java EE 828.03.2017
Anatole Tresch
Principal Consultant, Trivadis AG (Switzerland)
Star Spec Lead
Technical Architect, Lead Engineer
PPMC Member Apache Tamaya
@atsticks
anatole@apache.org
anatole.tresch@trivadis.com
2
About Me
3. Configuration beyond Java EE 828.03.2017
Agenda
3
●
What‘s all about ?
●
Framework Architecture
●
Accessing Configuration
●
Configuration Backends
●
Configuration Runtime
●
Services
●
Demo / Adoption Area
7. Configuration beyond Java EE 828.03.2017
7
How is it stored?
Remotely or locally?
Classpath, file or ...?
Which format?
All of the above (=multiple sources) ?
8. Configuration beyond Java EE 828.03.2017 8
When to configure?
Development time ?
Build/deployment time?
Startup?
Dynamic, anytime?
19. Configuration beyond Java EE 828.03.2017
19
Accessing Config: Injection
public class NonAnnotatedConfigBean {
public String simple_value = "Should be overridden!";
public String fieldKey;
public String classFieldKey = "Foo";
public String fullKey;
public String test2 = "This is not set.";
}
public class AnnotatedBean{
@Config(value = {"foo.bar.myprop", "mp"}, defaultValue = "ET")
private String simpleValue;
@Config
String anotherValue;
}
20. Configuration beyond Java EE 828.03.2017
20
Accessing Config: CDI
public class AnnotatedBean{
@Inject
@Config(value = {"foo.bar.myprop", "mp"}, defaultValue = "ET")
private String simpleValue;
@Inject @Config
String anotherValue;
}
21. Configuration beyond Java EE 828.03.2017
21
Accessing Config: CDI
public class AnnotatedBean{
@Inject
@ConfigProperty(name = "foo.bar.myprop", defaultValue = "ET")
private String simpleValue;
@Inject @ConfigProperty(name = "foo.bar.myprop")
String anotherValue;
}
25. Configuration beyond Java EE 828.03.2017
Backend Model: PropertySource
25
●
Add dependency
org.apache.tamaya:core: 0.2-incubating
●
Add Config to META-INF/javaconfiguration.properties
●
GO!
public interface PropertySource {
PropertyValue get(String key);
Map<String, PropertyValue> getProperties();
int getOrdinal();
String getName();
boolean isScannable();
}
26. Configuration beyond Java EE 828.03.2017
Backend Model: PropertyValue
26
●
Add dependency
org.apache.tamaya:core: 0.2-incubating
●
Add Config to META-INF/javaconfiguration.properties
●
GO!
public final class PropertyValue{
public String getKey();
public String getValue();
public String get(String key);
public Map<String,String> getMetaEntries();
...
}
31. Configuration beyond Java EE 828.03.2017 31
●
Just Java 7 or higher !
What I need to run Tamaya ?
Configuration Cluster
Java EE
Tamaya
Java SE
Tamaya
Tamaya
Vertx.io
Tamaya
TomEE
Tamaya
Spring
Tamaya
OSGI
33. Configuration beyond Java EE 828.03.2017
Apache Tamaya in 120 seconds...
33
1.Configuration = ordered list of
PropertySources
2.Properties found are combined using a
CombinationPolicy
3.Raw properties are filtered by PropertyFilter
4.For typed access PropertyConverters
have to do work
5.Extensions add more features
(discussed later)
6.Component Lifecycle is controlled by the
ServiceContextManager
ConfigurationContext
PropertyFilters
PropertySource
PropertySource
PropertySource
PropertySource
Configuration
CombinationPolicy
PropertyProviders
<provides>
PropertyConverter
36. Configuration beyond Java EE 828.03.2017 36
●
Configuration is read from remote source, e.g.
●
Etcd cluster
●
Consul cluster
●
Any Web URL
●
...
Remote PropertySources
Service Location Layer
Configuration Cluster
<dependency>
<groupId>org.apache.tamaya.ext</groupId>
<artifactId>tamayaetcd</artifactId>
<version>...</version>
</dependency>
38. Configuration beyond Java EE 828.03.2017 38
●
Configuration that configures configuration
●
E.g. at METAINF/tamayaconfig.xml
●
Allows easy and quick setup of your configuration environment
●
Allows dynamic enablement of property sources
●
...
Meta-Configuration DRAFT !
41. Configuration beyond Java EE 828.03.2017 41
Resource expressions…
public class MyProvider extends AbstractPathPropertySourceProvider{
public MyProvider(){
super(“classpath:/METAINF/config/**/*.properties“);
}
@Override
protected Collection<PropertySource> getPropertySources(URL url) {
// TODO map resource to property sources
return Collections.emptySet();
}
}
<dependency>
<groupId>org.apache.tamaya.ext</groupId>
<artifactId>tamayaresources</artifactId>
<version>...</version>
</dependency>
42. Configuration beyond Java EE 828.03.2017
And more: a topic on its own!
42
●
Tamaya-spi-support: Some handy base classes to implement SPIs
●
Tamaya-functions: Functional extension points (e.g. remapping, scoping)
●
Tamaya-events: Detect and publish ConfigChangeEvents
●
Tamaya-optional: Minimal access layer with optional Tamaya support
●
Tamaya-filter: Thread local filtering
●
Tamaya-usagetracker: Tracking use and stats for configuration consumption
●
Tamaya-validation*: Configuration Documentation and Validation
●
Format Extensions: yaml, json, ini, … including formats-SPI
●
Integrations with Vertx, CDI, Spring, OSGI*, Camel, etcd, Consul
●
Tamaya-mutable-config: Writable ConfigChangeRequests
●
Tamaya-metamodel*: Configuration Meta-Model
●
Tamaya-collections*: Collection Support
●
Tamaya-resolver: Expression resolution, placeholders, dynamic values
●
Tamaya-resources: Ant styled resource resolution
•...
* experimental
45. Configuration beyond Java EE 828.03.2017
Summary
45
●
Work on config JSR for a EE 8 has been stopped by Oracle
●
Community work is done in Microprofile.io and ASF
●
Microprofile API is very minimal, but will evolve.
●
Apache Tamaya provides most features you will ever need and supports
all major runtimes.