Oracle Blog

Thursday Feb 05, 2015

GlassFish
4.1 was released a couple of months ago now, bringing with it a large
number of welcome bug fixes and improvements. As the Payara Open Source
project was born from it, it would be remiss of us not give all of you
who maintain an interest in GlassFish a brief overview of some of the
things that have changed or been updated since 4.0. Among these changes,
the minimum JDK version required is now 7 Update 65, or 8 Update 20, so
you'll need to update if you intend to use it with anything less; it
likely just won't start otherwise!

Updated Platforms and Specifications

As
you might expect from any major update to an application server (even
if it is just a minor point release), and particularly since GlassFish
still holds itself as the Java EE reference application server, there is
now support for more recent platforms and Java EE specifications.

Java SE 8

Arguably
the headline new feature, GlassFish 4.1 now supports Java SE 8,
bringing it up to date with the latest Java specifications. This brings
with it all of the new features available in Java 8, such as Lambda
expressions, a brand new Date and Time API, and concurrent accumulator
classes. There’s quite a stir around the introduction of Lambda
expressions, and how it adds some functional programming “oomph” to the
Java language.

Wednesday Dec 17, 2014

We
are at JavaOne 2014 and one of the key reasons for me to attend was to
catch up on the future of GlassFish. So on Sunday I went along to the
GlassFish community update at the Moscone Center to consult with the
Oracle on the future of GlassFish. The reason I go to JavaOne is to
hear the definitive view on GlassFish and JavaEE futures from the people
that make the decisions. There's no other conference you can say that
about. On the stand there were 4 Oracle guys who make the decisions on GlassFish. John
Clingan - Product Manager for JavaEE and GlassFish; Mike Lehman -
Product Manager for Cloud Application Framework; Cameron Purdy - VP
Development; Reza Rahman - Evangelist for JavaEE and GlassFish. What
I saw was that there is a roadmap for GlassFish out until JavaOne 2016
as JavaEE8 develops with GlassFish 5 being the reference implementation
for JavaEE 8. GlassFish 5 will aim to be released as the final draft for
JavaEE 8 hit the JCP. Cameron spoke about GlassFish being a key
Research and Development platform with much of the technology created in
GlassFish to support the JavaEE specifications finding its way into
WebLogic with GlassFish having a key role in the evolution of JavaEE far
into the future. Many of the key JavaEE specification developers are
working on GlassFish as part of their JSR work and that is a huge
investment. John reiterated that Quality, stability and security are
still important. The team continue to work to ensure that GlassFish
passes all the JSR Compatibility Test Suites and any issues will be
fixed. In fact the key priorities for the recent 4.1 release were Java 8
support, stability and quality. Also much of the work invested into
GlassFish for JavaEE 8 support will be shareable with WebLogic. Read the complete article here.

Friday Oct 17, 2014

Last November after the announcement by Oracle that no future release
beyond the 3.x version of GlassFish would have support from Oracle
there were a lot of doom and gloom articles about GlassFish. I tried to
put my view that this probably wasn't the end of GlassFish but time would tell.

Why we need a Strong GlassFishAs
the founder of a company that is vendor independent. I think it is
imperative for the Java EE community that there is a strong vibrant
GlassFish server. Having GlassFish out there as a viable production open
source Java EE server drives competition. Competition drives innovation
in competing products. Competition drives quality in competing
products. Competition drives adoption through visibility and choice. If
GlassFish fades then I'm afraid that the whole of Java EE fades. There
will be no competitive incentive to drive innovation in WildFly,
although I'm sure the RedHat engineers wouldn't consciously drive down
innovation and quality but competition naturally keeps them lean, mean
and fast. If GlassFish in the future fails to deliver a good out of the
box experience for Java EE 8 and beyond due to poor quality or poor
performance then future Java EE adoption as a whole is threatened. This
threatens Oracle WebLogic, RedHat JBoss EAP, IBM WebSphere sales as
where are the developers to choose the big beasts for production? Optimism for the FutureOver 6 months have passed and I've been trying to take stock of where we are. I've recently hosted a community Community Q&A session with Reza Rahman and the London GlassFish User Group and organised a BOF at Devoxx UK with David Delabassee to get the community involved in what is happening with GlassFish. We've watched the code archives and started our own builds. Read the complete article here.

Monday Sep 22, 2014

C2B2’s WebLogic As a Service GCloud offering gives you a
fully supported; fully managed WebLogic 11g or WebLogic 12c instance on
the Amazon EC2 cloud.

We provide you with full
administration access to your WebLogic instance to deploy any
applications you wish. We provide full 24/7 operational support for your
WebLogic instance and application helping you with triage, diagnosis
and fix of production issues which are impacting your service. We can
provide you with a single WebLogic for development purposes, a dual node
cluster for High Availability or clusters of larger size for more
demanding applications.

WebLogic provides a complete Java EE5 or JavaEE6 environment for deploying your Java EE applications. WebLogic
As a Service is suitable for on-demand development environments; test
environments and fully highly available production deployments. It is
especially suitable for organisations that have Java EE applications to
deploy and don’t have the WebLogic administration and operational
support experience in-house. Our WebLogic As a Service offering is
deployed to the Amazon EC2 public cloud hosted in Ireland and fully
managed by C2B2 an Amazon AWS Partner.

Key Features:

24/7 Incident Support via Web/eMail/Remote/Screen Sharing

Multiple WebLogic instance sizes to choose from

Managed Operating System and WebLogic patching

Full Administration Access to the WebLogic Console

Full deployment access to WebLogic

WLST access

Optional separate domain controller

Clustered Option across multiple availability zones for high availability

Friday Aug 01, 2014

C2B2 provides a full suite of professional consultancy services to
support the deployment of our GlassFish As A Service cloud offerings or
the deployment of GlassFish on private, public or hybrid clouds.

Architect & Design

For
infrastructure projects a thorough understanding of the cloud and
middleware infrastructure is essential for effective architecture and
design. We have in depth, real world experience of Java Enterprise
middleware both in the cloud and the company data centre.

Approach

We can deliver our services through a range of engagement types including:

Workshops with the technical team and key stakeholders

Informal whiteboard sessions

Architecture and design documents using UML

Training and coaching

An architecture and design engagement typically covers:

Architecture goals and constraints

Architecture styles and patterns

Guiding principles

Selection of products and technologies

Identification of key interfaces and communication protocols

Various system views (functional, technical, use case, deployment etc)

Monday Jul 21, 2014

his blog directly follows on from part 2 on watches, so if you
haven’t already read that then you should probably go and do that now.
You can still create notifications without having any watches
configured; you just won’t receive anything on them. In the last post, I
had created two watches, one Server Log watch and one Collected Metrics
watch. In this post, I will create notifications to work with these
watches.

What are notifications?WLDF notifications
are nothing more than a particular configuration for alerting based on a
condition. Think of them as channels of communication; unless something
is sent down those channels, they will stay empty. The forms that these
channels can take are:

SMTP Email

JMS Message

Diagnostic Image

JMX Notification

SNMP Trap

Which notification should I use?There’s no
right or wrong when it comes to choosing notification methods, but there
is certainly annoying and non-annoying! Of the notification methods
above, all but email are passive methods of alerting
people concerned. The reason I classify them as passive is that you, as
the end-user who wants to be notified, must perform some sort of action
to consume that notification. For example, to consume JMS message data,
you must use a JMS client and would likely process the data
automatically, perhaps for graphing. Read the complete article here.

Friday May 16, 2014

In this post, I'll be looking at using watches in WLDF. What is a watch? A watch, at its most basic, is simply a way to monitor one of three things:

MBeans

A server log

Instrumentation (event) data

To
configure an instrumentation watch, you first need to know what
instrumentation is, and how to instrument applications or servers, so
we’ll put that to one side for now. A server log watch is exactly that -
a watch to monitor the server log for anything you want! For example,
all Critical severity log entries, entries which mention a particular
server or particular log message IDs. An MBean watch relies on the Harvester
to collect server runtime MBean metrics which does not need to be
configured separately for your watch to work, but do bear in mind that
the data gathered will not be archived unless you configure the
Harvester properly:

Note:If you define a
watch rule to monitor an MBean (or MBean attributes) that the Harvester
is not configured to harvest, the watch will work. The Harvester will
"implicitly" harvest values to satisfy the requirements set in the
defined watch rules. However, data harvested in this way (that is,
implicitly for a watch) will not be archived. See Chapter 7,
"Configuring the Harvester for Metric Collection," for more information
about the Harvester.

How do I make a watch? I’ve
already mentioned that Instrumentation watches require a little
understanding of instrumentation first, so I won’t cover them here. If
you’re already familiar with instrumentation, then configuring watches
for your instrumented applications isn’t too tricky.

Step 1: Create a Diagnostic Module The
first step in creating watches is always the same. In the Domain
Structure pane, select “Diagnostic Modules” under the “Diagnostics”
entry.

Select a diagnostic module if you’ve created one, or create
a new one if not. Since creating a new module only requires you to name
it (and provide an optional description), you’ll need to configure it
once you’ve created it. The most important thing to do is to target it
to the server you want to monitor. Read the complete article here.

Wednesday Apr 16, 2014

Adam Bien: What is the relation between C2B2 and GlassFish?Steve Millidge: We've
had a long history helping customers to use GlassFish in production
environments. In fact my first ever conference speech in California was
at Sun's CommunityOne conference on Monitoring and Tuning GlassFish back
in 2009, so we go back a long way. We were Sun partners back then,
promoting GlassFish, and our now Oracle Gold Partners. We have a number
of customers we support on GlassFish and we also run the London
GlassFish User group. With the announcement from Oracle we are now
gearing up our effort to build up the community of contributors on the
core GlassFish source to ensure a good response when bugs and patches
are needed.

AB: What is C2B2's Commercial GlassFish support? What will a customer get for the money?SM: We provide 24/7 operational support to customers deploying GlassFish in production. Read the complete article here.

When combined
with a support subscription from Oracle we can liaise with Oracle to
isolate test cases and get a GlassFish patch if that is the root cause.
We can also liaise with your GlassFish development teams to identify
application problems and suggest application fixes to increase GlassFish
availability, GlassFish scalability and GlassFish performance. Get more support details here.

Thursday Apr 10, 2014

With the release of WebLogic 12.1.2
websocket support has come to WebLogic. In this blog post we'll show
you how to write a simple websockets echo example just to get you
started.Unfortunately the api released with WebLogic is not the JEE7 JSR356 api, which I suspect will come when WebLogic gets JEE7 compliance. On the plus side it's a pretty simple api. In this blog I'm using NetBeans 7.4 and I've started off by creating a basic web project and I've called it Echo.

Tuesday Apr 08, 2014

Thanks to all the partners for the excellent contribution and
on-going business! You are the key for the joint Fusion Middleware
success. Due to all the excellent work and contributions, Every Year it
becomes harder to choose the winners.

The
awarded partners have proven cutting edge projects with the latest
Oracle technology and most important their contribution to the community
like blogs, newsletters, conferences, papers, twitter, linkedin and
their participation in the partner advisory councils.

The Oracle internal award also acknowledges the special contribution to the community. Ritu Chhibber
publishes since years every month the newsletter you read. Ritu, as you
could not come to Malta to receive it in person, when you read these
lines THANKS for your great work!

Monday Mar 17, 2014

Oracle WebLogic was originally developed by BEA Systems, a company which was acquired by Oracle in 2008.

Since
WebLogic had a much larger user base, Oracle quickly made their
intentions to deprecate their own Oracle Application Server (OAS,
sometimes referred to as OC4J, the J2EE container component) in favour
of WebLogic as their primary offering.

C2B2 have worked with
WebLogic since it was owned by BEA and have partnered with both BEA and
Oracle. As partners, C2B2 have worked on a wide variety of customer
engagements across Oracle’s full middleware portfolio.

Migration from OAS to WebLogic

Oracle
Application Server has been deprecated for a number of years now, since
Oracle have pushed forward with their plans to offer only WebLogic as
their application server of choice. Even so, many businesses are still
using OAS or OC4J to run their Java EE applications and are increasingly
finding that they need to migrate to WebLogic to avoid being left with
legacy infrastructure that they can no longer support effectively.

Fortunately,
Oracle has anticipated the need for the process of migration to be as
seamless as possible so, for their part, they have put a lot of effort
into helping customers migrate their infrastructure. Unfortunately,
however much work Oracle might do to help with this migration, there
will always be problems or unforeseen circumstances due to the
dependencies that applications might have on OC4J which change when
moving to WebLogic.

Non-standard technology

A
great advantage of buying from a company like Oracle is the ecosystem
that you get along with the product. WebLogic, for example, has many
other components built by Oracle to improve on the standard Java EE way
of doing things. Problems can occur purely down to the vast amount of
products and services that Oracle offer. Should you use WebLogic’s JMS
implementation, Oracle’s Advanced Queuing (AQ) or Oracle
Store-And-Forward for your messaging scenario? How do they differ? Is
one better than another, or just better suited to certain applications?
It’s clear to see that, although you can be sure that Oracle has a
product or component to suit your scenario, it’s a significant task to
review even the portfolio of components that come with WebLogic, let
alone WebLogic compatible software from Oracle.

Performance Tuning

With
considerations like migration and such a range of technologies to use,
how can you be sure you’re getting the best performance out of your
infrastructure? Consider the scenario – you have a suite of
applications, migrated from OC4J which used to use AQ for messaging but
now bridge endpoints with Oracle SAF. Are the defaults for the
connection pools associated with your data sources optimal for
persistent messaging?

It’s very common for users who are not
familiar with performance concepts to get completely lost when trying to
tune every aspect of their application and server. Should you buy more
hardware? Do you need to? Performance issues can get very expensive,
whether in terms of buying additional hardware, man-hours to maintain
responsiveness or just in terms of your reputation to customers so it
should never be an afterthought. Read the complete article here.

Monday Mar 03, 2014

GlassFish
comes with useful management API, which allows you to manipulate the
GlassFish application server's configuration, including its monitoring
capabilities. In this session I will introduce you to GlassFish’
monitoring and management API and how I use them in my Java EE 7
projects.

Wednesday Jan 08, 2014

With the release of W ebLogic 12.1.2
websocket support has come to WebLogic. In this blog post we'll show
you how to write a simple websockets echo example just to get you
started. Unfortunately the api released with WebLogic is not the JEE7 JSR356 api, which I suspect will come when WebLogic gets JEE7 compliance. On the plus side it's a pretty simple api. In this blog I'm using NetBeans 7.4 and I've started off by creating a basic web project and I've called it Echo. . Read the complete article here.

With the release of W ebLogic 12.1.2
websocket support has come to WebLogic. In this blog post we'll show
you how to write a simple websockets echo example just to get you
started. Unfortunately the api released with WebLogic is not the JEE7 JSR356 api, which I suspect will come when WebLogic gets JEE7 compliance. On the plus side it's a pretty simple api. In this blog I'm using NetBeans 7.4 and I've started off by creating a basic web project and I've called it Echo. . Read the complete article here.

Wednesday Dec 18, 2013

Oracle have just announced that commercial support for GlassFish
4 will not be available from Oracle. In light of this announcement I
thought I would put together some thoughts about how I see this
development. I think the key word in this announcement is
"commercial", nowhere does Oracle announce the "death of GlassFish" in
contrary Oracle reaffirm;

GlassFish Server Open Source Edition
continues to be the strategic foundation for Java EE reference
implementation going forward. And for developers, updates will be
delivered as needed to continue to deliver a great developer experience
for GlassFish Server Open Source Edition so GlassFish is not about to go
away soon. In a similar fashion RedHat do not provide commercial
support for WildFly and only provide commercial support for JBoss EAP.
Admittedly JBoss EAP and WildFly are much closer together than GlassFish
and WebLogic but WildFly and JBoss EAP are absolutely NOT the same
thing. The key going forward to the viability of GlassFish as a production platform is how the GlassFish community develops;

How often does the community release binary builds?

How open is the community to bug fixes?

How much engineering resource does Oracle commit to GlassFish?

At this stage we just don't know the answers to these questions.

If
the GlassFish open source project continues on it's current trajectory
without a commercial support offering then I don't see much of a
problem. Oracle just have to work harder to sell migration paths to
WebLogic in the same way as RedHat have to sell migration paths from
WildFly to JBoss EAP.

In the meantime C2B2 continues to offer support
for your operational JEE applications running on GlassFish and we will
endeavour to work with the community to get any bugs fixed. The key
difference is we can no longer back our Expert Support with a support
contract from Oracle for patches and fixes for any release greater than
3.x. Read the complete article here.