Skip to main content

Act Now: Protecting Your ActiveMQ Broker from CVE-2023-46604

By ActiveMQ, CVEs, Security No Comments

You may be aware that a new critical vulnerability has been discovered in ActiveMQ. This was publicly disclosed on Friday 27th October. The details of the CVE are as follows (https://activemq.apache.org/security-advisories.data/CVE-2023-46604): Apache ActiveMQ is vulnerable to Remote Code Execution.The vulnerability may allow a remote attacker with network access to a broker to run arbitrary shell commands by manipulating serialized class types in the OpenWire protocol to cause the broker to instantiate any class on the classpath. ActiveMQ, by default, exposes a connector using the OpenWire protocol, and this is commonly used by clients to connect to the broker. Unlike HTTP…

Read More

Moving from javax to jakarta namespace

By ActiveMQ, Apache TomEE, Jakarta EE, Java EE, MicroProfile, Open Source, Tomcat, TomEE No Comments

This blog aims at giving some pointers in order to address the challenge related to the switch from `javax` to `jakarta` namespace. This is one of the biggest changes in Java of the latest 20 years. No doubt. The entire ecosystem is impacted. Not only Java EE or Jakarta EE Application servers, but also libraries of any kind (Jackson, CXF, Hibernate, Spring to name a few). For instance, it took Apache TomEE about a year to convert all the source code and dependencies to the new `jakarta` namespace. This blog is written from the user perspective, because the shift from…

Read More

How to manage CVEs in Open Source Software?

By CVEs No Comments

Reducing time, cost, and overall overhead generated by addressing Common Vulnerability Exposures in your software supply chain can be a constant challenge if the organization’s stakeholders aren’t aligned on how to address CVEs. As explained during my presentations about “Java and the Open Source ecosystem security”, the lifecycle of a CVE can vary in complexity depending on many internal and external factors in your organization. The way you can handle internal factors is tied to your overall organizational structure, process, and culture, among other factors. But the ones external to you are the ones you need to be aware of…

Read More

Securing Your Business: A Guide to Understanding and Addressing Apache ActiveMQ CVEs

By ActiveMQ, CVEs, Open Source No Comments

In today’s digital landscape, businesses and companies encounter a continuous stream of cybersecurity threats, and one such significant threat is Common Vulnerabilities and Exposures (CVEs). These vulnerabilities can potentially jeopardize your systems’ security and stability. However, it is important to note that while CVEs are just one aspect of the broader cybersecurity landscape, they hold particular relevance. CVEs provide public data that companies and organizations can use to their advantage in understanding and addressing potential vulnerabilities. To illustrate the concept further, let’s explore examples of high, medium, and low-severity CVEs in Apache Active MQ, a popular open-source messaging and integration…

Read More

Demystifying Default Resources in Apache TomEE

By Apache TomEE No Comments

The Problem One of the design philosophies of Apache TomEE is to adapt the server to fit the user, rather than the other way around.  It can be incredibly frustrating to develop your application and then have the application server reject the deployment because a resource or another setting isn’t configured quite right. Apache TomEE will attempt to automatically create resources and containers with a reasonable set of defaults so you can concentrate on developing your application, rather than fighting with the server. In this article, I’ll set out how these defaults are applied, and how you can customize them….

Read More

Java and the Open Source ecosystem security

By CVEs, Security, Spanish, Tribers Tour No Comments
Security in the Open Source ecosystem has continuously grown in priority on the global agenda in the technology industry. Many practices like DevOps, Agile, and standards like ISO/IEC 27001 have contributed over the years to adopt and promote a shift-left approach to security in the industry. The Java ecosystem is not separate from the opportunities and challenges the industry has overcome regarding security. In late 2022 I started to deliver the session “Deep diving into Java ecosystem security with OpenSource and DevSecOps” which provide a glance at how Open Source and the Java ecosystem correlate during the lifecycle of common...
Read More

Apache TomEE MicroProfile 5.0 certified

By MicroProfile, TomEE One Comment

Last year, we announced Apache TomEE as a certified Jakarta EE 9.1 server (See blog post). The season favors gifts and good news, so I thought I would write this small blog to talk about our journey to being MicroProfile 5.0 certified. A while back, Apache TomEE started implementing MicroProfile. At that time, we were contributing to Apache Geronimo implementations for various specifications: config, openapi, opentracing, metrics, health and fault-tolerance. We had our own JWT implementation with additional integration features than what the MicroProfile JWT specification supports. Back then, we were passing the TCK for the MicroProfile 2.1, released October…

Read More

ActiveMQ Time Stamp Plugin

By ActiveMQ No Comments

Introduction This article is a quick tip for ActiveMQ users, and introduces the Time Stamp Plugin. Common support queries we get with ActiveMQ are the broker running out of space, or Producer Flow Control kicking in. Often, the cause is simple: messages have been sent to the broker, and haven’t been consumed. This will be exacerbated if you have multiple destinations, and particularly if you use KahaDB for persistence (which is the default). See my post here to get a 10000 ft view on how KahaDB works under the covers, and how it can use a large amount of disk…

Read More

JWT authentication and authorization with Apache ActiveMQ

By ActiveMQ No Comments

Apache ActiveMQ is a well known and very flexible message broker. As such, it fully embraced the AAA model (Authentication, Authorization, Accountability) with built-in plugins.  For example, by default, it comes with Simple Authentication Plugin: it handles user authentication based on the `activemq.xml` defined list of users. Or, as an alternative, you can load users from properties. This is very useful for tests or to quickly bootstrap a project but does not target real-life deployments. JAAS Authentication Plugin: JAAS stands for Java Authentication and Authorization Service and is quite well known in the Java EE space (or Jakarta EE space)….

Read More

Apache ActiveMQ Failover with a SQL Database

By ActiveMQ No Comments

ActiveMQ is often a critical component in Enterprise systems, and therefore High Availability (HA) is a “must have” in order to meet production Service Level Agreements (SLA). This blog aims at providing a deployment architecture based on a set of Apache ActiveMQ brokers wired up to a SQL database.  This blog targets Apache ActiveMQ “classic” as opposed to Apache ActiveMQ Artemis. Failover architecture for high availability What are we trying to achieve? A single instance of ActiveMQ can receive and deliver a very high volume of messages. It is very easy to increase performance and handle more messages by simply…

Read More

CVE-2021-44228 – Log4Shell Vulnerability

By CVEs, Tomcat, TomEE No Comments

Introduction If you’ve been following tech news over the last couple of days, you’ll very likely have heard about CVE-2021-44228, or “Log4Shell” as it has become known. This particular vulnerability affects Apache Log4J2, a Java logging framework. Tomcat, TomEE, and ActiveMQ themselves do not ship with log4j2, so running out-of-the-box with their default configuration they are not vulnerable to this issue. However, before you breathe a sigh of relief, you should be aware that applications deployed on either TomEE or Tomcat can include additional Java libraries bundled inside. Any jar file included in a web application’s WEB-INF/lib directory will be…

Read More

How to use Tibco EMS in TomEE?

By TomEE No Comments

Tomitribe is part of the expert group for the upcoming JMS 3.0 and provides ActiveMQ and Apache TomEE enterprise support for many organizations. This article demonstrates configuring Tibco EMS in TomEE. For generic guidelines on deploying alternative JMS providers, please see the official TomEE documentation for Changing JMS Implementations JMS providers are generally packaged as Java Connector Architecture (JCA) Resource Adapter Archive (RAR) files, and both outbound (for sending messages to the broker) and inbound (for receiving messages via Message Driven Beans (MDBs) connectors are provided. JCA RAR files are designed to be portable, and any portable RAR file should…

Read More

7 recomendaciones para migrar tus aplicaciones a Jakarta EE utilizando Apache TomEE – JakartaOne Spanish

By Apache TomEE, JakartaONE Español No Comments

JakartaOne Hispano 2021, se llevó a cabo el pasado 1 de Octubre del 2021, en esta segunda edición, JakartaOne Hispano 2020, las comunidades de habla hispana, usuarios, empresas y público en general tuvieron un punto de convergencia para compartir y aprender sobre lo último en microservicios, seguridad, migraciones y adopción de tecnologías Java empresarial como Jakarta EE y MicroProfile entre otros.  El comité organizador reportó este año una excelente sinergía entre los involucrados: + 350 participantes. + 13 Comunidades Java de habla hispana  5 presentadores de países como Colombia, Guatemala y  México. 3 empresas participaron en la sesión inaugural como…

Read More

Custom Identity Store with Jakarta Security in TomEE

By Jakarta EE, TomEE No Comments

In the previous post, we saw how to use the built-in ‘tomcat-users.xml’ identity store with Apache TomEE. While this identity store is inherited from Tomcat and integrated into Jakarta Security implementation in TomEE, this is usually good for development or simple deployments, but may appear too simple or restrictive for production environments.  This blog will focus on how to implement your own identity store. TomEE can use LDAP or JDBC identity stores out of the box. We will try them out next time. Let’s say you have your own file store or your own data store like an in-memory data…

Read More

Using Tomcat’s `tomcat-users.xml` with Jakarta Security in TomEE

By Jakarta EE, Tomcat, TomEE No Comments

While working on Jakarta EE 10 certification (See announcement Apache Tomee Jakarta EE certified after 10 years, Apache TomEE implemented Jakarta Security specification.  Currently, there is only one implementation used in Glassfish and used by all the other vendors for Jakarta Security. In TomEE, we decided to create an alternative to bring some diversity, and have an Apache implementation. What is Jakarta Security? Jakarta Security defines a standard for creating secure Jakarta EE applications in modern application paradigms. It defines an overarching (end-user targeted) Security API for Jakarta EE Applications. Jakarta Security builds on the lower level Security SPIs defined…

Read More

Understanding Jakarta Security with TomEE

By Apache TomEE, Jakarta EE, Tomcat 2 Comments

There are many blogs explaining how to get Jakarta Security on Tomcat using all sorts of libraries and wiring everything manually. So many opportunities to get it wrong, if you are evaluating or currently using Apache TomEE. In TomEE, the good news is that, like JAX-RS, CDI or Bean Validation, Jakarta Security is out of the box ready to be used like Servlet, and CDI for example. This blog is a high-level view so you have the big picture of the technologies and how they interact with each other in the security landscape. The goal is to be able to…

Read More

Apache TomEE Jakarta EE certified after 10 years

By Apache TomEE, Community, Jakarta EE, TomEE 2 Comments

We are extremely excited to spread the word that Apache TomEE 9.0.0-M7 has reached Jakarta EE 9.1 Web Profile certification. Speaking with our Apache-contributor hats on, this is not just our first certification in 10 years, but we are doubly proud Apache TomEE is on the list of certified servers on the day of the Jakarta EE release. Moreover, after 3 years of behind-the-scenes work, we’re very excited the Apache Software Foundation has joined Jakarta EE Working Group as a Guest Member. And finally, not to be overlooked, the Apache TomEE project has a fresh new website: – https://tomee.apache.org/ As…

Read More

Keeping Brazil’s Medical Industry Safe with MicroProfile | JakartaOne Livestream 2020

By Community, Jakarta EE, JakartaONE, MicroProfile No Comments

Jakarta One 2020, held on December 8th, 2020, gathered industry users and Java communities to share and learn the latest Java enterprise-related technologies. Jakarta EE 9, officially announced in November 2020, that they have created a lot of momentum to keep the conversation going in terms of lessons learned, roadmaps, and best practices.  Rafael Guimares, and I, had the opportunity to present the session “Keeping Brazil’s Medical Industry Safe with MicroProfile & JakartaEE”. The session addressed the challenges, opportunities, and roadmap to migrating one of Brazil’s medical industry applications from Java EE into Jakarta EE 9, and MicroProfile implementations, towards…

Read More

JAX-RS Server Side Events

By Apache TomEE One Comment

Quick Introduction One of the new features in JAX-RS 2.1 is Server Side Events. This allows the server to “push” events over to clients that have connected to the server via HTTP(S). Typically HTTP requests involve a single request, a single response, and then you’re done – for example: $ curl -v http://localhost:8080/ping * Trying 127.0.0.1… * TCP_NODELAY set * Connected to localhost (127.0.0.1) port 8080 (#0) > GET /ping HTTP/1.1 > Host: localhost:8080 > User-Agent: curl/7.61.1 > Accept: */* > < HTTP/1.1 200 < Date: Mon, 14 Dec 2020 17:04:36 GMT < Content-Type: application/octet-stream < Content-Length: 12 < Server:…

Read More

Pavimentando el Camino con Jakarta EE 9 and Apache TomEE

By Apache TomEE, Jakarta EE, JakartaONE Español, Tribers vTour No Comments

El 12 de Octubre del 2020 se llevó a cabo la primera edición virtual del JakartaOne en Español, el evento reunió a más de 500 asistentes y 9 comunidades de Java de habla hispana.  La agenda del evento ofreció a los asistentes y comunidades una amplia gama de temas relacionados a las aplicaciones Java Empresarial, nubes nativas, micro servicios entre otros.   En esta edición tuve la oportunidad de compartir la sesión “Pavimentando el camino con Jakarta EE 9 and Apache TomEE” la cual ofrece un breve recorrido de cómo Jakarta EE ha evolucionado en los últimos 20 años y la…

Read More

Introducing TCK.work

By Apache TomEE, Jakarta EE No Comments

I’d like to share with everyone a system we’ve set up to help projects get faster TCK results, starting of course with Apache TomEE. https://tck.work/tomee/projects We’ve had this system for a while, but were unable to open access due to the legal restrictions around access to the TCK and results. Now that all of this is public we can finally make it available. This installation is dedicated to open source projects and per each TCK run will spin up 100 m3.medium spot instances in AWS to chew through 95% of the TCK in about 2 hours. A handful of tests…

Read More

JakartaONE Español 2020: De Comunidad Para Comunidad!

By Community, Jakarta EE, JakartaONE Español, Open Source, Tribers Tour, Tribers vTour, Video No Comments

  ¡El informe resumido del evento JakartaONE Español 2020 es una maravillosa declaración de una actividad comunitaria de código abierto con el corazón de voluntarios!   Comité de JakartaONE Español Alberto, Carlos, Eudris, Jonathan & Hillmer gracias por decidir ser administradores formidables cuyas acciones continuamente inspiraron y reflejaron las mejores características que el código abierto ofrece: sencillez, pasión, sinceridad, respeto, y agallas. JakartaONE Español 2020 es una realidad porque ustedes 5 así lo decidieron. Ustedes han ayudado a sentar las bases de futuras transmisiones en vivo de JakartaONE Español. Que chévere!!!  Gracias por elegir 💙 incluir a muchos de nosotros en…

Read More

JakartaONE Brazil 2020: Como alavancar microservices com TomEE e MicroProfile para ajudar a indústria médica no Brasil.

By Apache TomEE, Jakarta EE, JakartaONE, JakartaONE Brazil, TomEE, Tribers vTour No Comments
No dia 29 de agosto, aconteceu o JakartaOne Livestream Brazil. Foi uma conferência virtual de um dia para desenvolvedores e líderes técnicos trazendo o estado atual e futuro de Jakarta EE e tecnologias relacionadas, com foco no desenvolvimento de aplicativos nativos em nuvem corporativa. A participação foi ótima, com cerca de 200 pessoas conectadas continuamente. Nosso parceiro no Brasil, Rafael Guimares, CEO of GBR Sistemas, falou sobre como eles alavancaram microservices com TomEE para ajudar a indústria médica no Brasil. Graças à sua experiência, a equipe de Rafael foi capaz de construir rapidamente um novo aplicativo para suporte à telemedicina no contexto do Coronavírus (consulta...
Read More

KahaDB logs increasing when messages are purged

By ActiveMQ One Comment

One of the common issues we run into with ActiveMQ, is the issue of kahadb log files not being cleared up, leading to the system potentially running out of disk space.  There are a few reasons why these log files are not cleaned up: It contains a pending message for a destination or durable topic subscription It contains an ACK for a message which is in an in-use data file – the ACK cannot be removed as a recovery would then mark the message for redelivery The journal references a pending transaction It is a journal file, and there may…

Read More

DevNexus 2020 Video Interview with Emily Jiang & David Blevins

By Community, Jakarta EE, Jakarta JMS, MicroProfile No Comments

At the end of February, right before the Covid-19 pandemic shut down all USA conferences, a few Tribers enjoyed the DevNexus week.  Watch below a candid 20 minutes video  David Blevins and Emily Jiang conversation that shares an insight on topics such as:  the upcoming Jakarta Messaging features the Jakarta EE 9 planning the Javax namespace  MicroProfile and much more. We hope you enjoy it!    Video Credits:   The video was first published on May 13th by the IBM Developer youtube channel & shared via IBM Developer Advocate  Mary Grygleski‘s tweet on May 14th.

Read More

Jakarta EE 9 Milestone and Apache TomEE 9.0.0 M1

By Apache TomEE, Jakarta EE No Comments

Today the new jakarta namespace enters our lives at mass scale with the release of Jakarta EE 9 Milestone 1. This Milestone release not only includes over 30 specifications, APIs and TCKs migrated from javax to jakarta, but also several implementations including Apache Tomcat 10.0.0-M6, Jetty 11.0.0-alpha0, OpenLiberty 20.0.0.7-beta and many more all supporting the `jakarta` namespace. As a proud member of the Apache TomEE community we’re of course very excited to also announce the release of Apache TomEE 9.0.0 M1 supporting the new jakarta namespace. Faster Through Tooling (technical) A major challenge of this namespace change is impact in…

Read More

Bolivia JUG April 2020 Meetup

By Apache TomEE, Community, Jakarta EE, Java EE, MicroProfile, Open Source, Spanish, TomEE, Tribers Tour, Tribers vTour No Comments

In April 2020, the Bolivia Java User Group held a virtual meetup with Latin American JUG’s participants. The event covered Java cloud-native and microservice development, infrastructure, and contribution to the Open Source ecosystem distributed in three sessions: It’s Easy! Contributing to Open Source César Hernández, from Guatemala JUG, provided a session about how to contribute and become a valuable part of any open source community. Examples of how to learn and apply soft and hard skills were presented based on MicroProfile and Apache TomEE Open Source projects. Attendees were able to learn how to access and navigate the culture of…

Read More

Keeping Brazil’s Medical Industry Safe with MicroProfile & JakartaEE – Jakarta Tech Talks

By Apache TomEE, Community, Eclipse Foundation, Jakarta EE, Java EE, MicroProfile, Open Source, TomEE, Tomitribe, Tribers vTour No Comments

At Oracle Code One 2019  Rafael Guimares, Otavio Santana, and I presented this 45 minutes session for the first time. We provided a case of cloud migration and modernization of a widely use monolithic system with the help of MicroProfile, Jakarta EE, TomEEand Tribestream API Gateway in the Brazilian medical Industry that involved several challenges such as the fifth-largest population and largest territory in the world; technical complexity; and diversity, both geographic and economic. At the beginning of 2020, we were invited via the Jakarta EE Community Forum signed up sheet here to present the session as part of the…

Read More

#sharingIScaring: The fun side of things in Tokyo 2019!

By Community, Tribers Tour No Comments

Today, we are in lockdown due to COVID-19. International travel has dropped to single digits. This is a fun-throwback to what it meant to be a 24/7 international traveler, the exhaustion, the jet-lag, the consumption of lots of caffeine & water… and what it meant for some of us to be able to recharge with trusted friends.  Together, we chose to make that travel exhaustion be a bit less heavy to bear! Bruno’s tweet went live on May 17th, 2019. The ~4 minutes video freezes a wonderful memory of our  time in Tokyo, Japan.  Informal sharing while we tested connecting tools…, with smiles…

Read More

DevNexus 2020

By Apache TomEE, Community, Jakarta EE, Open Source No Comments

DevNexus Feb 19th to 21st,  is the Atlanta annual software developer conference that’s run by the Atlanta Java Users Group . This event gathers more than 2,400 attendees from all over the world and covers a wide range of topics within the Java Platform, cloud architectures, OpenSource, frameworks, Web and Frontend, tools and techniques, security, Agile, etc. JUG Leaders Summit To celebrate 25 years of Java, a JUG Leaders Summit will take place on the 19th gathering more than 40 Java User Groups from around the world. The unconference day will provide an open and collaborative space to learn from…

Read More

TomEE WebProfile vs. TomEE MicroProfile vs. TomEE+ vs. TomEE PluME

By Open Source, TomEE One Comment

As a support company for TomEE and other projects, we get lots of questions from our clients some technical and others architectural. One that we hear from time to time is, “What is the difference between the different TomEE distributions?” This blog will answer that question. The TomEE project has been evolving for twenty years. It has, at its foundation, always been about adding Jakarta EE Web Profile (formerly Java EE) technologies to a complete Apache Tomcat distribution. The use of Tomcat in conjunction with TomEE is explained in more detail in this blog post. A visual guide to TomEE…

Read More

TomEE for the Holidays, 2nd Annual Event!

By Community, Open Source, TomEE No Comments

Twenty Years and Counting Twenty years ago this month, David Blevins and I started OpenEJB, the open source project which was the foundation of Apache TomEE. It was an exciting time for David and me as neither of us had a lot of experience in open source. I left the project in 2004, but David stuck with it, and for that I’m grateful. OpenEJB became a central part of TomEE several years ago, and it’s through TomEE that we continue to support open-source Jakarta EE. Why TomEE for the Holidays? We want everyone to experience the kind of joy and…

Read More

TomEE vs. Tomcat

By Community, Jakarta EE, Open Source, Tomcat, TomEE One Comment

Our support customers will sometimes ask, “What is the difference between Tomcat and TomEE,” but that’s not really the right question. It’s like asking which is better “Omelets or Eggs” or “JSP or Servlets”. You can’t have the first one without the second. TomEE is Tomcat Plus It’s easier to think of TomEE as the same thing as Tomcat plus some bells and whistles, because TomEE is built on top of Tomcat. Specifically, TomEE 8 is the complete Tomcat 9 distribution plus Jakarta EE 8 (formerly Java EE 8) specific APIs. Tomcat is a powerful and hugely popular Java web…

Read More

JConf Guatemala 2019

By Community, Open Source No Comments

The biggest Java conference in Central America, Jconf Guatemala, was held on November 8th and 9th, 2019 by the Guatemala Java User Group –GuateJUG-. The conference, formerly known as Java Day Guatemala, gathered more than three hundred attendees from different countries like Mexico, Guatemala, El Salvador, Costa Rica, Perú, Colombia, Ecuador, and Honduras. The conference had a broad participation from local speakers along with various Java Champions, Ground Breakers, and developers advocates from the Industry. JConf is an effort promoted by various Latin America Java User Groups to homogenise the yearly conferences organized in countries like Perú, Colombia, Domincan Republic,…

Read More

Configuring JDBC in TomEE

By Apache TomEE, Jakarta EE, Java EE, TomEE, Tutorials 4 Comments

A question that comes up frequently in the TomEE community and with Tomitribe’s support customers is “How do I configure a JDBC driver?” There are a number of ways to do this, but I’m going to talk about the two most common methods. You can configure a JDBC driver for the entire TomEE application server or for a specific webapp. Regardless of which way you choose to do it, the configuration syntax is the same. NOTE: You can also configure a JDBC DataSource directly within an @Resource annotation but this is not recommended and is not covered here. See the…

Read More

Using the TomEE Maven Plugin

By Apache TomEE, Maven, TomEE, Tutorials 2 Comments

If you are looking for the fastest way to download, install, and run TomEE with or without webapps, then look no further! This blog post shows how to use the TomEE Maven Plugin to easily install and run TomEE and webapps with a single command. Clean TomEE Install The TomEE Maven Plugin will download, install, and run TomEE with a single Maven command: $ mvn tomee:run Just copy the pom.xml file below – (you can also get it from GitHub) – then run the command above and the TomEE Maven Plugin will download, install, and run a clean installation of…

Read More

JCP 2019 Executive Committee Elections. Time to vote!

By Community No Comments

Are you a JCP voting member yet? Listen to the 40 minute conference call where the nominees speak up about why they care to run for 1 seat.  Java Community voices enable you to be ready to participate on the JCP EC 2019 Elections that go from Nov 5th to 18th, 2019! Read the Tomitribe’s Statement below; Tomitribe’s decision to run for re-election is a choice to remain vigilant. Tomitribe statement JCP EC 2019 Tomitribe is a proud supporter of Jakarta EE, MicroProfile and Open Source. Founded in 2013 by David Blevins, Java Champion, former IBM, co-founder of Apache TomEE…

Read More

Tomitribe at CodeOne 2019

By Community, Open Source, Tomitribe No Comments

Oracle CodeOne 2019 was held on September 16th-19th in San Francisco.  During the event developers, users, architects, managers and many IT stakeholders from around the world had the opportunity to network, share and learn about the established and cutting edge technologies related to cloud-native, Apache TomEE, Eclipse MicroProfile, GraalVM, Data Science, DevOps, Jakarta EE, Testing frameworks and more. Tomitribe was again excited to return to the second iteration of what used to be JavaOneConf.  Four Tribers:  David, Amelia, Jean-Louis and Cesar were actively involved in many presentations, Hands-on Labs, community activities/parties and Hackergartens.  Activities Covered Meet the JCP Executive Committee 20th JCP…

Read More

HackDay: Cómo contribuir en proyectos Open source

By Community, Open Source No Comments

 Grupos de usuarios de Java de España y Latinoamérica nos hemos unido para compartir conocimientos. Desde noviembre del 2017 hemos estado reuniéndonos periódicamente para compartir conocimiento utilizando los dos lenguajes que mas nos gustan, Java y el Español. Los eventos anteriores han sido transmitidos en directo desde el canal de Youtube de Evento JEspañol. Desde el Caribe el grupo de usuarios la República Dominicana Java Dominicano será el encargado de moderar nuestro sexto encuentro titulado: Cómo contribuir en proyectos open source. En esta sesión estaremos hablando sobre cómo contribuir al código abierto: herramientas, medios, proceso, recomendaciones y más. Trabajaremos…

Read More

How to create a microservice with MicroProfile and Apache TomEE

By Apache TomEE, Eclipse Foundation, Jakarta EE, Java EE, MicroProfile, Open Source, TomEE No Comments

At Tomitribe we are active stakeholders on projects like Apache TomEE, MicroProfile, and JakartaEE and provide Enterprise Support for these and other Open Source projects like Apache Tomcat & Active MQ. In this article, we will cover how developers can create a microservice with Java using the MicroProfile specifications with the DevOps friendly application server, Apache TomEE. If MicroProfile is a topic you want to learn more about, we have many other blog posts covering the basics of MicroProfile with details of each of the specifications along with examples. The official Apache TomEE project website also has a series of…

Read More

OpenSource and Math Never Lie: Podcast by Adam Bien & Amelia Eiras

By Community, Interview No Comments

Adam Bien, being THE amazing Adam who never gives up, continues to integrate the diverse voices in our Software Ecosystem via his informal and fun podcast called: http://airhacks.fm. I was thrilled to be a guest on Adam’s 46th airhack, thank YOU #usualsuspects  Thank you for caring enough to prioritize your time, each Monday of the month for almost 3 years and counting, for such a fun activity. Thank you for including me, the many guests before and the future airhacks’ guests. Bias to the core, I have enjoyed listening to many of your podcasts, the signature continues to be sharing…

Read More

Microservices Metrics targets with MicroProfile

By Apache TomEE, Eclipse Foundation, MicroProfile No Comments

In our previous blog post, Getting Started with Microprofile Metrics, we covered the basic concepts about metrics scopes and types of application metrics you can include in your existing JAX-RS endpoints. In this article, we are going to summarize the metadata and default values from the MicroProfile Metrics annotations and how they should be applied. The type of annotations applied to a target tracks how that target (field, method, etc.) is measured and the default values help us to make our code cleaner. Default units and targets per annotation Table No.1 describes each of the Metrics annotations and the target…

Read More

5 minutes or less: Jakarta JSON Binding with Apache Johnzon

By Jakarta EE, Java EE, Open Source, TomEE No Comments

This tutorial shows how to use Jakarta JSON Binding to deserialize JSON data into Java POJOs and to serialize Java POJOs into JSON data. The Jakarta JSON Binding provider used is Apache Johnzon To get started you will need to clone the jsonb-basic-tutorial project on GitHub. Create a directory on your Desktop or somewhere and execute the following Git command. git clone https://github.com/tomitribe/jsonb-basic-tutorial.git Assuming you have Maven installed your next step is to go into the new jsonb-basic-tutorial directory and execute the Maven install command mvn install The jsonb-basic-tutorial uses mock JSON data from Mockaroo.com. The JSON data is stored…

Read More

MicroProfile: How it has evolved and where it’s headed?

By Jakarta EE, Java EE, MicroProfile, Open Source No Comments

About a year ago, I wrote a blog post about MicroProfile that explained what it is and why it was created. The explanation of what it is and why it was created is still valuable, but MicroProfle evolves rapidly, so it’s time to talk about where we are at, what’s new, and what to expect in the next few months. MicroProfile Today As per June 2019, MicroProfile 3.0 has been released with the following content.   MicroProfile 1.4 release from last year MicroProfile 3.0 release from this year   Updated versions of Metrics and Health Check introduced breaking API changes….

Read More

Conviértete en un Contributor de Open Source con Apache TomEE

By Apache TomEE, Community, Open Source, TomEE No Comments

Durante esta sesión de video, Daniel Dias y Cesar Hernandez comparten sus retos, oportunidades y recomendaciones para iniciar a contribuir en proyectos de Código Abierto como lo és Apache TomEE. La demostración de la sesión incluye como desde cero llegar a colocar un pull-request en el proyecto Apache TomEE cubriendo los aspectos de herramientas, procesos y comunicación.

Read More

TomEE MicroProfile on Heroku

By Apache TomEE, MicroProfile, Open Source, TomEE No Comments

Following up on his last article, “CRUD with TomEE, MicroProfile, and REST”, Hayri Cicek deploys the TomEE MicroProfile application on Heroku, a cloud provider. Heroku is a cloud platform as a service (PaaS) supporting several programming languages and I’ve been using it for several years without any problems. Visit https://signup.heroku.com/dc and create a free account. TomEE configuration Inside projects root directory create the Procfile and add the following: web: java -DadditionalSystemProperties=-Dhttp.port=$PORT -jar target/blog-exec.jar The Procfile is used to specify commands executed by the app’s Heroku containers, which they call “dynos”. Dynos are isolated, virtualized Linux containers designed to execute code…

Read More

Tomcat RCE Vulnerability via JSP Upload Bypass

By Apache TomEE, Open Source, Tomcat, TomEE No Comments

Tomitribe’s Jonathan Gallimore (@jongallimore) explains how easy it is to exploit a simple configuration vulnerability in Apache Tomcat and take over your entire server. He also explains how easy it is to prevent this from happening with a simple configuration change. This is an older exploit but one that may not be patched on your own installation. Watch the video to ensure you are protected! Tomitribe’s Enterprise Support service works with Sonatype to monitor all reported vulnerabilities to Tomcat, TomEE, and ActiveMQ to help protect our customers from malicious hackers. Learn more about how we help protect our customers here.

Read More

Singleton Session Beans: Eager initialization and ordering

By Apache TomEE, Jakarta EE, Java EE, TomEE No Comments

Tomitribe support customers often use Java Singleton EJBs, and while powerful the sequence of startup and initialize can be confusing. This tutorial will help explain how Singleton EJB’s can be eagerly initialized at application startup and how we can define a priority during this process. Review EJB Annotations Before jumping into the code let’s do a recap of the following annotations used in this blog post: @Singleton Component-defining annotation for a singleton session bean. @Startup Marks a singleton bean for eager initialization during the application startup sequence. @DependsOn Used to express an initialization dependency between singleton components. The container ensures…

Read More

CRUD with TomEE, MicroProfile, and REST

By Apache TomEE, Java EE, MicroProfile, Open Source, TomEE 3 Comments
In this article, we are going to learn how to create a REST API using Java EE 8, MicroProfile, Hibernate, PostgreSQL and the TomEE application server. It's really easy and fun to develop Java EE 8 applications. Tools You Will Need: Maven 3.3+ JDK 1.8 PostgreSQL Note: We will not go through the process of how to install the needed tools in this tutorial. Generate the Project We will use the MicroProfile starter to generate our application. Go to start.microprofile.io and enter the details as follows: groupId: org.superbiz artifactId: blog MicroProfile Version: 2.0.1 MicroProfile Server: Apache TomEE 8.0.0-M2 Examples for...
Read More

Creating MicroProfile Applications with TomEE by David Salter

By Community, MicroProfile, Open Source, TomEE No Comments
David Salter @GeefyGeorge Watch David’s video that uses the MicroProfile Starter “Beta”  https://start.microprofile.io with Apache TomEE. David is helping the TomEE community and MicroProfile community beyond committing code. “Both the TomEE and MicroProfile (and Java EE in general) are great communities and I’m proud to help out in any way I can.” -David Salter
Read More

The Flexibility and Power of MDBs, Illustrated

By ActiveMQ, Apache TomEE, Open Source, TomEE No Comments

Tomitribe supports many organizations that use Message-Driven Beans in production with TomEE. This post is derived from experience working with those organizations to improve their system performance and software architecture. Previously we published a MDB tutorial followed by a deeper dive in the article “MBD-to-MDB Messaging: Harness the Power of the River Delta“. This week we’ll provide an illustrated example of how MDBs can work together to create flexible and powerful messaging system. JMS The Java Messaging Service (JMS) is a standard for sending messages between clients using a messaging broker. The concepts behind JMS, queues, and topics are explained…

Read More

Upgrading TomEE: Keeping jettison as the JSON provider in JAX-RS

By Apache TomEE, Java EE, Open Source, TomEE No Comments

In this article, we are going to learn how to configure on TomEE 7.x or later with the legacy JSON provider used by TomEE 1.7.x. This scenario is useful when you are migrating JAX-RS based applications and want to keep the legacy JSON processing from the Jettison library (v1.3.7) used by TomEE 1.7.x. Since TomEE 7.x, The Johnzon library has been the default provider because it implements the JSON-P_1.1 (JSR-353) and JSON-B_1.0 (JSR-367) specifications. Application and Server configurations In order to enable Jettison as the JSON provider for TomEE 7.x or later you need to execute the following changes: In…

Read More

MBD-to-MDB Messaging: Harness the Power of the River Delta

By ActiveMQ, Apache TomEE, Open Source, TomEE No Comments

Tomitribe supports many of organizations that use ActiveMQ, JMS, and Message-Driven Beans in production with TomEE. This post is derived from experience working with those organizations to improve their system performance and software architecture. The idea behind yesterday’s MDB tutorial was to divide up the work of spidering a web page among three different MDBs each with a specific purpose. This division of labor is an important concept in messaging in general and MDBs in particular. This article shows how MDBs can communicate with outside applications as well as other MDBs in a Java EE application server. This latter capability,…

Read More

5 Minutes or Less: Message-Driven Beans with ActiveMQ and TomEE

By ActiveMQ, Apache TomEE, Open Source, TomEE 6 Comments

Tomitribe supports many of organizations that use ActiveMQ, JMS, and Message-Driven Beans in production with TomEE. This post is derived from experience working with those organizations to improve their system performance and software architecture. When you have finished the tutorial you may be interested in a deeper discussion of what the tutorial is designed to teach you about MDBs. For that, proceed to “MBD-to-MDB Messaging: Harness the Power of the River Delta” which explains how MDBs can be used to create a river delta-like architecture. The tutorial contains three MDBs and one stand-alone JMS client. The purpose of the system…

Read More

Debug mode in Docker for Tomcat and TomEE

By Apache TomEE, Docker, ES, Open Source, Tomcat, TomEE One Comment

Remote debugging is a common practice for troubleshooting issues in software development. If you are using Tomcat or TomEE with Docker containers as part of your stack you can find various techniques to enable debug capabilities in these types of containers: 1. Create a custom Docker image by extending an existing official one[1] 2. Extensive customization of CATALINA_OPSTS[2] However, both approaches require extra steps in some scenarios. Below I share the simplest method I have used to do remote debugging in Apache Tomcat and Apache TomEE with a Docker image: $ $ docker run -it -p 8080:8080 -p 8000:8000 -e…

Read More

Free Cookbook of 166 Java EE Code Examples

By Apache TomEE, Jakarta EE, Java EE, Open Source, TomEE No Comments

A point of pride for the TomEE community is a large library of examples contained in the TomEE GitHub project. Whenever you clone or otherwise download the TomEE GitHub project you get nearly fourteen dozen examples you can review and run to learn more, not just about TomEE, but Java EE in general. The examples are like a free, code-centric cookbook that covers everything from programming a simple Java web application to CDI interceptors, to WebSockets with TLS Security. With 166 coded examples to choose from it seems there is something for everyone. Getting started with TomEE and running its…

Read More

5 Minutes or Less: ActiveMQ with JMS Queues and Topics

By ActiveMQ, Jakarta EE, Open Source 15 Comments

Tomitribe supports a lot of clients that use ActiveMQ and JMS in production. This post introduces you to both ActiveMQ and JMS. If you already understand the fundamental concepts behind JMS messaging, skip ahead to “A Short ActiveMQ and JMS Tutorial”. It should take five minutes or less. If you are new to JMS than keep reading! JMS Concepts A messaging system is composed of a JMS Broker (middleware), Queues and Topics, and Producers and Consumers. The JMS Broker There is a common misunderstanding that JMS messages are sent directly from one application to another; that the application sending is…

Read More

Jakarta EE: A New Hope

By Community, Jakarta EE, Open Source No Comments

It was announced today that we in the Jakarta EE community would not be able to modify the javax namespace. When I heard that statement uttered for the first time, I was certain I heard wrong. I asked several questions hoping for more positive news with better options in the future. No, it was exactly what I heard. Many of you know me as a positive voice in the community, but even my calm demeanor was cracked. Several visceral statements left my mouth and at one point during the meeting I recall using the word asinine. Transitioning through the stages…

Read More

Docker y debug de Apache Tomcat y TomEE

By Apache TomEE, Docker, ES, Open Source, Tomcat, TomEE No Comments

El debug remoto es una práctica común para investigación de problemas de microservicios. Si estas utilizando contenedores Docker Apache Tomcat o Apache TomEE, en la web puedes encontrar varias técnicas como lo son: 1. Extender una imagen oficial y personalizar[1] 2. Utilizar personalización extensiva de CATALINA_OPTS[2] Sin embargo ambos enfoques requieren extra pasos aplicables para algunos escenarios. A continuación les comparto la forma más sencilla que he utilizado para poder hacer debug remoto en Apache Tomcat y Apache TomEE: $ $ docker run -it -p 8080:8080 -p 8000:8000 -e CATALINA_OPTS=”-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=*:8000″ tomcat:9.0.17-jre11 Anatomía de las opciones utilizadas: docker run Comando para…

Read More

Surviving the Frequency of Open Source Vulnerabilities

By Community, Open Source, TomEE No Comments
If you think your company is immune to cyber attacks, think again. By some estimates, nearly half of all websites have, at this very moment, a critical security vulnerability and nine out of ten have at least a moderate security vulnerability.1 No One Is Safe Even the largest and most sophisticated sites are not fully secure. It’s estimated that of the 500 busiest websites one third are not secure including sites like ESPN.com, BBC.com, Wikia.com, MyShopify.com, Chegg.com, and NBA.com1. Within the last year, some of the largest companies in the world have experienced breaches exposing sensitive data and affecting millions...
Read More

It’s Easy! Your First TomEE Pull-Request: Fetch, Code, Commit, and Push

By Community, Open Source, TomEE No Comments

This is the second installment in a two-part article covering the Process Task portion of the Contribution Workflow. The Contribution Workflow is covered in detail in the first part within “Section 1: The Contribution Workflow Overview.” The Process Task portion of the Contribution Workflow is where you do the work on an issue (bug fixes, enhancements, tests, documentation) after getting assigned a JIRA ticket. This is where the rubber meets the road; where the actual work of writing or coding a solution takes place. The following diagram shows how the Process Task portion of the Contribution Workflow fits into the…

Read More

It’s Easy! Your First TomEE Pull-Request: Fork, Clone and Branch

By Apache TomEE, Open Source, TomEE No Comments

In the last installment, “It’s Easy! Your First TomEE Pull-Request: Using JIRA”, we showed you how to discover and get assigned a task in the TomEE open source project. This article, broken up into two parts, shows you how to get set up so you can start contributing and how to use Git to preserve your changes and save them up to your GitHub account. Section 1: The Contribution Workflow Overview 1.1 JIRA Ticket 1.2 Process Task 1.3 Submit Changes 1.4 Merge Changes 1.5 Clean Up Section 2: Process Task 2.1 Fork, Clone, Branch TomEE 2.1.1 Fork 2.1.2 Clone 2.1.3…

Read More

It’s Easy! Your First TomEE Pull-Request: Using JIRA

By Apache TomEE, Community, TomEE No Comments

While all open source tools (i.e. GitHub, Maven, Mailing lists, Java IDEs) used by the TomEE open source community are important, the process of identifying and managing the work done on the project is critical to our success. The tool we use for managing work is the TomEE JIRA issue tracking system. Note: If you are not already familiar with JIRA tickets or find them confusing, you should read “It’s Easy! The Anatomy of a JIRA Issue” after reading this article. It will help clarify all the information a typical JIRA Issue addresses. Becoming a part of the TomEE community…

Read More

TomEE for Every Day!

By Apache TomEE, Community, Open Source No Comments

The “TomEE for the Holidays” campaign ended on January 16th of this year. It was great to see so many new Contributors (close to 50) join the TomEE project. In addition, participation from veteran contributors skyrocketed resulting in a level of communication and collaboration that would make any open source community proud. With the success of the “TomEE for the Holidays” initiative, the question became obvious: “How can we (Tomitribe) maintain a high level of participation and comradery in the project?” There were many things that made “TomEE for the Holidays” a success. Encouraging people new to open source to…

Read More

It’s Easy! The Anatomy of a JIRA Issue

By Apache TomEE, Community, Open Source No Comments

One of things that I had to learn about when joining the TomEE open source project was JIRA. JIRA is an issue tracking system with some light project management. It’s a great tool for keeping track of who is working on what and what bugs or issues need to be addressed. Note: JIRA isn’t an acronym it’s a truncation of the word, Gojira which is the real Japanese name for Godzilla. The folks that created JIRA chose the name as a tongue-in-cheek jab at their biggest rival at the time, Bugzilla. When you join the TomEE community you will end…

Read More

It’s Easy! Get the TomEE Source Code and Join the Community

By Apache TomEE, Open Source No Comments

One of the greatest joys of my life has been working in Open Source. Why? First, I get to work on exactly what I want when I want. Software development is a creative process and working for someone else doesn’t always let me express myself. I need that. If my contributions are helpful, in line with the project’s goals, and are approved by my peers I can make a difference. That brings me to the second thing I love about open source: The people. Every project is different but in the TomEE project, everyone is volunteering their efforts and time…

Read More

Stateless Security, MicroProfile JWT and OpenSource R³ Jam come to DevNexus

By Community, MicroProfile, Open Source No Comments

It’s the week before a conference. You’re giving a new talk. This is the moment when all speakers are at their least confident. And what, I have to write a blog to earn a shirt? Who made these rules? Oh, we did. Alright, let’s do this. Introducing OpenSource R³ Jam In a very PartyOne inspired front, we’re getting together with DevNexus, Hazelcast, Jakarta EE, Okta, and Sonatype needs to throw a fun new party at DevNexus next week in Atlanta, Georgia, March 6-8th. DevNexus has soared to the top of my US conferences list and is sitting right up there…

Read More

It’s Easy! Debugging with IntelliJ and TomEE

By Apache TomEE, Open Source, TomEE No Comments

In our last post we provided a step-by-step tutorial that explained how to debug Enterprise Java applications on TomEE from the Eclipse IDE. This time we’ll do the same thing but with IntelliJ! I’ve always found debugging Enterprise Java applications to be a challenge, but modern features of the Java Virtual Machine and tools like IntelliJ make it easy. If you are already familiar with IntelliJ but have not debugged a TomEE application, then this will be a quick but useful tutorial. If you are new to IntelliJ or TomEE you’ll find the steps outlined here very easy to follow….

Read More

It’s Easy! Remote Debugging with Eclipse and TomEE

By Community, Eclipse Foundation, Open Source, TomEE No Comments

I’m going to try something different in this article. I’m going to use lots of images as a reference for readers. I have not done that before, but I’ve found when I’m learning something new that it can be very helpful. A big hurdle for me personally, as a Java EE developer, is debugging server-side code from an IDE. In this tutorial, I’m going to show you step by step how to set up Eclipse for “remotely” debugging Java EE applications. I put remotely in quotes because in this article you are really running TomEE on the same machine as…

Read More

TomEE on Azure cloud

By Apache TomEE, Open Source No Comments

If you have an application on TomEE and want to deploy it on Microsoft’s Azure cloud, then this blog post is for you. Once everything is configured, the build and the deployment will require only a single command line and you will be able to access the application from anywhere in the World! Downloading TomEE-Azure Module We have already prepared a TomEE/Azure module ( cloud-tomee-azure module found in the TomEE examples) to make working with TomEE in Azure much easier. To take advantage of this module, you will first need to checkout TomEE from Github: git clone [email protected]:apache/tomee.git Then, navigate…

Read More

How to Contribute to the TomEE Website

By Apache TomEE, Open Source No Comments

In a previous post, “How to Get Started Contributing to TomEE or any Open Source Project”, we explained the general workflow – things to do and steps to avoid – that can help you join and maximize your contribution to an Open Source Project. In this post, we will walk you through the technical steps one can follow to contribute to the Apache TomEE Website. It’s common knowledge in any Content Management System (CMS), that the complexity of information organization is directly proportional to the amount, type and format of information an organization want’s to provide to the users. For…

Read More

Custom ConfigSource with MicroProfile Configuration

By Community, MicroProfile, Open Source No Comments

In the previous blog post “An Overview of MicroProfile Configuration” we have seen how to start using MicroProfile Configuration and covered the most common cases where it can be used. In today’s blog post, we are going to show you one of the advanced features of MicroProfile Configuration: the ability to add your own ConfigSource. To refresh your memory, MicroProfile Config already ships with a few ConfigSources by default: microprofile-config.properties file, system properties, and environment variables. What if your source of Configuration is somewhere else? Maybe a database or an API? Good news! MicroProfile Configuration allows you to create your…

Read More

An Overview of MicroProfile Configuration

By Community, MicroProfile, Open Source One Comment

When we are developing an application, it is usually a good practice to externalize some aspects of the application so we can change its runtime behavior without the need to change the code. This is what we call Configuration. A few examples may include the application language, the currency symbol, the username and password to connect to the database or a system path to store uploaded files. In a Monolithic Architecture, you may get away from Configuration. It is not a big deal to perform a couple more builds to change some parameters. In the Microservices world, it is impossible….

Read More

Tweaking Your Skills in Open Source

By Community, Food for thought, Open Source No Comments

As I said in “The Best Thing I Ever Did Was Open Source”, open source is really where my heart is, so I’m grateful to be working on TomEE – even if sporadically – and seeing that project evolve and grow.  Since David Blevins post, “TomEE for the Holidays”, we have seen a serious uptick in the number of contributors, pull requests, and commits to TomEE.  Every new community member has joined with the same simple question, “How can I help!”, and all of them have received a warm welcome and a plentiful todo list. It’s been a while It…

Read More

How to Get Started Contributing to TomEE or any Open Source Project

By Apache TomEE, Community, Open Source No Comments

What follows is an article, “Contribution Tips”,  from the updated Community page on the TomEE website initially penned by David Blevins and improved by the Community, which explains how to get started contributing to Apache TomEE. We’ve been fortunate enough to have had several people join the project since the “The Best Thing I Ever Did Was Open Source” and “TomEE for the Holidays” posts were published.. I cannot think of a better resource to get folks started than the article re-published below.  Regardless of what project you are working on it is excellent advice. Subscribe to the developer mailing…

Read More

JMS 3.0: Get Involved!

By Jakarta EE, Open Source No Comments

As the Jakarta EE Working Group at Eclipse prepares for the release of Jakarta EE 8, we are starting to think about what comes next.  Actually, most of us have been thinking about that for a while, but we have to get Jakarta EE 8 out before we can start to overhaul the platform.  One of the technologies that is due for an overhaul after Jakarta EE 8, is the Java Message Service (JMS) which was originally introduced in 2000 – nearly 20 years ago. Since 2000, the JMS specification has evolved slowly, but steadily, and while it remains one…

Read More

TomEE: A Tutorial on Microprofile Rest Client

By MicroProfile, Open Source, Tomitribe No Comments

On a previous blog post, Triber Ivan Junckes Filho published an overview of the MicroProfile Rest Client (Rest Client) standard. In this tutorial, we are going to build on Ivan’s overview to show you, step by step, how you can develop and deploy this type-safe approach to consume an existing JAX-RS microservices with Apache TomEE 8 M1. If you have not read Ivan’s overview, it is suggested you do that first and then come back to this tutorial. The toolset we are going to use for this tutorial includes Java 8, Apache TomEE 8 M1 and Maven 3.6. The technologies…

Read More

TomEE for the Holidays

By Apache TomEE, Community, Open Source No Comments

If I were to pick a month to brand “Open Source Month”, it would be December. I could list personal reasons for it, such as December 1999 was the first month I ever contributed to Open Source. That happens to be the same month I married Amelia and have often joked, “I’ve been married to them both ever since.” The real reason is December is the month open source heroes are born. December is Your Time to Shine I’ve noticed a pattern of December being a very prolific month for open source contribution. In December 2006 the OpenEJB 3 codebase…

Read More

Overview of MicroProfile Rest Client

By Apache TomEE, MicroProfile 2 Comments

The goal of this article is to give you an overview of the MicroProfile Rest Client (aka Rest Client), how it works and the advantages you can obtain when utilizing it to implement a Java REST client. When we talk about microservices, we discuss many different architecture topics, but sometimes we forget the importance of a good client API. The Rest Client is a Java REST client based in JAX-RS 2.0, that uses its current features, but also provides a different way of interacting with the microservices. The 1.0 version of Rest Client was first introduced in MicroProfile version 1.3…

Read More

The Best Thing I Ever Did Was Open Source

By Apache TomEE, Community, Jakarta EE, Open Source, Tomitribe No Comments

When I look back on the 25 years since I graduated and entered the market as a professional software engineer, I see a tapestry of accomplishments, failures, joy, frustration, and finally peace.  One accomplishment, in particular, the Co-Founding of OpenEJB with David Blevins, stands at the top of that list. I started out in Open Source working with Mark Flury on EJB-OSS in 1999, which was later renamed JBoss.  Shortly after that experience, I was hired by a company to develop an entirely new Open Source EJB Container system, OpenEJB, which later became an official Apache project. The opportunity to…

Read More

TomEE: Configuration Techniques

By Apache TomEE, Open Source No Comments
Many applications running on TomEE interact with other services, such as databases or 3rd party REST APIs. As an administrator, we need to be able to tell the application how to connect to these systems. TomEE provides a couple of different strategies for configuration and in this article, we’ll explore the different packaging and deployments. Separating configuration from your application This is probably the most common way of working with TomEE. Any resources that are used in the application are defined in the application server and mapped to a unique name in a JNDI directory. To improve the portability of...
Read More

TomEE: Announcing TomEE 8 M1!

By Apache TomEE, Community, MicroProfile, Open Source No Comments

The Apache TomEE community has announced the release of TomEE 8.0 – Milestone 1 (M1) – a major step forward for TomEE. Tomitribe and TomEE TomEE is a project that members of Tomitribe have been working on and supporting for years and our efforts to release TomEE 8.0 was significant. Tomitribe is proud to contribute to the project. A special thanks to all the other committers for their hard work as well! Java EE 8 This is the first TomEE release that provides support for Java EE 8 and Jakarta EE, where two new specs were introduced: JSON-B, a well-needed…

Read More

TomEE: SSL/TLS Secured Websockets

By Apache TomEE, Arquillian, Jakarta EE, Open Source No Comments

In a previous article, WebSocket and Lock it! we showed how to use basic authentication on websocket calls to an application deployed on TomEE. In this article, we explain how to add SSL/TLS security to the connection between the client and the application server. To demonstrate this, we’ve created a new wss-secured-websocket project. This work is valid both for Secure Websocket (WSS) and HTTPS. Adding transport layer security is important in order to protect the data exchange. Payloads and headers are sent in clear text when using simple HTTP. This is critical when considering the authentication header. As you can…

Read More

Tomitribe Goes To CodeOne 2018

By Community, Jakarta EE, MicroProfile, Open Source, Tomitribe No Comments

Tomitribe is excited to be attending Oracle CodeOne  (Oct 22nd – 25th) this year. Eight Tribers – David, Amelia, Jean-Louis, Roberto, Otavio, Cesar, Ivan, and Richard – six of whom are giving a total of 12 presentations.  Attendees can also meet us during exhibitor’s hours at booth 5209, where we can tell you about Tomitribe Community Partnership Program.  We also look forward to sharing the latest updates on the Open Source Projects we are part of. For the first time in 20 years, there will be no JavaOne conference. JavaOne always brings back memories for those who have attended and…

Read More

JavaDay Ecuador 2018

By Community, Tomitribe One Comment

On September 8, the first edition of Java Ecuador Day was held in beautiful Quito, Ecuador. The conference boasted more than 350 attendees with 20 speakers. As a Triber, I got the opportunity to attend as one of those speakers and together, alongside the attendees, we shared the latest knowledge in the Enterprise Java Ecosystem. Topics covered included Jakarta EE, Serverless, MicroProfile, Clean architecture, Cloud, Microservices, and success stories.   Alberto Salazar, the leader of the Java User Group in Ecuador, indicated that this is the first time that professionals from the region, members of the Java Community Process, Java Champions,…

Read More

TomEE: A Tutorial on MicroProfile Fault Tolerance

By Apache TomEE, Community, MicroProfile No Comments

This is the final of a series of 3 articles dedicated to the MicroProfile Fault Tolerance. We started by introducing and giving an overview of the specification in “MicroProfile Fault Tolerance, Take 2”. Next, we explained the different annotations and their options in “MicroProfile Fault Tolerance Annotations”. Now we take a look at practical MicroProfile Fault Tolerance examples using TomEE 7.1.  This version of TomEE is compliant with MicroProfile v1.2 and includes the Geronimo Safegard library implementing the Fault Tolerance v1.0 spec. The MicroProfile Samples project We’ll be using the microprofile-samples project created by Roberto Cortez and which is available on…

Read More

MicroProfile Fault Tolerance Annotations

By Eclipse Foundation, MicroProfile, Open Source No Comments

In our last article about Microprofile Fault Tolerance we explained the motivation for this project and the need to provide a few design patterns under the microservice friendly Microprofile spec, namely: Bulkhead – isolate failures in part of the system. Circuit breaker – offer a way to fail fast. Retry – define criteria on when to retry. Fallback – provide an alternative solution for a failed execution. We also presented some of the libraries that implement this Microprofile specification, including the Geronimo Safegard library, the one used on TomEE 7.1. Lets now dive a bit deeper into the spec and…

Read More

MicroProfile Fault Tolerance, Take 2

By MicroProfile No Comments

Understanding Fault Tolerance and the strategies of resilience and eventual consistency are extremely important to microservices. This article an update and expansion of an article written in April of this year. It’s the first part in a series of articles explaining how the MicroProfile Fault Tolerance specification is used in microservices. The Rise of Resilience and Eventual Consistency The Rise of Resilience and Eventual Consistency For decades the prevailing wisdom for handling transactions in distributed systems has been the use of SQL Relational Databases, binary communication protocols, and two-phase commit transactions. All-or-nothing and reliable transactions were paramount, data had to…

Read More

JNoSQL and Jakarta EE

By Community, Eclipse Foundation, Jakarta EE, Open Source 2 Comments

The Enterprise Java platform has been evolving steadily since 1999 when it was first introduced as Java 2, Enterprise Edition. Today, Enterprise Java is being standardized under the Eclipse Foundation with the new brand, Jakarta EE.  Jakarta EE picks up where Java EE 8 left off, but the roadmap going forward will be focused on modern innovations such as microservices, modularity, and, now, NoSQL databases. The JNoSQL project, of which I’m a part, is excited to announce that it will be the first new standardization project to be adopted by Jakarta EE providing a robust and vendor agnostic API that…

Read More

TomEE: Tutorial on MicroProfile JWT

By Apache TomEE, MicroProfile 4 Comments
Last week we published the post, "MicroProfile JWT" by @JLouisMonteiro that covers the basics, standards, pros, and cons involved in implementing stateless security with Microprofile JWT. In this post, we are going to deep dive into JWT role-based access control on Apache TomEE. Since the release of TomEE 7.1, we now have a JWT specification implementation defined using Microprofile version 1.2. The specification is available in the official release. Marking a JAX-RS Application as Requiring MP-JWT RBAC For this, you need to add the annotation @LoginConfig to your existing javax.ws.rs.core.Application subclass. The purpose of the @LoginConfig is to annotate the...
Read More

MicroProfile JSON Web Token (JWT)

By MicroProfile, Open Source No Comments

In the post, “What is Eclipse MicroProfile”, we explained what Eclipse MicroProfile is and why it’s important. MicroProfile is made up of several specifications. In this post, I’ll explain the JSON Web Tokens (JWT), the MicroProfile JWT specification, and how it can be used to implement stateless security in microservices. I’ll also talk about the extensibility and flexibility of MicroProfile with claims. Tomitribe has been helping companies implement REST services for years and one of the most common problems our clients have is deciding how to implement authentication and authorization. The development of MicroProfile and its use of JWT is…

Read More

Oracle Developer Community Tour Latin 2018

By Community, Jakarta EE, MicroProfile, Open Source, Tomitribe No Comments
About a month ago we post a blog about Otávio Santana speaking with the Latin America Oracle Developer Community Tour (Latin ODC Tour).  The Latin ODC Tour focuses on great technologies such as Oracle Cloud, Containers, Java, Microservices, Oracle Database, DevOps, MySQL. This year, the ODC has covered twelves cities: Paraguay, Asunción Chile, Santiago de Chile Brasil, São Paulo Uruguay, Montevideo Argentina, Buenos Aires Perú, Lima Ecuador, Quito Colombia, Barranquilla Costa     Rica, San José Panamá,  Ciudad de Panamá México,  Ciudad de México Guatemala,  Ciudad de Guatemala While the tour visits countries in both South and Central America it spans communities...
Read More

TomEE: An Overview of the TomEE 7.1 release!

By Apache TomEE, Jakarta EE, Open Source, Tomitribe No Comments

The Apache TomEE community has announced the release of TomEE 7.1  – a major step forward for TomEE. For more details on the changes please look into the release notes. For tips on upgrading, see this blog post by @jongallimore  from earlier this week. Tomitribe and TomEE TomEE is a project that members of Tomitribe have been working on and supporting for years and our efforts to release TomEE 7.1 was significant. Tomitribe is proud to contribute to the project. A special thanks to all the other committers for their hard work as well! Java 8 Update Prior to TomEE 7.1 you…

Read More

TomEE: Upgrading is Easy!

By Apache TomEE, Open Source No Comments

Apache TomEE has been designed from the ground up to be very easy to upgrade. This allows the open source project to innovate quickly and update often without major disruptions to our communities deployments. What follows are some simple tips that will help you upgrade when the time comes. Drag and Drop Jars Keeping a simple structure and remaining true to its Tomcat roots is a guiding principle for Apache TomEE. As a result, the folder structure for TomEE is simple, and easy to understand. Adding additional libraries, for example, a JDBC jar for a datasource defined in TomEE’s main…

Read More

TomEE: Fat-Jar Deployments

By Apache TomEE, Docker, Jakarta EE, MicroProfile 2 Comments

In this blog post, I will show you how to create a distribution of your application that ships with TomEE so you can run your application out of the box. What is a Fat Jar? Fat Jar, Uber Jar, Shaded Jar. These have different names, but all of them have the same meaning. It is simply a Jar file that contains all of your project class files, plus all the classes of the dependencies of the project. This concept is not really new, it has been used for several years. However, with the growing popularity of cloud deployments and adoption…

Read More

TomEE: WebSocket and Lock it!

By Apache TomEE, Arquillian, Jakarta EE, Open Source No Comments

Note: This article was originally authored by Romain Manni-Bucau in May of 2015 and has been updated by Bruno Baptista. Tomitribe uses the WebSocket API to add security credentials to REST services in our support services. This article has been updated to the latest versions of WebSocket and other resources and shows how you can easily add authentication to your REST calls.   WebSockets are a good technical solution when there is a requirement for interactive communication. A typical example is a chat system, but it makes more sense for live updates such as the stock market.  For example, being…

Read More

TomEE: Using JCache with CDI

By Apache TomEE, Hazelcast, Jakarta EE No Comments

Although this article was originally written and published earlier, we felt it was important to cover it again on our blog.  JCache continues to offer exceptional advantages in enterprise computing and has been used by Tomitribe support services to improve performance of enterprise applications running TomEE.   The JCache JSR (JSR-107), finalized in late 2014, provides a standard mechanism to cache values in a map-like structure using a key. There are a number of different JCache implementations to choose from, and swapping between them should be no more difficult than swapping out .jar files on the classpath. In these examples,…

Read More

TomEE: Getting Started in 5 min or Less

By Apache TomEE No Comments

Note: TomEE is a great, lightweight, Java EE 7 application server that you may not have worked with before.  No fear!  This quick and easy tutorial, originally published in 2016, will get you started working with it and hopefully convince you that TomEE is not only easy and lightweight but also powerful!     If you just heard about TomEE and want to know more, then you’ve come to the right place. This post will guide you on how to start using TomEE for your Java EE project.  Members of Tomitribe are co-founders and significant contributors to the TomEE open source…

Read More

TomEE: Running with Systemd

By Apache TomEE, Community, Open Source No Comments

What is systemd? Systemd is the first background process to run and the last background process to end in the Linux operating system. It has the process id (PID) of 1, meaning that all other background processes (aka daemons) are created by systemd; it is the root background process in a Linux operating system. Systemd is designed to provide a unified configuration process for bootstrapping Linux processes, enable and disable process, and manage the interface between those processes and user applications.  Developers can configure systemd using standard files called units. Units can be used for defining the initialization process for…

Read More

Tomitribe is Family

By Community, Tomitribe No Comments

Life is full of curveballs, which is an American euphemism for saying, “things don’t always go as expected.”  At the beginning of this year, I decided to return to the Java open source ecosystem when offered the chance by David Blevins and Tomitribe. It’s probably the best decision I’ve made in 14 years, and I’m grateful to Tomitribe for bringing me aboard and to the Java community for making me feel welcome.   Tomitribe is an exciting place to work. We are very involved in the new Jakarta EE (EE4J) project at Eclipse Foundation with members participating on many of…

Read More

What is Eclipse MicroProfile?

By Community, Eclipse Foundation, MicroProfile No Comments
Eclipse MicroProfile defines itself as: The MicroProfile is a baseline platform definition that optimizes Enterprise Java for a microservices architecture and delivers application portability across multiple MicroProfile runtimes.  -- MicroProfile FAQ Java for Enterprise applications are usually built on two options: Spring Framework and Java EE. Java EE created a set of specifications defined first by Sun Microsystems and then by Oracle through the Java Community Process. Specifications were meant to facilitate vendor agnostic development and deployment. During the last 5 years, the Java EE platform has become stable and mature resulting in less frequent releases. Java EE has also...
Read More

Tomitribe on the ODC Tour: Paraguay, Chile, and Brazil

By Community, MicroProfile, Open Source, Tomitribe No Comments

Otávio Santana has been busy on the exciting, twelve-country Latin America Oracle Developer Community Tour! He is personally speaking in Paraguay, Chile, Brazil, Argentina, Peru, Guatemala, and Mexico! Otávio Santana, a Java Champion and Triber, has worked on everything from jNoSql to JBoss Weld to Hibernate as well as being a member of the JCP Executive Committee, working on several JCP Expert Groups, and is deeply involved in the development of MicroProfile and Jakarta EE. Otávio is presenting on Grid Database, jNoSQL, and Stateless Microservice Security via JWT and MicroProfile. His first stop, on July 31st, was in Paraguay in…

Read More

Tomitribe at EclipseCon France

By Community, MicroProfile, Open Source No Comments

I had the privilege of being invited to speak at EclipseCon France (June 13th & 14th) about Microprofile, microservices, and JWT.  The conference took place in Toulouse and being from France I have been there a couple of times, but never took the time to enjoy it. The architecture is beautiful, the city clean, and the people nice. Don’t know if it was because it was the beginning of summer or not, but I found the city very active and alive in the evenings. The conference was held at the convention center downtown. The venue is large and well organized. There were…

Read More

Recap: Jakarta EE at Open Source North

By Community, Eclipse Foundation, Jakarta EE, Java Community Processes No Comments

I had the privilege of speaking at Open Source North last week (June 15th) about the transition from Java EE to Jakarta EE. The conference was well organized, and in its 4th year, was completely sold out weeks earlier. It was exciting to see so many people from the Twin Cities focused on open source! The presentations were excellent. The presentation “How Much Freedom is too Much?” about Microservices by Kelly Goetsch was packed to the point that there was not even room to stand in the back. It shows how relevant the topic is to folks in the trenches today. I also enjoyed…

Read More

The REST Security Road Trip

By Community, MicroProfile, Open Source No Comments

My road trip from Coimbra, Portugal to Madrid, Spain, where I spoke to the Madrid JUG about REST security, was beautiful, but full of wrong turns, some potholes, and flash thunderstorms. It reminded me of my adventure in learning and coming to understand REST security. There are so many security specifications that it’s easy to get turned around and to encounter new technical concepts. The “Deconstructing REST Security” talk, originally created by David Blevins, is like a clear roadmap to navigate the potholes and thunderstorms of REST security. It makes navigating the difficulties far simpler, providing both context and a clear route to…

Read More

Jakarta EE: Unofficial State of the Union, Part 1

By Blog, Community, Eclipse Foundation, Jakarta EE, Open Source No Comments

There is so much going on with the transition of Java EE from Oracle to the Eclipse Foundation, that it can make your head spin.  Java EE is a huge platform, not only in terms of technology, but also in terms of specifications, governance, and marketing. This “Unofficial” state-of-the-union is an attempt to bring people, not intimately familiar with the work being done, up to speed. Obviously, this is subject to change as the transfer of intellectual property from Oracle to Eclipse Foundation, the establishment of a governance model, and the marketing plan are still being defined. Hopefully, however, this…

Read More

Javeros de Colombia 2018

By Community, MicroProfile, Tomitribe No Comments

The inaugural Javeros de Colombia conference was held in the city of Cali Colombia on May 19th. The Javeros de Colombia is designed to provide a space for Latin American Java User Groups, education, public and private sectors to gather together and discuss the latest Java related technologies and trends like: Microservices, Cloud, Jakarta EE, Microprofile, Security, and DevOps. The conference was organized by three Columbian JUGs from the cities: Cali @CLOJUG , Medellin @MedellinJug, and Barranquilla @JUGBAQ . Together these JUGs created an outstanding gathering with content and with speakers from all over Latin America that included Community Leaders, Open Source Advocates, Java Champions, Oracle Aces and…

Read More

Proprietary to Open: A Sea Change for Jakarta EE

By Eclipse Foundation, Jakarta EE, Open Source No Comments

As was discussed in the last post, Jakarta EE: Into the Fourth Epoch, enterprise Java is undergoing the biggest change in the 20-year history of the platform. Although a big part of this is the brand change from Java EE to Jakarta EE as well as a new technical direction (i.e. cloud-native and microservices) the most important change will be the move from a proprietary Java EE to fully open source Jakarta EE platform. The change in custodianship, from Oracle to the Eclipse Foundation, is fundamentally the most important change to the entire platform. To understand why, it’s important to…

Read More

Jakarta EE: Into the Fourth Epoch

By Eclipse Foundation, Jakarta EE No Comments

This year, enterprise Java is undergoing the biggest change in the 20-year history of the platform.  Although a big part of this is the brand change from Java EE to Jakarta EE, the most important is a new openness and the technical direction. With the transition to the auspicious of the Eclipse Foundation and a new focus on cloud-native and microservices, this year demarcates a new Epoch in the story of enterprise Java. [REVISED: changes in the timeline were made on May 12th to match feedback and corrections from the community ] A Brief History of Enterprise Java I like…

Read More

Getting Started with Microprofile Metrics

By MicroProfile No Comments

In the world of Microservices, knowing how your server, application and container are doing is crucial for success. In production, every system administrator wants to be able to proactively check the container memory, the disk, the network, and the JVM. They need to know how many times a service is being called, how long this service took to execute, and several other metrics that help to manage services before they become unavailable. The MicroProfile Metrics is a specification that provides a standard way for application servers to expose metrics and, also, an API for developers to build their own application metrics. This article will…

Read More

MicroProfile Fault Tolerance

By MicroProfile No Comments

The need With the rise of microservices or large scale distributed systems and communicating through HTTP and NoSql databases, we also see the rise of eventual consistency.  The focus on reliability or the perfect operation at all times had to shift to resilience; the ability of an application to recover from certain types of failure and yet remain functional.  All-or-nothing and reliable transactions were paramount, data had to be safely stored above all, sacrificing the user experience and cost. The objects on those transactions could also be very complex, frequently using multiple tables and even different databases. Typically, if a…

Read More

Jakarta EE: Faster, Stronger, Better

By Jakarta EE No Comments

As you probably already know, Java EE has been donated by Oracle to the Eclipse Foundation and re-branded as Jakarta EE.  The first version of Jakarta EE has not yet been released (as of this writing), but when it is, it will include all of the specifications and will essentially be the same as Java EE 8 with some updates.  As a result, the first release will be christened Jakarta EE 8 to show that the evolution of the platform continues; that it’s not an entirely new platform.  That’s a good thing! In the beginning Java EE – originally called…

Read More

I ♡ Jakarta EE

By Jakarta EE 4 Comments

In 1996 I started developing software with Java and JDBC and fell in love with the beauty of the language and the idea of creating common standardized, vendor agnostic APIs. The Servlet container system arrived in 1997 in the form of the Sun’s Java Web Server, adding to my enjoyment, and when EJB was introduced in 1998 and J2EE in 1999, I was hooked. I wrote books, did public speaking, worked in open source, and developed J2EE applications for production. It was wonderful to be part of such a huge sea of change in enterprise application development. But by 2004,…

Read More

Open Source Heroes

By Open Source 2 Comments

Open source heroes are never hard to find. They begin projects, lead communities, and inspire others.  It takes a special kind of person to contribute to open source. Most projects never reach the status of Linux or Apache or Eclipse, but even the smallest and most obscure projects can make software development easier for other developers.  It is hard – no, impossible – to imagine our world without open source and the people who create and maintain it. We forget our heroes Yet, we do forget! As a society, we forget all the developers who come together and give some…

Read More

The Global Tribe

By Tomitribe No Comments

In my 23+ years as a career software developer and technologist, I’ve worked for a lot of companies and run a couple of my own.  Sometimes I work from my home office and sometimes I work at the company headquarters. I love it! Some people need to have face-to-face interactions and live contact with people or they go nuts, but I’m not one of them.  I LOVE working remotely from my home office. I’ve designed and built my own office furniture (that sounds more impressive than it is) and made my home office, a sunroom with windows on 3 sides,…

Read More

Running with the Tribe

By Tomitribe 3 Comments

Most people in the Java industry don’t know me but there was a time when I was very involved with Java, open source, standardization, and the community. I started working professionally as a Java developer in late 1995 and continued to grow professionally within the Java community until 2004 when I left to become an analyst. Since then I have worked a lot of jobs, a few startups, and done a lot of development but none of it was in Java or involved open source. I’m grateful for everything I discovered during my 14-year hiatus, but sometimes I wish I…

Read More

Java EE to Jakarta EE

By Jakarta EE No Comments

The vote for the new brand for Java EE is up and the community has until February 23rd to decide amongst the choices. We’ve generally stayed quiet about the Java EE rebranding in large part because we love “Java EE” and even larger because the legal complexities around the Java trademark are severely complicated. I’ll simply point out that after more than 20 years the Java trademark is still disputed, not a registered trademark ®, and Oracle should be cut some considerable slack. We often want things without truly understanding the responsibility that comes with getting what we want. Oracle bears a…

Read More

Eclipse Makes History in 18 Years of JSRs

By Java Community Processes, MicroProfile No Comments

This July the Eclipse MicroProfile put in motion efforts to file our first JSR, now known as JSR-382 Configuration API 1.0 submitted by the Eclipse Foundation. While there are several fantastic technical merits around JSR-382 Configuration API 1.0, from an industry perspective, this JSR is the very zeitgeist of where we are at and where we are headed. Like Kevin Bacon, almost everyone and everything is 6 degrees of separation from the Configuration JSR and after this JSR, nothing will ever be the same again. Why File a JSR at all? Let’s call out the elephant in the room. Some…

Read More

Is Jigsaw Dead? Not quite.

By Java Community Processes No Comments

There are a lot of opinion pieces about Jigsaw and the recent vote. Most of them are titled “Jigsaw Rejected,” or “Back to the Drawing Board.” In 28 days time you will read articles that have titles like “JCP has Change of Heart on Jigsaw” and “Jigsaw Approved in Java 9.” Would it surprise you to learn that there are 2 to 3 more votes ahead? You might now be thinking, “If there are so many votes ahead, how could Jigsaw have been rejected?” The short answer, it wasn’t. Unless we learn the JCP process, we could be seeing up…

Read More

Code Club: The Next Generation of Coders

By Community No Comments

Introduction to Code Club Following on from my Ignite talk at Devoxx UK 2016, I want to introduce Code Club and share my experiences as a volunteer for those that may be interested but didn’t attend the conference. Code Club is a non-profit organization here in the UK that aims at creating a volunteer-led after-school coding club for 9-11 year olds in every primary school across the UK. Each club typically runs for one hour after school, and meets up every week. Coding is featuring more and more on the school curriculum these days, and running a Code Club is…

Read More

“I do not hate Apache Maven”

By Open Source One Comment

I recently had an opportunity to hold a few talks at DevoxxUK. This one went down as a treat, so I’d like to share a little depth in this quick blog. Thanks go out to the entire team, but some special thanks to Mark Hazell and Ellie May for organizing a really great event. Awesome work guys! Apache Maven This is a quick and simple take on ensuring that your Apache Maven based project starts and, more importantly, stays lean and clean. It’s a summary of my best practices, and I’m always happy to learn a few more. Keep your…

Read More

MicroProfile: Optimizing Enterprise Java for a Microservices architecture

By MicroProfile One Comment

Today we are announcing a new collaboration called the MicroProfile.  Together with Red Hat, IBM, Payara, the LJC and all who will join us, we aim to merge innovation and standardization into Enterprise Java with Microservices focus. Microservices in Enterprise Java If you look at all the servers in the Enterprise Java space, particularly Java EE implementations, you see a trend: lighter is better.  From the day TomEE was announced in 2011 it was a 30MB distro, booted in a second, ran with default 64MB JVM heap and passed the Java EE 6 Web Profile TCK on hundreds of t1.micro…

Read More

My CREST Journey to Open Source Contribution

By Open Source No Comments

I have been contributing to open source software (OSS) projects in my life as a programmer and as a result I have gained a better understanding of APIs and frameworks. This practice has helped improve my skills for my developer tasks. CREST is a project that I have contributed to and I would like to give an overview about and how to contribute to it. This project can be found at tomitribe.io along with several other open source projects. What is CLI? First, you should understand what the CLI (Command Line Interface) is. Applications that use the OS command line…

Read More

QCon São Paulo 2016

By Community No Comments

Aligned with the proud growth of the Brazilian Tech Community was QCon 2016 in Sao Paulo. Many software professionals worldwide, and Tribers from Tomitribe including Amelia Eiras, Daniel Cunha, David Blevins and Thiago Veronezi, came to attend this practitioner-driven conference to gain heaps of knowledge and share their support for a strong developer community. QCon is not just a Java conference. The Brazilian Tech Community warmly welcomes Conference attendees from all over the world and technologies. QCon-SP had a good selection on a variety of topics; these sessions were directed towards managers, designers, operations and developers. We had the opportunity…

Read More

JUG-DA Meetup: Not only a Lesson in Java Technology

By Community No Comments

Intro What a great week of Java. First there was the community driven conference of JavaLand in the theme park Phantasialand in Brühl near Cologne, then there was the Java User Group Darmstadt meeting with speaker David Blevins @dblevins, accompanied by Stephen Chin @steveonjava and Sebastian Daschner @DaschnerS. I went to both, there is already nice coverage on JavaLand 2016,  therefore I will write about the later. JUG-DA attracted David to come to Darmstadt and give an interesting talk on hidden gems of Java EE and the role of functional programming therein. David’s talk had the main part of the…

Read More

Developing Batch Applications with TomEE

By Apache TomEE, Jakarta EE No Comments

Java developers have recognized the need for batch applications a really long time ago, but have had to get by with non-standard approaches – until now. JBatch (JSR-352) introduces an exciting Java specification for building, deploying, and running batch applications, thus standardising the development of such applications. Currently JSR-352 is part of the Java EE 7 specification and has full access to all other features of the platform, including transaction management, persistence, messaging, and more, offering the developer very robust data processing opportunities. In this article, we will create from scratch, a small web application which demonstrates the use of…

Read More

JavaLand 2016 – A Triber Report

By Community No Comments

Last week, I visited the JavaLand conference at Brühl in the Phantasialand amusement park. Going to JavaLand for the third time and JavaLand being hosted for the third year, you can call me a JavaLand veteran. Nevertheless, this was a very special JavaLand for me because I just became a member of Tomitribe only one week before. So this was a very good occasion to not only learn new stuff, but also meet and celebrate with other members of the Tribe such as the incomparable Amelia Eiras, David Blevins, and Andy Gumbrecht. Besides celebrating, I also visited some very interesting…

Read More

Getting Started with TomEE

By Apache TomEE No Comments

If you just heard about TomEE and want to know more, then you’ve come to the right place. This post will guide you on how to start using TomEE for your Java EE project. But wait, what exactly is TomEE? TomEE is just Tomcat + Java EE = TomEE (Pretty simple, right?) What is TomEE? (the long version) TomEE is assembled from a vanilla Tomcat zipped file with all the additional libraries required to provide a Java EE environment. These include Apache CXF, ActiveMQ, OpenWebBeans and OpenJPA to name a few. This means that if you already use Tomcat and…

Read More

10 Years of Jfokus

By Community No Comments

Last week, the Tenth edition of Jfokus took place in sunny Stockholm, Sweden (really, believe me it was sunny). The conference was three days long, with the first day dedicated to Tutorials and the next couple of days to Conference Sessions. The numbers are impressive. It had over 1700 attendees, making it the second largest Java conference in Europe, right after Devoxx Belgium. Tomitribe was happy to sponsor the event. Literally, every attendee was a Triber with the Jfokus / Tomitribe lanyard. If like me, you don’t know what a lanyard is (at least the English word), it’s the strap…

Read More

Testing persistence with Arquillian on TomEE

By Apache TomEE, Arquillian, Jakarta EE No Comments

Testing enterprise applications that use persistence can be a hassle: A test database has to be configured. The database has to be seeded before the test. After the test the state of the database has to compared with the expected result. This post shows how to write a test for a Java EE application that uses the Java Persistence API using these technologies: Arquillian is a testing platform that allows, among other things, testing Java EE applications in a Java EE application server. The Arquillian Persistence Extension is an extension to Arquillian that takes over seeding the database, matching the…

Read More

Arquillian Cube: ‘Production Near’ Unit Tests Against Docker Images

By Arquillian, Docker No Comments

This is a detailed followup to an Arquillian talk I held at JAX Germany, having had the honour of being asked to do the talk by Aslak Knutsen (the Arquillian project lead). Aslak provided some useful pointers and information to get me up to spec for the talk, so many thanks Aslak. The entire blog source code can be found on GitHub here, so you might want to fork that first before reading on. What is Arquillian Cube? This article assumes that you are already familiar with the Arquillian extensible testing platform; if not, then you should pop over to…

Read More

TomEE QA (in Portuguese)

By Apache TomEE No Comments

A few weeks ago, the Tomitribe team represented by Daniel Cunha and Roberto Cortez had the honour to participate in the first ever SouJava online meeting, hosted by Bruno Sousa and Otávio Santana. SouJava is the largest Java User Group in the world, with almost 18 thousand members. Very impressive. SouJava contacted us to talk a little bit about TomEE and the end result is a video with a lot of interesting questions about the technology.     The video is in Portuguese, but if you would like to see something similar in English, please let us know. Enjoy!

Read More

CREST: Boost Your CLI!

By Open Source No Comments

Reminder about CREST CREST is a library that allows you to write a command line interface program using a declarative API like JAX-RS for HTTP. Its key features are: 100% Annotation based Ability to use bean validation on method Fully Java integrated Supports complex parameter binding as parameter Often used as an example, for what it’s worth, here is a “Hello, World!” example using CREST: public class Hello { @Command public static String hello(@Option(“name”) String name) { return “Hello ” + name; } } One more step The latest release of CREST boosted its features, which gives you more power…

Read More

Apache TomEE, Arquillian, JCache, CDI, and Hazelcast – What more could you want?

By Apache TomEE, Arquillian, Jakarta EE 2 Comments

Well, OK, maybe a lot more, but these technologies just work so sweet together that we decided to jump in and give it a go at the Devoxx UK 2015 Hackergarten. Heather VanCura, a leader of the Java Community Process (JCP), clubbed several developers together for some fun key bashing and this is the result. Enjoy! This hack session was brought to you by Bruno Baptista, Paulo Martins and Andy Gumbrecht, with thanks to Heather VanCura and Devoxx UK 2015. JCache API This API allows the use of caching methods in an intuitive and transparent manner. You need two things in your…

Read More

Java in the Cloud: EEruption of the Heroku

By Jakarta EE No Comments

Today all major vendors have their own Cloud platform and most of them are betting on it for the future. Even if the cloud is not yet the everyday solution, it brings new challenges for servers. This post will deal with one example to show how Apache TomEE meets the challenge with success. What are the challenges of the Cloud? All Cloud platforms are a bit different as each have different default targets (i.e., Spring, Java EE, your own platform, only runtime, only build, or even build + runtime, etc.), however, they all share some common points a modern framework/server needs to tackle:…

Read More

Asynchronous EJBs on TomEE

By Apache TomEE, Jakarta EE 2 Comments

After configuring Asynchronous EJB invocations on WebSphere for the last few weeks at work, I had some ideas on how Asynchronous EJBs would work on TomEE and how they can be configured. EJB 3.1 specification does not say anything about how to implement asynchronous invocations and the semantics can differ a bit between application servers. This article: Gives a short introduction into Asynchronous EJB Explains the configuration options of TomEE with respect to Asynchronous EJBs Provides some ideas on how to configure your own system Includes a project demonstrating configuration options with TomEE A Quick Introduction into Asynchronous EJBs The…

Read More

Using JCache with CDI

By Apache TomEE, Hazelcast, Jakarta EE No Comments

The JCache JSR (JSR-107), finalized in late 2014, provides a standard mechanism to cache values in a map-like structure using a key. There are a number of different JCache implementations to choose from, and swapping between them should be no more difficult than swapping out .jar files on the classpath. In these examples, I will use Hazelcast which provides a distributed cache, giving the benefit that all of the nodes in the cluster are using the same cache and working consistently. CacheManager For anyone new to JCache, here are the basic concepts. It’s also worth having a look at the…

Read More

JRebel 6.2 Release – Now with full Apache TomEE Support!

By Apache TomEE One Comment

Overview JRebel 6.2 adds more support for TomEE. Traditionally TomEE support has relied on our regular Tomcat support and now TomEE is its own first-class platform. All flavors of TomEE are supported: TomEE Web Profile through PluME. Keep reading to see how you can leverage the awesome power of TomEE and get the productivity boost from JRebel! What is JRebel? JRebel is a developer’s productivity tool. JRebel allows developers to reload code changes instantly. It skips the rebuild, restart, and redeploy cycle intrinsic in Java development. This enables developers to get more done in the same amount of time and…

Read More

WebSocket and Lock It!

By Apache TomEE, Jakarta EE No Comments

WebSockets are a good technical solution where there is a requirement for interactive communication. A typical example is a chat system, but it makes much better sense for live updates such as the stock market.  Being able to see share prices go from red to green is a “must have” for stock traders. The WebSocket API is quite easy to use, but when it comes to security you don’t have a lot of options. However, don’t forget the first step in the WebSocket protocol is to upgrade a HTTP request. If you have a HTTP request, you should be able…

Read More

Financial Data: TomEE to the Rescue!

By Apache TomEE No Comments

Michal Kalkowski and Romain Manni-Bucau have both worked around the financial services domain. This post shares some of their experience, and shows how TomEE can fit this need. This post is linked to a related project available on GitHub at: https://github.com/rmannibucau/financial-batch.git Overview The project demonstrates a typical case of maintaining a universe of entities, which are taken from an external source. In this context that would be a list of securities from XETRA market, which are shared on the website as a file and updated daily. The goal of this batch is to capture these updates and make sure they…

Read More

50 Shades of TomEE

By Apache TomEE One Comment

I don’t know if we’ll get a film after the international success of it but since few months the world is all about microservices. Whatever your opinion on it is you will surely have to work with it a little bit. One common way to go to production with microservices is to do a shade of your application and simply deploy an executable jar. Let go through common Microservice solutions which work with TomEE flavors. TomEE Shades A shade is a Maven plugin to aggregate project dependencies in a single jar. It can be done with Maven dependency plugin with some…

Read More

Ready-to-edit application in under 3 min. with TomEE

By Apache TomEE One Comment

We’ve teamed up with Codenvy to help make getting started with TomEE even easier than before! For those of you who don’t know, Codenvy is a cloud-based IDE that supports a range of popular programming languages and frameworks. Best of all, its free to use and you don’t even need to create an account to get started. You can go from zero to a running instance of a ready-to-edit application in TomEE in under 3 minutes and without leaving your browser. All this with a short guided tour to walk you through the whole process. Launching Codenvy We’ve added a…

Read More

Thread pool configuration for inbound resource adapters on TomEE

By Apache TomEE One Comment

Developing resource adapters is surely one of the least known parts of the Java EE platform. Besides developing the component itself, additional knowledge is required for operating the component and customization work is slightly more complex for resource adapters. Whereas for servlets, most of the customization work for an operating environment is done by configuring the WebContainer thread pool size and the resource pool sizes. This article presents a demo application that allows you to play around with important properties for successful thread pool configuration of inbound resource adapters on TomEE. The Demo application The demo application is very simple….

Read More

TomEE Security Episode 1: Apache Tomcat and Apache TomEE Security Under the Covers

By Apache TomEE One Comment

Introduction and Scope Security is often of great concern and should be high on the list of any project goals. It covers a vast domain and Apache Tomcat, which relates directly to Apache TomEE, is no different in this regard. This first in a series of security related blog posts is not intended to be exhaustive, but aims at providing you with some insight into how Apache Tomcat and Apache TomEE security works. Apache TomEE provides much more than just Servlets or JSP’s, as it does when it comes to the security related elements. The second post will focus more on…

Read More

Monitoring an Apache TomEE Service on Windows with VisualVM

By Apache TomEE No Comments

It’s always good to ‘see’ how your Apache TomEE server is performing in a real world environment. A really great visual tool for this job, that actually ships with the latest Java Development Kit (JDK), is the Java VisualVM application. I will assume you already have a recent Oracle JDK and Apache TomEE installed as a Windows Service. Although this post will focus on the Windows Service platform, most of the information is relevant for other Java platforms. You’ll find this tool in the C:/Program Files/Java/[JDK]/bin directory as ‘jvisualvm.exe‘ – Just run it and have a play with the application…

Read More

Apache TomEE JAX-RS and Arquillian Starter Project

By Apache TomEE, Arquillian, Jakarta EE 2 Comments

Know JAX-RS, but haven’t yet dug into Apache TomEE? Way too busy or impatient to read documentation? This repo is for you. https://github.com/tomitribe/tomee-jaxrs-starter-project The only thing better than a Maven archetype is a repo you can fork with everything already setup. Fork this repository on Github and you’re good to go! The contents are incredibly small: ./LICENSE ./pom.xml ./README.md ./src/main/java/org/superbiz/Color.java ./src/main/java/org/superbiz/ColorService.java ./src/test/java/org/superbiz/ColorServiceTest.java ./src/test/resources/arquillian.xml The only mandatory actions are the following steps: $ git clone [email protected]:tomitribe/tomee-jaxrs-starter-project.git $ cd tomee-jaxrs-starter-project/ $ mvn clean install tomee:run That’s it! With those simple steps above, you get the following: Easy to extend starter project setup…

Read More

Tomitribe at DevoxxUK

By Community No Comments

DevoxxUK is next week and we couldn’t be more excited. Why? Oh, let me count the ways. We’re a Sponsor It will be our first time as an official sponsor of a conference! How’s that for a start? A proud little milestone for us. If you haven’t been to a Devoxx yet and you have your pass, you’re in for a treat. If you don’t have a pass, get one. You won’t regret it. My first was Devoxx Belgium in 2012. Devoxx UK will be my fifth Devoxx event. Does that tell you anything? Norm is Back We unfortunately had…

Read More

Joining The Tribe

By Tomitribe No Comments

After one full month working at Tomitribe, I could not pass up on the opportunity to share my experiences and impressions with the world. I’d like to step back for a moment and reflect on the situation of how I arrived to be where I am now. Perfect way to enter the game with my first Tomitribe blog entry. Thanks Theresa for taking time to read it carefully. My first experience In the first part of my career, I worked in Paris with blind and visually impaired people. Aside from being my first real job, it’s been one of the…

Read More

Meet Tomitribe at JFokus 2014

By Community No Comments

Don’t miss Tomitribe next week at Jfokus this February 3rd – 5th in Stockholm, Sweden. JFokus is one of the largest Java developer events in Europe – 1500 attendees, over 50 conference presentations with topics ranging from Java SE & Java EE, Frontend & Web. Android & Mobile, Continuous Delivery & DevOps, Internet of Things, Cloud & Big Data, Future & Trends, Alt.JVM Languages like Scala, Clojure & many more. The tribe will be there speaking on Apache TomEE, showing how developers can achieve simple and lightweight applications on Tomcat leveraging Java EE technologies. The session will be Wednesday, 9am…

Read More

Empezar a Usar Apache TomEE

By Apache TomEE No Comments

Obtén una introducción a Apache TomEE y aprende como usar el soporte de Eclipse a Tomcat para desarrollar rápidamente aplicaciones Java EE. Empezarás a codificar en menos de 10 minutos. Editor’s Note (Tim O’Brien): Tomitribe is excited to announce that we’ve asked Alex Soto to start contributing content en Español. ¿No habla Español? I’d recommend that you start learning now because you are going to miss some great TomEE content. Try Duolingo.

Read More

Get Started with the TomEE Maven Archetype

By Apache TomEE 2 Comments

I know you’ve been thinking about TomEE for some time. It’s on your list of “things to check out”, but maybe you haven’t had the time to set aside a half day to dive into the details of running TomEE? Maybe you think it’s going to take too long to get started? It won’t, give me two minutes. Here’s a video that demonstrates the process of getting started with TomEE in just that time. If you want to get started with TomEE and you have two minutes to spare, watch this: All you need to do to start using TomEE…

Read More

Feed the Fish

By Open Source 12 Comments

The announcement of the end of commercial versions of GlassFish has a lot of people pronouncing GlassFish, in general, dead. While GlassFish is definitely not dead, the open source version will live, there are definitely going to be some challenges. This move closely follows IBM’s similar actions in slowly backing away from Apache Geronimo, the basis of IBM WebSphere Community Edition for which IBM discontinued commercial support in May this year. The two giant software companies seem to be following each other lock and step. Who is to Blame? While it’s tempting to wag our fingers at these two giants…

Read More

Meet Tomitribe at Devoxx 2013

By Community No Comments

Don’t miss Tomitribe at Devoxx 2013. I’ll be there presenting some of the recent accomplishments in the EJB 3.2 spec released as part of Java EE 7. As a spec revision largely focused on API fixes, there were a couple changes with big impact! Prepare to have your view of EJB turned upside down. EJB 3.2 and Beyond – Wednesday November 13th, 17:50 We will be there with shirts and stickers to give away, so meet us at the session or catch up with us in the hacking area. If you see us, please do come and say hi! There’s…

Read More

In Development: Improved Support in NetBeans for TomEE

By Apache TomEE No Comments

If you use NetBeans or you’ve attended a conference or read Oracle’s NetBeans blogs, you know who Geertjan Wielenga is.  Geertjan has lived and breathed NetBeans for years, and I see him everywhere I go.  I fly to Belgium for Devoxx? Geertjan.  I show up in JavaOne? Geertjan.  He’s everywhere. For years it’s been like this, if there is a conference that has anything to do with Java, he’s there spreading the good word of NetBeans.  Geertjan’s done a great job of building a very loyal audience of Java developers who are passionate about NetBeans because he’s focused on integration,…

Read More

Creating a MongoDB Security Realm for Tomcat

By Apache TomEE No Comments

At Tomitribe, much of our client work focuses on integration. For example, a customer might come to us and with an existing LDAP server that they want to use as a security realm or, in this case, a requirement to connect to a MongoDB database that contains users, credentials, and role definitions. The great thing about Tomcat and TomEE is that it’s very easy to write custom components that can use any external resource to do just about anything. While there are likely several valid ways to use a MongoDB database as an authentication provider for Tomcat, in this blog…

Read More

Attention Bay Area: See David Talk TomEE at Google on Wednesday Night

By Community No Comments

If you are in the Bay Area, stop by Mountain View tonight to see David Blevin discuss TomEE at the Silicon Valley Java Users Group (SVJUG). For more information and to RSVP, click here. There are a limited number of seats available. Here’s the talk description, but more important than the presentation you’ll have a chance to ask David your questions after the presentation: “Apache TomEE is the Java EE 6 Web Profile certified version of Apache Tomcat and combines the simplicity of Tomcat with the power of Java EE. The first half of this session introduces TomEE and shows…

Read More

Who Are The Real Heroes Of Open Source?

By Open Source One Comment

As the first entry in the Tomitribe blog, I wanted to take the opportunity to give a personal view of why. Why do we exist? What do we hope to achieve? Chasing a Dream Before I talk about that, I want to share an intimate moment in time. A defining moment when we knew we truly had something special. This is a picture from April of 2011, before Apache TomEE had been certified and announced to the world, when it was still very much a dream. Open source is full of heroes and these people are my personal heroes and…

Read More