Tuesday Feb 09, 2016

Cargo Tracker Java EE 7 Blue Prints Now Running on WebLogic

For those unaware the Cargo Tracker project exists to serve as a blue print for developing decently designed Java EE 7 applications, principally utilizing Domain-Driven Design (DDD). The project has long run on GlassFish 4 and Java SE 7. The project was recently enhanced to run the same code base also on WebLogic 12.2.1 and Java SE 8. The instructions for running the project on WebLogic are available here. Feel free to give it a spin to get a feel for both Java EE 7 and WebLogic 12.2.1.

The fact that a fairly non-trivial project like Cargo Tracker can run on both GlassFish and WebLogic with no code changes and some very minimal configuration differences handled via Maven profiles speaks to how much Java EE portability is a reality with Java EE 7. Some initial work has also been done to run the project on WildFly - hopefully we will be able to highlight that work here soon as well.

Monday Jan 04, 2016

Adam Bien Impressed by Java EE 7 Support in WebLogic

As many of you are aware WebLogic 12.2.1 now offers full Java EE 7 commercial support. Recently Java rock star Adam Bien took Java EE 7 support in WebLogic for a spin and was impressed. He commented on fast startup, low memory footprint, fast deployments, excellent NetBeans integration and solid Java EE 7 compliance. You can read Adam's full write-up here.

None of this of course is incidental. WebLogic is a mature product with an extremely large existing deployment base. With those strengths often comes the challenge of usability and WebLogic is no exception. Nonetheless many folks that haven't kept up-to-date with WebLogic evolution don't realize that usability and performance have long been a continued core focus. That is why folks like Adam are often pleasantly surprised when they take an objective fresh look at WebLogic. You can give WebLogic 12.2.1 a try yourself here. There is no need to pay for anything as you can use a free OTN developer license (this is what Adam used as per the instructions on his post). You can also use an official Docker image here.

Solid Java EE support is of course the tip of the iceberg (albeit an extremely important tip of the iceberg) as to what WebLogic offers. WebLogic offers a depth and breadth of proven features geared towards mission-critical, 24x7 operational environments that few other servers come close to. One of the best ways to observe this is taking a quick glance at the latest WebLogic documentation.

Thursday Dec 24, 2015

Season's Greetings and Happy New Year from the GlassFish/Java EE Team

On behalf of the GlassFish and Java EE team at Oracle I wish you and your family Season's Greetings and a very Happy New Year.

This has been another important year for us. We continued our evangelism efforts worldwide, released GlassFish 4.1.1, started the GlassFish 5 branch, released a number of early drafts for critical Java EE 8 JSRs, strengthened the Adopt-a-JSR program and offered full commercial support for Java EE 7 through the best-in-class WebLogic 12.1.2 offering. In a similar vein we saw the number of available Java EE 7 options expand especially with WebSphere Liberty. We were able to warmly welcome Siwpas as a new entrant into the Java EE compatibility family. Most encouragingly we were able to share a number of real world Java EE 7 adoption stories with you and saw strong developer support for the Java EE 7 platform as well as key APIs like JSF and JPA. We are ever thankful for your support and we hope to continue to try our best to serve your interests, perhaps against what many would consider pretty tall odds.

In the coming year it is obvious we will see commercial Java EE 7 support via JBoss EAP very soon. We hope we will also see other strong Java EE 7 options such as TomEE. We hope to continue to move the Java EE 8 specifications and GlassFish 5 forward with support from our community and our JCP compatriots. On the cloud front we will very likely bring Java EE 7 to the commercial Oracle Cloud. If the current momentum of Java EE 7 holds we are sure to be able to share many more great real world adoption stories with you. We will look forward to working harder than ever in engaging you through our development and evangelism efforts certainly including this humble community blog.

As you know I and my colleague David Delabassee are the primary maintainers of this blog. Both David and I will be enjoying some well-earned time-off with our families the next few days. As a result the guns will be mostly quiet at this particular Java bulwark to return recharged and full force in the new year.

Until then, thanks and best wishes once again. We hope to see you next year!

Wednesday Nov 18, 2015

WebLogic Now Java EE 7 Compatible!

With the greatest pleasure I can report that WebLogic 12.2.1 has recently been fully Java EE 7 certified! This represents full commitment from Java steward Oracle to commercial support for Java EE 7. WebLogic joins the ranks of GlassFish 4, WildFly 8, WebSphere Liberty Profile 8.5, Hitachi Cosminexus and TmaxSoft JEUS. With the very broad customer base that both Oracle and WebLogic have globally this is very welcome news for Java EE 7 indeed. All of the Java EE certified offerings are always listed on the official Java EE compatibility page.

As many of you are aware, Java EE 7 is one of the most extensive set of changes to the platform in it's history. Similarly WebLogic 12.2.1 is one of the most significant releases of WebLogic in many years, even not counting full Java EE 7 support. In addition to Java EE 7 support WebLogic 12.2.1 brings two significant sets of changes.

The first is what is referred to as multitenancy. WebLogic multitenancy brings greater isolation similar to what one can accomplish through Linux containers like Docker or traditional virtualization - only applied natively at the WebLogic runtime level. What this means is that multiple applications can run completely isolated from each other on the same WebLogic runtime as though they were running on different domains. The multitenancy concept is intended to be implemented seamlessly across Oracle products in the data center including the Oracle JDK, Coherence, Traffic Director and the Oracle Database. This is a concept currently unique to the Oracle stack.

WebLogic 12.2.1 also builds on the traditional strengths of the product with regards to high availability. A number of features have been added to improve 100% up time capabilities through live patching, live upgrades, clustering, load-balancing, fail-over and replication, especially in large, multi data center, disaster recovery capable deployments. 

The following are the most important links you should explore:

It is worth reminding that prior to 12.2.1, the WebLogic 12.1.3 release supported the Java EE 7 APIs that many customers indicated they thought were most important -  WebSocket, JSON-P, JAX-RS 2 and JPA 2.1. Also note that like 12.1.3, WebLogic 12.2.1 is certified for Java SE 8. Though it is not there yet, WebLogic 12.2.1 will soon also be available on the Oracle Cloud - representing full Java EE 7 commercial support on the cloud from Oracle.

So the question now is who will be next to cross the Java EE 7 compatibility finish line. JBoss EAP 7 recently released an alpha with Java EE 7 support - this is in addition to Red Hat's long standing Java EE 7 compatibility through WildFly. Similarly WebSphere Classic released a beta showing Java EE 7 support in addition to the existing IBM full commercial Java EE 7 support through WebSphere Liberty. It is clear there will be at least two more significant Java EE 7 commercial platforms in the next few months. The Apache TomEE team is also working on bringing forward Java EE 7 features.

For some perspective, few other open standards such as SQL have as many available implementations as Java EE 7 already has.

Wednesday Jul 29, 2015

Java EE @ Voxxed Days Istanbul 2015

Voxxed Days Istanbul 2015 was held on May 9th. This was the first large scale independent Java focused conference ever to be held in Turkey. It attracted some of the best and brightest in the Java ecosystem including Gavin King and Arun Gupta not to mention local Java luminaries like Cagatay Civici (PrimeFaces lead) and Murat Yener (Java Champion). Topics included Java SE, mobile, NoSQL, methodology and of course Java EE. Indeed Java EE had a fairly strong presence at the event. I feel very privileged to be invited to this inaugural event. While in Turkey I am very happy to say I also spoke at two of the largest Java user groups in Turkey - the Ankara JUG as well as the Istanbul JUG.

At Voxxed Days I delivered talks on WebLogic, Java EE 8 and DDD/CargoTracker + Java EE. Others covered topics such as microservices + Java EE, Docker + Java EE, JSF and WildFly. At the Ankara and Istanbul JUGs I delivered demo driven workshops on Java EE 7. More details on the sessions and the trip to Turkey, including slide decks and code, posted on my personal blog.

Monday Jun 08, 2015

The Ghosts of Java EE 7 in Production: Past, Present and Future

In the past few days I've seen a certain predictable group of folks on the Interwebs feigning concern over the viability of using Java EE 7 in production. I have to be honest in that I think it is fairly obvious these concerns are more -ahem- opportunistic than sincere or well-intentioned. Nevertheless I think this is a great trigger to discuss something valuable to the Java EE community anyway - Java EE 7 production adoption in the near past, present and near future.

Head over to my personal blog to read what I hope is a slightly entertaining toungue-in-cheeck but hopefully useful personal insights on the matter. I've dicussed what makes Java EE 7 important both in terms of challenge and opportunity, summarized what we know of real world Java EE 7 adoption right at this moment as well as what we can share shortly, how you can go about using Java EE 7 now and in the near future as well as a brief shot in the dark as to what wonders the future might bring for us all :-). Enjoy!

Please note that any views expressed here are my own only and certainly does not reflect the position of Oracle as a company

Monday Feb 23, 2015

Rakuten: Java EE Adoption in One of the World’s Largest Online Financial Systems

One of the most important things to do at this stage of the life-cycle of Java EE is highlight successful adoption stories. We have been doing just that for a long time through our adoption stories blog as well as JavaOne. JavaOne 2014 was particularly good in this regard and JavaOne 2015 looks to be even better. Indeed we hope the folks with great adoption stories that submitted last year but did not get accepted will resubmit next year. We will highlight some of those sessions from JavaOne 2014 in the next few months and the best place to start is the Java EE adoption story from Rakuten.

Rakuten is one of the largest online financial systems in the world. It is the number one e-commerce platform in Japan generating over 51 billion dollars of yearly revenue and growing on a global scale. It is easily one of the most technically adept companies in Japan and perhaps the world. They had a legacy system build around J2EE and a hodgepodge of various non-standard frameworks such as Spring, Apache Axis and iBatis. They chose to adopt Java EE over these technologies including alternatives such as .NET. They cited vendor neutrality, choice, simplicity, community, ease-of-learning, ease-of-use and productivity as great reasons for selecting Java EE for their next generation platform. They fully leverage Java EE including key APIs such as JSF, CDI, EJB, JPA, JTA and JMS. Along with Java EE they also chose WebLogic as well as Oracle DB/Exadata. They cited performance, scalability, reliability, productivity and support for choosing WebLogic, Oracle DB and Exadata. They also use best-of-breed tools such as NetBeans, Maven, Jenkins and the Atlassian suite of solutions. They achieved the astounding technical feat of completely overhauling their 24/7, extremely high volume online transactional system in just six months including training!

You can see Hirofumi Iwasaki and Arshal Ameen's awesome JavaOne 2014 presentation below (if you are having trouble seeing the embedded video it is available here).

The slide deck from the talk is posted below (if you are having trouble seeing the embedded slideshow it is available here).

Hirofumi Iwasaki and Arshal Ameen have been great advocates of Java EE, especially in Japan. We hope to continue to see great things from them and Rakuten. Rakuten is looking forward to learning and applying Java EE 7 in the real world as soon as possible.

If you have a great Java EE adoption story to share, please do drop us a note (particularly migration stories from other technologies). In the spirit of Java EE centric vendor neutrality, what Java EE implementation or tool set you choose does not matter at all and neither does which part of the globe you are in.

Wednesday Jan 28, 2015

Enterprise Java Newscast: A Good Resource to Stay Up-to-Date

There's so much going on in the Java EE ecosystem that it's very hard to stay up-to-date without getting overwhelmed. As one of the curators of this humble blog I know that all too well. For those very short of time one of the resources that can help you is the JSFCentral Enterprise Java Newscast. It is led by Kito Mann - well respected enterprise consultant, author, blogger and JSF community member. Kito has been a long time supporter of JSF with a long track record of contributing as a JCP standards group expert. The newscast is in fact part of the JSFCentral portal. In the newscast Kito and company discuss interesting recent releases, news items and upcoming events. They also tend to have fairly lively discussion on the newscast on hot topics.

Kito very kindly invited me to join the latest newscast (episode 24). We covered a wide variety of topics including Java EE 8 JSRs, Jersey, RichFaces, Infinispan, Hibernate OGM, WebLogic, Adopt-a-JSR, JavaOne videos and some of my upcoming conferences. The MP3 audio for the episode is available on the linked page. The following are some of the items I contributed (most from this blog):

Friday Dec 12, 2014

Season's Greetings and Happy New Year from the GlassFish/Java EE Team!

On behalf of the GlassFish and Java EE team at Oracle I wish you and your family Season's Greetings and a very Happy New Year!

I am very happy to say this has been yet another busy and eventful year for us. We finished the community survey effort to help drive the agenda for Java EE 8 and GlassFish 5; we released GlassFish 4.1 with support for Java EE 7, CDI 1.2, WebSocket 1.1 and Java SE 8; we released WebLogic 12.1.3 with support for WebSocket, JSON-P, JAX-RS 2, JPA 2.1 and Java SE 8; we officially launched the Java EE 8 JSRs; we are now in the process of spinning up Adopt-a-JSR for Java EE 8. We are ever thankful for your support and we hope to continue to try our best to serve your interests, perhaps against what many would consider pretty tall odds.

In the coming year, we will look forward to working harder than ever in engaging you through our development and evangelism efforts including this humble community blog. We hope the next year will bring a far more concrete vision of Java EE 8, some early work on GlassFish 5 and a fully Java EE 7 capable version of the best-in-class WebLogic commercial offering. We will also continue our work to strengthen the broader Java EE community and align the platform with emergent forces the likes of Java SE 8, HTTP 2, JavaScript/HTML5, Reactive Programming, Microservices, Docker, Big Data and the Cloud.

As you know, I and my colleague David Delabassee are the primary maintainers of this blog with some occasional help from folks like Bruno Borges and John Clingan. Both David and I will be enjoying some well-earned time-off with our families the next few weeks. As a result the guns will be mostly quiet at this particular Java bulwark to return recharged and full force in the new year. Others on our team will continue to work hard behind the scenes towards the goals stated.

Until then, thanks and best wishes once again. We hope to see you next year!

Wednesday Oct 15, 2014

Java SE 8 (and Java EE 7) Comes to WebLogic!

As many of you know one of the key features of GlassFish 4.1 was support for Java SE 8. You may be glad to hear that WebLogic 12.1.3 now is also officially certified against Java SE 8. This makes WebLogic one of the earliest major commercially supported Java EE platforms to certify for Java SE 8. Keep in mind, WebLogic 12.1.3 also supports some key Java EE 7 APIs such as WebSocket, JSON-P, JAX-RS 2 and JPA 2.1 (read this excellent Aquarium entry by my colleague Bruno Borges for details).

This means that you can start using some of the very well received Java SE 8 features such as lambdas, streams and the new Date-Time API in Java EE 6 and Java EE 7 applications even in the most demanding 24 x 7 enterprise environments. WebLogic 12.1.3 has also taken advantage of new JDK 8 features such as improved garbage collection, security enhancements and JDBC 4.2.

You can read more details in a well written blog entry by Steve Felts of the WebLogic team.

Monday Jul 07, 2014

Java EE 7 and more on WebLogic 12.1.3

It isn't absurd to say that most (if not all) Java EE developers are looking for a way to build new projects with the Java EE 7 platform. And if you happen to be a developer working for a WebLogic customer, then you will likely be interested to know that the newly released WebLogic 12.1.3 version comes with support for probably the most interesting Java EE 7 specifications. True to the fact not yet fully Java EE 7 certified, but hey, you can do WebSockets and JAX-RS 2.0 :-)

Check the list of Java EE 7 APIs supported on WebLogic 12.1.3: 

Interestingly enough the implementations of these APIs are already part of GlassFish 4.0 (as noted above), which means that if you already started coding something on top of GlassFish 4 with this APIs, it is likely that your project will also run on top of WebLogic 12.1.3. If you want to try WebLogic, you can check my blog entry on how to install WebLogic 12c ZIP distribution on Linux (the procedures for Windows and Mac are basically the same).

Another very good content to read about WebLogic 12.1.3 is on this whitepaper that tells everything developers must know about WebLogic 12c, from the Java EE 7 partial support to the updated Apache Maven Plugin. So don't be shy, hit the whitepaper to learn what you must to get started at coding Java EE 7 applications. 

Also note that this version of WebLogic has also been upgraded to support Spring 3.0.x, 3.1.x, and 4.0.x. Check the documentation for more details.

Tooling Support

NetBeans developers will probably want to know how to build Java EE applications with WebLogic by reading this OTN article "Using Oracle WebLogic 12c with NetBeans IDE" written by Markus Eisele. It gives developers a very good introduction on setting up NetBeans and WebLogic, and then goes beyond by showing how to initially setup Maven for remote deployment. If you are an IntelliJ IDEA developer, I suggest you to watch the replay of my webcast on "Developing Java EE Applications for WebLogic 12c with IntelliJ IDEA". The slides are also available in case you don't like to listen to my voice :-P 

Don't forget that Oracle also provides its own IDE called Oracle JDeveloper 12c that also got a major update with its own 12.1.3 release. And finally, Oracle's own distribution of Eclipse called "Oracle Enterprise Pack for Eclipse" that also got a major 12.1.3 release which even included support for Eclipse Luna 4.4.

All these IDEs are working fine with WebLogic 12.1.3, but of course if you find a bug please report :-)

Bonus! Docker!

Finally, if you are a Docker user and you are wondering if Oracle WebLogic 12c can be executed from within it to speed up the setup of your developing or testing environments then follow to the "Docker, Java EE 7, and Maven with WebLogic 12.1.3" blog entry.

And don't forget, it's not J2EE anymore...

Wednesday Apr 23, 2014

Webcast: Migrating from GlassFish to WebLogic


As previously announced, WebLogic Server is where Oracle is focusing it's commercial support efforts, supporting the increased delivery of bug fixes, new features, and Java EE 7 APIs.  Which is something our customers are keen to experience.

We will continue to invest in GlassFish as the reference implementation for the Java EE platform, which will continue to be a good option for users to deploy their applications using an open source product.  We will continue to develop and release the GlassFish Open Source Edition.

We are seeing that many GlassFish customers and users want to be on (or move to) a supported application server. Customers of Oracle GlassFish Server may now start planning the migration with ease, and users of GlassFish Server Open Source Edition can start studying the when's and how's of such migration.

Which is why for those who are looking forward to experiencing the feature-rich Oracle WebLogic application server, I will give you in this developer webcast an overview of Oracle WebLogic Server and take a sample Java EE application to walk you through the most common migration scenarios to get your applications redeployed on WebLogic. You will hear about:

  • WebLogic Installation Process, Architectural Concepts, and Clustering Setups
  • Migration of Common Java EE Resources (JDBC, JMS)
  • Seamless GlassFish to WebLogic Redeployment
  • Advanced Classloader Analysis and Configuration
  • Shared Libraries
  • Tools to automate massive migrations
Date: Wednesday, April 30, 2014
Time: 10:00am PT / 1:00pm ET
Register for free online event today

Watch the webcast, and if you have questions, send to me over Twitter at @brunoborges and I will be happy to answer them!

Friday Mar 28, 2014

Migrating JDBC Resources from GlassFish to WebLogic

Customers and users always want to make sure their
Java EE applications run nicely in any application server. But it is not uncommon that sometimes resources must be migrated by hand, or luckly and preferably automated with scripts.

So in order to help our customers and users in getting ready for future migrations from GlassFish to WebLogic, I am following up with my series of articles about Migrating from GlassFish to WebLogic

This time I covered the migration of a resource every Java EE developer knows very well: JDBC resources, or simply, DataSources. But before that, make sure you read the first article in case you haven't: Migrating a Java EE App from GlassFish to WebLogic

Continue reading "Migrating JDBC Resources from GlassFish to WebLogic" ...

Tuesday Mar 04, 2014

Migrating from GlassFish to WebLogic: The Beauty of Java EE

WebLogic is Oracle's strategic application server for the Java EE Platform. And since Oracle decided to focus on it for commercial support, and to leave GlassFish free of any ties from commercial decisions, I decided to bring customers and users a series of blog posts about migrating Java EE apps from GlassFish to WebLogic.

GlassFish will continue to thrill as the Open Source Reference Implementation for the platform, its community, and source of innovation, like we are seeing through the Java EE 8 survey.

In this series, I will help GlassFish customers as well users to experiment, try, and evaluate Oracle WebLogic 12c (Java EE 6 certified) to deploy their mission critical applications. Continue reading through the first part, where I actually demonstrate "the Beauty of Java EE 6", by migrating a sample application without any code change.

And don't forget to follow @glassfish, @java_ee, and @oracleweblogic on Twitter! 

Wednesday Dec 18, 2013

Want to Work on WebSocket/Tyrus? Oracle is Hiring!

The WebSocket team at Oracle is looking for another key contributor! If you want to become part of the dynamic, high-profile team that is working on the industry leading Java API for WebSocket (JSR 356) reference implementation Tyrus and related open standards, projects and products like Java EE, GlassFish and WebLogic, this is the time to update your resume/CV and share it with us. The job is based in Prague, Czech Republic.

The formal details of the job are on LinkedIn.

If you are interested and have any questions, please feel free to post your questions here, get in touch with the Tyrus team or drop an email directly to pavel dot bucek at oracle dot com.