|
|
|
|
|
The Divas had a tip for a video of Tor showcasing Java and Ruby Development. It is very nice, based on the demo at the JavaOne keynote. You can watch it, check the Script, or look at several other resources. But.. |
... I had not realized the NetBeans folks had done so much work at the NetBeans.tv site! The theme for the site is visual - videos and pictures. They have several sections emphasizing different areas: Members of the Community, Interviews with key Developers, Technology and Screencasts, Extending NB and Using the Platform and Trip Reports. Pretty nice!
|
TransNexus makes software for VoIP operations and billing. Recently, they teamed up with Sun to improve the scalability of their NexSRS VoIP Peering Server. A joint engineering team determined that the use of a single-threaded web server was the primary scalability issue for NexSRS. To address this, they decided to migrate their front-end to GlassFish (and make use of its high-performance Grizzly HTTP Connector). |
The results were even better than expected. Not only was scalability improved (76% faster on a four-core system), even single-core performance benefitted (with a 23% improvement). Full details are available in the team's SDN Article: Making Java Technology Faster Than C with LRWP.
Correction: the original web server (Xitami) is not single-threaded, as suggested above. The team did, however, find that it in certain cases it exhibited scalability issues similar to a single-threaded process.
Added: Also see the longer Article at SDN.
|
Java FX is making good progress and there is now an Open Source Compiler Project that complements the earlier OpenJFX project. A compiler (into JVM bytecodes) is critical for performance and the project has been mentioned by several people including Josh, Bob, Tom, and Chris. Other recent positive reviews include those by OnJava and Dr. Dobb, and the Reference Manual and the Getting Started documents have also been translated to chinese ([1] and [2]). Perhaps it is time to start considering how GlassFish should support Java FX. |
BTW, I thought that the dictum "It's easier to ask forgiveness than it is to get permission" was a Sun colloquialism, but the Wikipedia attributes it to Grace Hopper.
|
There are lots of options for tracing web applications. But suppose you need a holistic view, such as a combined trace of the server-side Java and client-side JavaScript in an Ajax app. You might expect your options to drop to zero. Well, they don't. DTrace can handle it. The Mozilla DTrace Project provides DTrace probes for Firefox's JavaScript engine, and recent versions of the JVM have built-in probes. Amit's latest article shows how to put these together to trace an Ajax application. It produces a true end-to-end picture, with traces flowing across the client/server boundary. |
|
|
Dick Davis (Rasputkin) is the author of Number 9 where he covers a number of topics, including hardware, Solaris and System Administration. |
Dick had some reservations about J2EE but RoR on GF and the GF v2 beta contest encouraged him to give GlassFish a try and he seems to like it so far. Dick's first GF-related blog explains in detail how to start GlassFish on a Zone. Since then he wrote another good one, explaining how to Use DTrace on JVMs and applying this to GlassFish.
Solaris Zones and GlassFish mix well together. For example, the GlassFish Wiki just moved to its new location, a GlassFish instance on a Solaris Zone, and John has written quite a bit about GlassFish and Zones.
|
Sun Tech Tips are fairly short but effective articles focused on specific parts of an API. Specifically, Enterprise Java Technologies Tech Tips focus mainly on Java EE 5 and GlassFish features with code snippets for all of them. Java EE 5 Tech Tips are often written by the GlassFish developers themselves. The latest March issue covers Securing WebServices using WSIT and EJB Security Annotations. |
Other recent tips covers EJB 3.0 Compatibility and Migration, Introduction to jMaki, Configuring JAX-WS Handlers on the Client, EJB 3.0 Interceptors, Document Handling Using JAX-WS Dispatch and Provider APIs, and more.
You'll find the entire list of Enterprise Tech Tips here.
|
JSR 311, the Java (TM) API for RESTful Web Services, has been submitted for a Review Ballot. Quoting from the submission: This JSR will develop an API for providing support for RESTful (Representational State Transfer) Web Services in the Java Platform. |
The Specification leads will be Marc Hadley (WADL, JAX-WS 2.0, W3C, ...) and Paul Sandoz (Fast Infoset, Fast WebServices, ...). Initial membership in the Expert Group is Apache, BEA, Google, JBoss, Jerome Louvel, Sun Microsystems, Inc and TmaxSoft, but others have already shown interest.
The RI for this specification will be done as part of the GlassFish community and will be available under Open Source license. We will make implementations and drafts available in a regular basis to encourage as much feedback as possible and thus ensure an API that is as useful as possible. For more details, check the JSR Submission.
|
Rahul has an interesting series of detailed blogs that show how to use different JVM-based scripting languages to write Servlets on Sun's WebServer 7.0 (download) even when using plain J2SE 5 (this is easier in Java SE 6 through JSR 223). The series includes a prologue providing some common code for all the languages and then specific and very detailed entries for jRuby, jScheme, Rhyno and Sleep. And, Now For Something Completely Different... All these use the in-memory JVM from the WebServer, but... Rahul also shows how to use FastCGI to call native Ruby directly. |
|
The JAXB 2.1 release is now final (Spec, Download). This is a relatively small maintenance release (see features) but it includes some specially useful one, like separate compilation. Since JAXB 2.0 is included in Java SE 6, you will need to use the endorsed standards mechanism to use JAXB 2.1with that version of Java SE. Check Kohsuke's blog for more details. |
|
Charles reports on the recent progress on Packaging and Deployment Options for (j)Ruby. Charles now has an all-in-one JAR that can then be run on the client and on the server side. On his part, TAKAI has been working on replacing the WEBbrick and has succeeded in using AsyncWeb with very substantial performance improvements, and then also on deploying directly on GlassFish. All this looks very promising and I think will open many doors for Ruby in the enterprise - even this very early work is already mentioned in more mainstream blogs. Thanks to JeanFrancois for pointing to Grizzly's Role. |
|
|
One of the benefits of using an OpenSource license is to simplify adoption by other F/OSS groups, and, slowly we are getting more customers. |
In the case of Geronimo their Report Card shows a plan to use JAXB 2.0 (or 2.1?). Other modules are listed as multiple options, including JSF 1.2, TopLink Essentials, and JSP 2.1 (used by Jetty). The table is probably not up-to-date; for example, check this Thread on JSTL 1.2.
|
The internet is abuzz with speculation on when Sun will start Open Sourcing Java. Jonathan has indicated that it will be Very Soon, but, exactly when? You should know the answer... a year ago, at JavaOne '05! 16 months ago we announced the plan to Open Source the Java EE RI in the GlassFish Community, under an OSI-approved license, the MPL-based CDDL license. Then, this May, we Released Java EE 5 with ever increasing Contributions from the Community. But what people want to know is when Sun will open source Java SE and Java ME. There, I can't help you; you will have to stay tuned. I'm sure you won't be able to miss the event :-) TheAquarium will certainly report it and we will provide context for our audience. |
|
Annotations are a first-class language feature in Java (tutorial, jsr-175). A standard specification like JAX-WS introduces standard annotations but custom annotations can be equally useful. Kohsuke uses a custom annotation to take advantage of a SPI (InstanceResolver) in the JAX-WS RI in GlassFish. The result is that adding a simple annotation (@HttpSessionScope, in the com.sun.xml.ws.developer.servlet package) on a class tells the JAX-WS RI to create one instance of the class per each HTTP session. |
Like any other non-standard mechanism, adding the annotation creates a dependency on a specific platform, but the dependency is explicitly declared (usually via an import statement), and the result is really clean an compact. Check Kohsuke's blog for details.
|
One more positive data point on the Vista and Java threads (Charles, Chet, Alexis), but, this time, on the server side: Dinesh reports success in running GlassFish on Vista following the QuickStart Instructions. Check the details at Dinesh's Blog. Yet another positive thread is the whole set of Web Services Interoperability PlugFests between Windows Communication Framework and GlassFish (courtesy of ProjectTango/WSIT). The latest report is here. |
|
"Which is the better language?..." Wrong Question!. One cannot compare languages as diverse as AWK, APL, Snobol, Prolog, Fortran, Lisp, Python, Java, PHP, and Many Others. More appropriate questions are "Which language I like best?", or, even better, "Which is the best language for my team to accomplish this tast within these constraints?". And, with that introduction... Nuxeo is an Open Source company that has a popular Enterprise Content Management. This product was initially developed in Python but they just Annouced a Switch to Java EE. It is not that they do no longer like Python; just that Java EE made more sense for them in their context. |
If you are interested in programming languages there are a number of fun links out in the web including the Online History of Programming Languages, a nice Graphical Timeline, several articles in Wikipedia, including a List of Programming Languages, and this fun presentation by Dick Gabriel and Guy Steele on the Lisp Family. And don't tell me I missed your favorite language; that is the whole point of this blog! :-)