Note: if you're reading this using a feedreader, please make sure you've updated to the updated TheAquarium feed.
Recent Tips and News on Java, Java EE 6, GlassFish & more :
Note: if you're reading this using a feedreader, please make sure you've updated to the updated TheAquarium feed.
Recent Tips and News on Java, Java EE 6, GlassFish & more :
|
GlassFish 3.1.2 has never been so close to a GA/FCS release with promoted build b19 now available as Release Candidate (RC) 1. In fact you might as well go straight to RC2 (build 20), also now available from the promoted builds page. |
|
If you're not sure which archive to use, try this one. Another RC build (RC3) is planned in the next few days. Hopefully it'll be the last one before the product ships.
So make sure you test your applications work properly with the latest promoted build and check out recent blog posts on 3.1.2 if you're wondering what to expect from this release. See you in a short while for a stable public release!
Now you know what to do over the week-end! :)
Modular software development introduces new questions into a softare development cycle. One of these questions is "How Should I Split An Application Into Modules?" Another question is, "How Should I Manage the Release Cycle of a Modular Application?" Several NetBeans Platform project managers were asked this question...
|
Cumulogic is another PaaS provider offering Java as a platform and specifically GlassFish 3.1.1 as of their December 2011 release. |
|
CumuLogic PaaS has a dual public and private cloud strategy and support for Amazon EC2, OpenStack, Citrix-CloudStack, Eucalyptus, and VMware vSphere. It also offers RESTful APIs to manage the application lifecycle, and PaaS administration APIs to manage and monitor the platform.
For more details, you can read their data sheet, one where you'll learn that James Gosling is one of the company's advisors.

I delivered a NetBeans-driven Java EE 6 session to about 80+
attendees at the Austin JUG yesterday. The session built a typical
three-tier Web application using the new/updated technologies in the
Java EE 6 platform. I was told this is one of the largest attendance
seen at the JUG in recent months. Java EE 6 is indeed a crowd puller
;-)
Rob Ratcliff, the JUG leader, started with a great overview of
"Whats new in Java" covering recent JDK
update releases, Java
FX 2.1 Developer Preview for Mac and Linux, Java
EE 6 and WebLogic 12c, NetBeans 7.1
and other stuff. His complete slides are available here. I was fortunate to speak at the JUG because an
informal survey of the attendees showed that nobody attends (or plan
to attend) a conference in the coming months.
During my session, the highly interactive attendees learned about
NetBeans wizard-driven Java EE 6 application development. Here are
some of the features that were demonstrated in the talk:
The application was built using NetBeans and deployed on
GlassFish. This same application can be easily deployed on
WebLogic 12c as well since it is full Java EE 6-compliant as well
now. The complete instructions for NetBeans/GlassFish are
available here
and same
instructions for NetBeans/WebLogic will be made available shortly
as well.

This demonstration is about the new Shelve and Un-Shelve functionality in NetBeans. It currently works with projects which use Subversion, or Mercurial for source control. Shelving changes allows the developer to save project changes externally from the source control system for application later. This leaves the original files unchanged. Un-shelving is applying those saved changes to the...
|
Arun has a blog reminding folks about the Java EE 6 samples that ship with the SDK. The list of code samples is pretty long and a good complement to the Java EE 6 Tutorial. |
|
Note you can also access these samples from any GlassFish install (not just from the SDK) by adding the missing repository using :
% <install-dir>/bin/pkg set-authority -O http://pkg.sun.com/javaeesdk/6/release/ JavaEE6SDK
% <install-dir>/bin/pkg list -a | grep samples
javaee-samples-build (JavaEE6SDK) 1.0-4 known ----
javaee-samples-full (JavaEE6SDK) 1.0-4 known ----
javaee-samples-web (JavaEE6SDK) 1.0-4 known ----
Observing developers at work in the NetBeans IDE, I have noticed that the project groups feature is perhaps not as well known as one might expect. Despite being listed as one of the Base IDE features.
Quickly opening up a set of related projects is a very useful feature indeed, if you work on multiple projects. Or even just if you want to quickly switch between the project you are working on and a sand box environment where you can try new things out.
So I decided to search online for documentation related to this feature, to avoid repeating what others have already written. And I found this gem: How to use Project Groups in NetBeans. If you are not familiar with the concept or practical application of a project group, do read that blog post.
The interesting bit that I would like to add to that, is that there is a New and Noteworthy feature in NetBeans 7.1 related to this: command line options for opening or closing project groups.
Opening the project group called “Test” when IDE starts:
netbeans --open-group Test
Closing the group that was open when the IDE was last used, if any:
netbeans --close-group
These command line parameters would be quite useful when demonstrating multiple things with the IDE during training. You could set up a project group for each demonstration, and create a shortcut that includes the relevant parameters to open it up.
The big advantage of having the command line options, however, is being able to get to work on large project groups much faster in some cases. Read the RFE on Bugzilla for more details.
|
As we constantly improve the java.net infrastructure you might experience some downtime on Wed, Feb 1, 2012 @ 6-8pm PT. Hopefully, this one should only really be a short one. |
|
|
With this new "Glassfish – Vertical clustering with multiple domains" blog by Alexandru, there seems to be no shortage of GlassFish configuration posts. Surely, that must say something about the popularity of GlassFish for highly-available apps. |
|
While it uses mod_jk like most others, this one is multi-domain, uses JMS topics and spends some time looking at different JVM settings and their impact on response time and GC activity.
|
The Java EE 7 expert group has been defining transactional interceptors and there are a few issues it came across for which your developer feedback would be useful. |
|
Bill Shannon has described the issues of :
• how to handle exceptions that are thrown out of a
transactional method and
• how the new JTA transactional interceptor should interact with EJBs.
... and offers possible solutions.
If you care about these, please take a little bit of time to read through the above descriptions before you provide feedback. The best place for feedback would be the mailing list (subscription required first) but we'll also consider comments posted to this entry.
You probably followed my posts about testing more complex scenarios with embedded GlassFish (Part I / Part II). Next on my list of things to do was to get this setup working with latest WebLogic 12c.
Getting Started
James Sugrue
My name is Sam Sepassi. I work as Java developer and have been programming for several years in Tehran, Iran. I love to learn and work with new technologies. My interests are enterprise systems, agent-based systems, distributed computing, SOA/module based programming approaches, and artificial intelligence.
Let's drop by BTI Systems, with a development team split between Belfast and Ottawa, with a NetBeans Platform application that’s about two years old now. The application is a GUI front end for BTI's proNX Server Manager product, which is part of the proNX Management Suite. It provides a modular and scalable management solution for BTI networks and integrates seamlessly into any operating environment, providing maximum flexibility and ease-of-use.
Below is a screenshot which shows a small network of BTI equipment under management. You can see the discovered devices, how they are grouped, alarms, and in the center an Ethernet Service. All of this is data mined from the hardware over SNMP by the server component of the product. The client then displays the network, and draws the topology of the services without the user needing to layout the elements manually. The Ethernet Service in this screenshot is having some performance metrics being gathered on it, as you can see in the bottom right.
Quite a range of NetBeans Platform features are used here, including the visual library to draw optical and ethernet services, and all the core libraries to show an up to date network state and allow management functions to be performed against discovered equipment.
Apache TomEE is an opensource, Java EE 6 WebProfile certified, easy to install Java EE 6 server.
The test:
|
DaliCore is a new project announced by Johan Vos on java.net to offer users and social networks on top of Java EE. It is the open-sourcing of LodgON's technology developed for the past few years and used in a number of social websites. |
|
You can think of this as twitter, Facebook, or social network-enabling your applications using Content, User, Group, and Authorization APIs. DaliCore is a logical extension to the the Java Enterprise specification (specifically to Java EE 6).
As with any Java.net project, you can start playing with the source code, engage on mailing lists, file bugs, but also get further details in this short presentation.
Good luck to Johan and team on this project!
Project News
PHP 5.4 Support in NetBeans IDE
PHP 5.4 support is coming in the next NetBeans release. Try out
editor features such as Array Dereferencing in daily builds of the
NetBeans IDE.
CakePHP 1.3 introduced a new way to use helpers. This was added to prevent confusion between helper variables and local variables added to the view file. You can access helper methods in a view by using $this->Helper->method(). This way make a problem if you want to use auto-complete for helpers introduced in a previous article
With a small trick you can make netbeans supports this method auto-complete. To do this add a file in your project folder, or preferable to be in CakePHP core folder, with a name dummy_view.php for example. Now add the following code to this file.
<?php
class DummyView extends View {
/**
* @var HtmlHelper
*/
public $Html;
/**
* @var JsHelper
*/
public $Js;
/**
* @var AjaxHelper
*/
public $Ajax;
/**
* @var JavascriptHelper
*/
public $Javascript;
/**
* @var FormHelper
*/
public $Form;
/**
* @var SessionHelper
*/
public $Session;
/**
* @var TextHelper
*/
public $Text;
/**
* @var PaginationHelper
*/
public $Paginator;
/**
* @var RssHelper
*/
public $Rss;
/**
* @var XmlHelper
*/
public $Xml;
/**
* @var CacheHelper
*/
public $Cache;
/**
* @var TimeHelper
*/
public $Time;
}
Now put the following line of code in end of your view file:
<?php /* @var $this DummyView */ ?>
Now you'll see that netbeans displays auto-complete for those helper methods and view methods too like $this->element() for example.
The idea here is simple we tell netbeans that there is a new class that extends View class. Then when in view file we tell netbeans to consider that $this has the type DummyView. CakePHP run the code in view files inside render() method in View class so $this is really an instance of View class. Now as netbeans knows the type of $this variable and knows the types of its variables, which are CakePHP helpers, it shows their autocomplete options.
Finally, you should be aware of the following:
DummyView class using the same method as core helpers.I know this has been late but it is still useful
<p>Hi all, today we would like to inform all the <a href="http://www.doctrine-project.org/" target="_blank" title="Doctrine2 PHP framework">Doctrine2 PHP ORM framework</a> users that their favorite framework is now supported in NetBeans.</p> <p>First, as always, be sure that NetBeans knows about your Doctrine2 installation:</p> <p><img src="http://blogs.oracle.com/netbeansphp/resource/article_images/doctrine2-01.png" alt="Docrtine2 IDE Options" /><br /></p> <p>If you have installed Doctrine2 via PEAR, the Doctrine2 script will be detected automatically.</p> <p>Next, you need to tell NetBeans that your existing PHP project uses Doctrine2 - open Project Properties dialog and enable its support.</p> <p> <img src="http://blogs.oracle.com/netbeansphp/resource/article_images/doctrine2-02.png" alt="Enable support for Docrine2" /></p> <p>Now, you will be able to run Doctrine2 commands right from the IDE. Please notice that the project now has a Doctrine2 badge icon.</p> <p><img src="http://blogs.oracle.com/netbeansphp/resource/article_images/doctrine2-03.png" alt="Run Doctrine2 Command" /> </p> <p>All the possible Doctrine2 commands will appear.</p> <p><img src="http://blogs.oracle.com/netbeansphp/resource/article_images/doctrine2-04.png" alt="Doctrine2 Commands" /> </p> <p>They can be run the same way as for the other supported frameworks. It means also that the output of the invoked command will be available in the Output window.<br /></p> <p>That's all for today, as always, please test it and report all the issues or enhancements you find in <a style="font-weight: normal; text-decoration: underline;" href="http://netbeans.org/community/issues.html" target="_blank" title="NetBeans BugZilla">NetBeans BugZilla</a> (component <i>php</i>, subcomponent <i>Doctrine</i>).</p> <p><br /></p>
Here's a completely new set of options in NetBeans IDE 7.1 for javadoc comments:
Wrapping the javadoc comments to justify them with the right editor margin is now also possible, so this very popular issue is now fixed:
http://netbeans.org/bugzilla/show_bug.cgi?id=11553
The entire tab that you see above is new in 7.1. This new feature is also mentioned in the New & Noteworthy for NetBeans IDE 7.1.
|
JSF 2.2 (JSR 344) is yet another specification that's being worked on as part of the Java EE 7 effort and Arjan over at jdevelopment.nl has a detailed status covering everything new in this version of the spec. |
|
Part of the features discussed in this blog post are a new queue control for AJAX requests, tighter CDI integration, some Java API additions as well as life-cycle events improvements.
It's great to see community members help spread the word on the progress made and as Ed Burns, the JSF spec lead, says - "(this is) a true testament to the value of transparency."
NBPortable makes NetBeans IDE 7.1 usable from a USB stick. It uses technology provided by PortableApps.com.
It supports Java SE development.Required JDK is not included. Please install a JDK locally on each machine or provide a JDK in the folder PortableApps/NetBeansPortable/App/jdk. JavaFX development requires JavaFX SDK/Runtime on your host machine.
The exception:
SEVERE: The RuntimeException could not be mapped to a response, re-throwing to the HTTP container
java.lang.IllegalArgumentException: object is not an instance of declaring class
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at com.sun.jersey.spi.container.JavaMethodInvokerFactory$1.invoke(JavaMethodInvokerFactory.java:60)
at com.sun.jersey.server.impl.model.method.dispatch.AbstractResourceMethodDispatchProvider$TypeOutInvoker._dispatch(AbstractResourceMethodDispatchProvider.java:185)
at com.sun.jersey.server.impl.model.method.dispatch.ResourceJavaMethodDispatcher.dispatch(ResourceJavaMethodDispatcher.java:75)
at com.sun.jersey.server.impl.uri.rules.HttpMethodRule.accept(HttpMethodRule.java:288)
at com.sun.jersey.server.impl.uri.rules.ResourceClassRule.accept(ResourceClassRule.java:108)
[…]
import javax.ejb.*;
@Path("RESTafari)
@Singleton
public class RESTEndpoint implements SomeLocalInterface{}
import javax.ejb.*;
@LocalBean
@Path("RESTafari)
@Singleton
public class RESTEndpoint implements SomeLocalInterface{}
I saw the great article by Toni Epple and got really interested in the Downloadable NetBeans Platform for ANT builds feature. I already wondered what the platform.download task was since NetCat 7.1. So I had some questions: How will this work with custom platforms? For example my project works with the NB platform and some additional projects?
A short note that a new build, and first full release, of Praxis LIVE is now available for download from http://code.google.com/p/praxis/
This is a slightly late post as I was concentrating on getting it finished and uploaded prior to flying to Toronto on Wednesday. There’s a wide range of new features, including a live GUI editor, a MIDI control editor, and component editors. The project system, save support and hub management have been revisited to make them much more robust. Many components have been refactored to ensure a more consistent naming and ordering of controls and ports. And the UI has had a bit of spit and polish, with a consistent icon style and colour scheme throughout – it’s looking sexy now!
Read the full release notes.
The image above shows one of the major additions to this release, the GUI editor. Praxis uses MigLayout and the edit overlay allows you to drag components from the palette into a running control panel, and move them around using the arrow keys. Component properties are accessible by double-clicking to open the component editor dialogs (or in the properties window). Drag and drop of existing components, and a UI for other layout features is coming soon. And I’ll blog a bit more about the implementation as it develops.
NB. Some of the architectural changes mean that projects from EA builds may not be fully compatible. The examples have all been updated. It is intended to keep backwards compatibility from this release onwards.
No, though it’s better!
Simply put, a couple of blog posts I’ve read over the last month or so have convinced me that the whole alpha, beta, whatever cycle is just not right for a project like Praxis / Praxis LIVE that is continually evolving. Different features are at a different stage of evolution – some are what I’d consider release quality, some are beta, and some are quite definitely temperamental, anti-social, and marked as such! The important thing is that it’s usable, the basic architecture is complete, and the framework (Praxis) and visual editor (Praxis LIVE) are now in sync and developing concurrently. So, from now on there will be frequent incremental releases on a 4-6 week timetable.
Lot’s more components (some of which are already in testing), improved OpenGL support (which didn’t make this release, sorry), and much better documentation (I have a project where I have to teach 2 people to use Praxis LIVE this next month, so that will help!).
And some blogging about the details; the fun (and occasional hair pulling) of Java audio / video; and the joys of hacking on top of the NetBeans platform, without which none of this would have been possible.
Note: if you're reading this using a feedreader, please make sure you've updated to the updated TheAquarium feed.
Recent Tips and News on Java, Java EE 6, GlassFish & more :
|
• GlassFish Enterprise Server v2.1.1 Patch 15 (GlassFish for Business)
|