Eclipse breakpoints hidden by gutter clutter: a workaround

In Eclipse, breakpoint icons tend to get obscured by other notification icons, like override or quick-fix notifications.

The workaround, as described in this bug comment, is to configure the breakpoint annotation type with additional display properties.

To do so, open General > Editors > Text Editors > Annotations and configure your breakpoint annotations as you see fit:

If you select “Text as: Dashed Box”, you can get something like this (note the dashed box around the method name, indicating a method entry breakpoint):

Not the prettiest solution, but at least that’s one less mild annoyance to deal with.

Preserving File Permissions with Ant Tasks

I confess I rant about Ant a fair bit, but in truth Ant tasks provide a lot of useful functionality. Even if you don’t use Ant directly, you can still take advantage of the tasks by using, say, Groovy’s AntBuilder.

Ant and File Permissions

Ant’s file system tasks, however, have one big disadvantage: they tend to lose or ignore Unix file permissions. This well-documented limitation Continue reading “Preserving File Permissions with Ant Tasks”

If you � Unicode, you’ll ����� EBCDIC

One of the projects I’ve been working on over the past few months is the Dynamic Scripting feature pack for CICS. It runs on z/OS, which is an interesting environment for a few reasons – not least because it’s an EBCDIC platform.

Know your charset

A character set defines which byte value is used to represent a given character. So the choice of character set is a concern that should crop up whenever raw bytes are interpreted as character sequences, or character sequences are converted to raw bytes. For example, care should be taken to use the correct character set when writing text to a file, or reading character data from the body of an HTTP response.

Often, it’s tempting to ignore the concern. The vast majority of Continue reading “If you � Unicode, you’ll ����� EBCDIC”

Java Classpath Length

Really long classpa…!

The maximum classpath length that Java can handle depends on many factors, including platform and JDK implementation. As far as I can tell, the limit is usually undocumented, but can be as low as a few thousand characters. Additionally, elements beyond Java’s control, such as the shell, can also affect how many characters can safely be used in a classpath.

In practice, this means that the classpath you request can be truncated before the JRE processes it… and you might not find out until you get a very confusing ClassNotFoundException.

Java wont always respect huge classpaths

Launching with a ludicrously long classpath? Java might miss some of it!

If circumstances dictate an uncomfortably long classpath at launch time, there are a few ways to condense it without resorting to single-character symbolic links.
Continue reading “Java Classpath Length”

WebSphere sMash @ Dutch PHP Conference on 12th June 2009

Jonathan Lawrence and I will be presenting an introduction to WebSphere sMash at the Dutch PHP Conference on Friday. Here’s a quick overview of what we’ll be talking about:

Don’t hesitate to come chat with us between the talks, particularly if you’re curious about running PHP on the Java Virtual Machine or integrating PHP and Java code.

If you like the sound of this, read more about PHP on Java with WebSphere sMash or check out some WebSphere sMash demos on YouTube.