Friday, March 25, 2005

Storing Request-specific Data Without Using ServletRequest

Storing Request-specific Data Without Using ServletRequest: "Expertise: Advanced
Language: Java
March 22, 2005
Storing Request-specific Data Without Using ServletRequest
There are times when you need to store request-specific attributes (pieces of data that must be available to one specific http-request during the lifetime of that http-request) in order to retrieve them later.

This is easy—if you have access to the ServletRequest instance. You simply use its methods, getAttribute() and setAttribute(), for attribute storage.

But sometimes your code does not provide access to the current request's ServletRequest instance. One way around this is to modify the parameter-list of methods to pass the ServletRequest instance all the way down to the method that needs the request-specific attributes. This would use the ServletRequest's getAttribute() method. However, this refactoring is not always possible.

Another solution is to use the thread's local memory, because each ServletRequest is executed in one thread only (it does not switch threads)."

Saturday, March 19, 2005

Feedback on "Ten Things a Java Programmer Should Know About Ruby"

Feedback on "Ten Things a Java Programmer Should Know About Ruby": "Feedback on 'Ten Things a Java Programmer Should Know About Ruby'

This is a compilation of feedback I received for a list of things Java programmers should be aware of when looking at Ruby. This list is not the final version, nor are all (most) of the ideas in this list mine. This is merely a temporarty holding spot for these ideas while I assemble a talk/article/presentation on the topic."

Ruby on Rails

Ruby on Rails: "Rails is a full-stack, open-source web framework in Ruby for writing real-world applications with joy and less code than most frameworks spend doing XML sit-ups"

Ideo Logiciels - Support - Notes de mises à jour - NitroX

Ideo Logiciels - Support - Notes de mises à jour - NitroX: "Build 371 (3/2/05) - Final Release This is the NitroX 2.0 final release. We enjoyed the ride, we hope that you enjoyed it too ! Here are some of the final changes :"

More on NitroX

Sunday, March 13, 2005

Overview of static analysis in IBM Rational Application Developer 6.0

Overview of static analysis in IBM Rational Application Developer 6.0: "
Overview of static analysis in IBM Rational Application Developer 6.0

Code Review

Level: Intermediate

Bill Higgins (bhiggins@us.ibm.com), Architect, Systems Engineering and Architecture, IBM Global Services
Goran Begic (gbegic@us.ibm.com), Product Manager, ASQ, IBM Software Group

01 Mar 2005

This article will give you an overview of a new Code Review feature of IBM® Rational® Application Developer and IBM® Rational® Software Architect."

ONLamp.com: Subversion UI Shootout

ONLamp.com: Subversion UI Shootout: "Subversion UI Shootout
by Jeremy Jones
03/10/2005

Subversion is a revision control system intended to be a better CVS. The three 'featured projects' on the Tigris page under the SCM category are Subversion, TortoiseSVN, and RapidSVN. This article compares some of the major features of Subversion among the three featured clients (the CLI, RapidSVN, and TortoiseSVN) and some principles around the usability of tools that have both CLI and GUI incarnations."

Saturday, March 12, 2005

Javalobby - Java J2EE Programming Forums - Series: Java Game Development

Javalobby - Java J2EE Programming Forums - Series: Java Game Development: "Series: Java Game Development
At 9:44 AM on Feb 22, 2005, Matthew Schmidt wrote:
The Java Game Development series is a new series designed by Gregory Pierce, longtime Javalobby member and game developer, to help increase awareness in using the Java platform for writing high quality and performant video games. This series consists of four separate articles that will guide you all the way from downloading the gaming library to installing it in your IDE and writing your first simple game, to developing fancy 3D enviroments with Java. Start using Java for something cool! "

lwjgl.org - Home of the Lightweight Java Game Library

lwjgl.org - Home of the Lightweight Java Game Library: "The Lightweight Java Game Library (LWJGL) is a solution aimed directly at professional and amateur Java programmers alike to enable commercial quality games to be written in Java. LWJGL provides developers access to high performance crossplatform libraries such as OpenGL (Open Graphics Library) and OpenAL (Open Audio Library) allowing for state of the art 3D games and 3D sound. Additionally LWJGL provides access to controllers such as Gamepads, Steering wheel and Joysticks. All in a simple and straight forward API."

Javalobby - Java J2EE Programming Forums - Oracle JDeveloper will not be based on Eclipse

Javalobby - Java J2EE Programming Forums - Oracle JDeveloper will not be based on Eclipse: "Oracle JDeveloper will not be based on Eclipse
URL: IT Writing: Ted Farrell Interview
At 12:16 PM on Mar 8, 2005, Cesidio Di Landa wrote:
Wouldn't it be nice if all of the next generation tools will be based on the Eclipse Project? BEA, IBM, Borland, JBoss, CA etc. agree on this decision. It could reduce the budget to ship their next IDEs. And provide the Java community of one great alternative to M$ Visual Studio, perhaps the strongest part of the .NET platform. Oracle is the only big company to not take part of it. They say that JDeveloper is an integrated tool and that they don't need third's party Eclipse plugins.

I think that an IBM-Oracle-BEA-Borland-etc collaboration to make a good IDE platform based on Eclipse could be a great challenge. And the only ones who can benefit of it are us, poor java developers facing with .NET productive tools. I am not taking in consideration Sun because they want to stick with the NetBeans project. Poor them! They invested so much money for such a sterile tool."

Javalobby - Java J2EE Programming Forums - Summary of the Java IDE market

Javalobby - Java J2EE Programming Forums - Summary of the Java IDE market: "Summary of the Java IDE market
At 4:08 AM on Mar 10, 2005, Cesidio Di Landa wrote:
It seems like the Java IDE market is segmented this way:

1) IntelliJ IDEA

2) NetBeans (with on top of it Sun Java Studio Creator)

3) Eclipse (with on top of it Borland JBuilder, IBM WSAD, BEA WorkShop, JBossIDE)

4) Oracle JDeveloper.

Of course I am not talking about the present but of the near future. Do I miss something?"

KeepResident Eclipse plugin for Windows - KeepResident Eclipse plugin

KeepResident Eclipse plugin for Windows - KeepResident Eclipse plugin: "The performance of Eclipse (and other large Java applications) has long suffered due to the Windows virtual memory manager. Windows has a tendency to preemptively swap Java processes out of physical memory, even when there is still plenty of physical memory available. This interacts very poorly with Java processes, which do not have good locality and touch a lot of memory. The problem is exacerbated when Java performs garbage collection, which causes the Java process to touch lots of memory that has been paged out to disk. Ever had Eclipse randomly hang for 15-20 seconds? This is most likely the culprit.

I wrote a simple plugin for Eclipse that uses two functions in the Windows API - SetProcessWorkingSetSize() and VirtualLock() - to encourage Windows to keep more of the Eclipse Java process in physical RAM. This plugin adds a preference page where you can adjust the minimum and maximum working set size (i.e. the amount of memory Windows is supposed to keep in physical memory when the process is in use). However, Windows will happily begin swapping out Eclipse below the working set size if the Eclipse window is minimized. By enabling the VirtualLock checkbox, the plugin will force Windows to allocate physical memory, so even when Eclipse is minimized it won't be swapped out. This is very effective in eliminating that sluggishness in Eclipse after not using it for a while."

The AspectJTM 5 Development Kit Developer's Notebook

The AspectJTM 5 Development Kit Developer's Notebook: "The AspectJTM 5 Development Kit Developer's Notebook
the AspectJ Team

Copyright (c) 2004 Contributors, All rights reserved.

Abstract

This guide describes the changes to the AspectJ language and tools in AspectJ 5. These include support for Java 5 (Tiger) features, enhancements to load-time weaving, an support for an annotation-based development style for aspects. If you are new to AspectJ, we recommend you start by reading the programming guide.

This is a draft document and is subject to change before the design and implementation is complete. There is also no guarantee that all of the features in this document will be implemented in a 1.5.0 release - some may be deferred until 1.5.1 or even later. In general, features in which we have more confidence in the design will be implemented earlier, providing a framework for user feedback and direction setting on features for which the use cases are less obvious at time of writing."

aspectprogrammer.org - Articles & Resources

aspectprogrammer.org - Articles & Resources: "After the AOP panel at the TSS Java Symposium had finished, Ted Neward threw out a challenge to some of the participants to come up with 'an explanation of AOP without resorting to buzzwords.' I've been mulling that around in my head for a few days now... What follows should be considered an early version of an attempt to explain what's at the heart of AOP (from my perspective), without resorting to any buzzwords. Following the conclusion of this paragraph, the following words and phrases are hereby banned for the rest of this article: scattering, tangling, crosscutting, modularity, encapsulation, abstraction, dominant decomposition, concern."

java.net: JBoss At Work, Part 1: Installing and Configuring JBoss

java.net: JBoss At Work, Part 1: Installing and Configuring JBoss: "JBoss At Work, Part 1: Installing and Configuring JBoss
by Tom Marrs and Scott Davis
03/01/2005"

java.blogs - Welcome to the java.blogs community!

java.blogs - Welcome to the java.blogs community!

Plus other sites:

http://www.javarss.com/
http://javacrawl.com/

JMeter - User's Manual: Building a Database Test Plan

JMeter - User's Manual: Building a Database Test Plan: "Building a Database Test Plan for JMeter

In this section, you will learn how to create a basic Test Plan to test a database server. You will create ten users that send five SQL requests to the database server. Also, you will tell the users to run their tests three times. So, the total number of requests is (10 users) x (2 requests) x (repeat 3 times) = 60 JDBC requests. To construct the Test Plan, you will use the following elements: Thread Group , JDBC Request , Graph Results ."

Speed Boost: Simplified Flash Remoting Code

Speed Boost: Simplified Flash Remoting Code: "Speed Boost: Simplified Flash Remoting Code

Posted by Jed Wood, at 11/16/2004 - 6 comments "

Towards Open Source Flash Development

Towards Open Source Flash Development: "Towards Open Source Flash Development

Posted by Carlos Rovira, at 03/06/2005



If you love Flash Technology and Open Source development, you're lucky because some folks in the Flash community are developing really good tools, which integrate with other existing Open software. The result: A dream environment for Flash SWF creation. From now on you don't have to pay any kind of license and you are able to modify the source code of any tool."

Engadget - www.engadget.com

Engadget - www.engadget.com

Useful tech news site.

M7 NitroX J2EE IDE: Eclipse Plugin for JSP, Struts and JSF

M7 NitroX J2EE IDE: Eclipse Plugin for JSP, Struts and JSF: "
NitroX - Available as an Eclipse plugin - for JSP development - Including debugging JSP's.

It's all about keeping pace with application development needs. Introducing NitroX from M7 – the latest efficiency and productivity tool for Java developers who work on JSP or Struts-based applications. It's the only Eclipse-based development and debugging environment that understands the relationships among web application layers and unlike any other solution, NitroX provides simultaneous two-way visual and source editing. It also powers your project with automatic consistency and validity checking of your application – whether existing or new."