Fixing Derby connections on OS X without using

To get Derby connections to work on OS X from within your Java code, you need to use the following piece of code:

	Properties p = System.getProperties();
	p.put("", "true");

Do this right before you load your Derby driver:

	try {

Within the Web Tools tutorial, this is done in the init() of the ScheduleServlet.

Creating/Modifying Derby databases on OS X

If you’re trying to create or modify a Derby database on OS X and you get the error message:

ERROR XSTB2: Cannot log transaction changes, maybe trying to write to a read only database.

Then check out the Derby FAQ 2.1: “Why can’t I create a new database or modify an existing database on Mac OS X?”

This appears to be a JVM issue with Derby on Mac OS X and it has been logged as DERBY-1. Until the Derby team resolves it, the recommended workaround is to set in the files to use file sync instead of write sync for log writes.

Note that when this happens, you have to restart Eclipse to get any more Derby connections to work, since right above that error, you can see another error message:

Shutting down due to severe error.

I got this error while going through the Data Tools part of the Web Tools tutorial.

Just got to EclipseCon 2005

Just got to the Hyatt Regency, site of EclipseCon 2005. It was a pretty decent flight, although there were at least two folks who got really air sick due to some turbulence. I enjoyed the usual DirectTV fare on JetBlue until breaking out the 17″ PowerBook and popping in Titan A.E. It was one of those movies that I missed, but I’m glad I finally saw it.

Getting to the hotel from Oakland Airport was more difficult than I imagined. The hotel has a free shuttle from San Francisco Airport, but none from Oakland. I was thinking about taking the BART from Oakland to SFO and getting the shuttle from there, but since I landed right around midnight, there wasn’t enough time to get to SFO before the BART closed. So I had to call around to three different shuttle companies until I found one that was reasonably priced. Apparently Burlingame is a little too far for most of them.

EclipseCon is giving out free wireless access via a T-Mobile HotSpot to attendees. All tech conferences should have free wireless.

Gotta get some sleep so I’m ready for the tutorials tomorrow. Last year I went to the SWT tutorial and tomorrow I’m going to the Web Tools and GEF tutorials. I wish I could go to more.

EclipseCon 2004 notes

Just some notes from EclipseCon 2004, to get my head cleared for EclipseCon 2005:

The keynote by Erich Gamma and John Weigand seemed to hit all the big themes of the conference. The only exception was EMF and GEF, which I personally found to be quite interesting. Here were their big themes:

1. Concrete -> Abstract (Innovations in the JDT donated back to the base Eclipse platform.) This was great because it makes those innovations more widely usable.

2. Swing/SWT live in harmony at least on Windows and Linux. In retrospect, I don’t know how big of an impact this really was, but psychologically it was big.

3. RCP. I think this was underestimated by the Eclipse Team. There was a huge demand at the conference for RCP information. The RCP BOF was packed and I had to write my name sideways to fit it on the signup sheet. I expect this to continue to be a big topic in EclipseCon 2005. It has definitely become a focal point in Eclipse 3.1. Thanks again to Ed Burnette for championing this.

4. OSGi. This was nice in that it used another open source project as the plug-in loading mechanism. It was a little strange at first, since during the demo, they showed a command line prompt of OSGi. In practice, it doesn’t seem to have made that much effect yet, but the transition seems to have been seamless. Note that most Eclipse projects still use a plugin.xml only.

5. JDT was made more open. This probably has helped more plug-ins become more available that build on top of the JDT.

6. UI/Platform Improvements: Jobs, Activities, NewLook. NewLook was probably the most controversial, but most folks seem to like it now. Jobs was good for improving the perceived performance of Eclipse, as well as helping out everyone who builds on it. There were other improvements of course.

Most of the really good stuff is in the EclipseCon 2004 archives.

One thing that isn’t there that I really thought was useful was a Guidelines and Best Practices BOF by members of the Eclipse Jumpstart Team, the same team that wrote The Java Developer’s Guide to Eclipse. I’ll have to get in touch with one of them to see if they still have those slides.

Another good presentation that isn’t posted is “Inside SWT” by Steve Northover, who I think is an entertaining presenter. He outlined the history of SWT, going all the way back to the Smalltalk widget wars, where ParcPlace (now Cincom) VisualWorks with its emulated widgets battled Digitalk Smalltalk/V with its native widgets. Also in this mix was IBM Smalltalk with its Common Widgets (which were native.) This is analogous to Sun with emulated Swing and Eclipse with native JFace/SWT today.

It was also interesting to hear the philosophy behind SWT. Some of it includes: “Embrace the OS”, “Less is more”, “Everything means something – no such thing as harmless code”. It was funny to hear “API is forever, @deprecated is a lie”, since there are so many things in Java that have been deprecated for a long time.

On a personal note, I rather liked being at Disneyland. My family went with me and they really enjoyed themselves at Disneyland, California Adventure, and the Disneyland downtown while I was at the conference. It was a far cry from the last conference I attended before this one, which was XP/Agile Universe 2003 at New Orleans. Aside from the beignets, I’d take Disneyland again over New Orleans.

A brief history of EclipseCon

Here’s a brief history of EclipseCon, with unofficial titles (that I came up with) along the official title.

EclipseCon 1 – Eclipse User’s Group Meeting at JavaOne 2002

Location: Thirsty Bear Brewing Company across the street of the Moscone Center, San Francisco, CA

Thanks to Chris Laffra, co-author of the helpful Official Eclipse 3.0 FAQs, for pointing out that this indeed pre-dated what I considered to be the first EclipseCon. Chris has a nice little write-up of it with pictures. Check it out. I personally like the picture in the lower left corner w/Erich prsenting in a bright red shirt titled “First public demo of Eclipse on Mac”.

Hmm… it looks like the common denominator with all EclipseCons is that Erich Gamma and John Weigand always make a presentation.

EclipseCon 2 – Eclipse Event at JavaOne 2003

Location: San Francisco Marriott, San Francisco, CA

I wrote about this in another post, calling it EclipseCon 2003.

EclipseCon 3 – EclipseCon 2004

Location: Disneyland Hotel, Anaheim, CA

There’s a big archive of stuff from EclipseCon 2004 at the site. I recommend checking out the news section, which points out items from a day by day view. Also, check out the presentations.

For a blogger’s point of view, you can check out Ed’s archives from EclipseCon 2004.

EclipseCon 4 – EclipseCon 2005

Location: Hyatt Regency, Burlingame, CA (“minutes from downtown San Francisco”)

Stay tuned…

EclipseCon 2005 is sold out!

EclipseCon 2005 is sold out! (I can’t remember any software related conference I’ve been to that sold out, though many were quite full.) As a result, I’ll be scalping tickets at the door. :)

Seriously, this is great. Also, if you really want to go, you can get on the waiting list.

Eclipse has seen tremendous growth in the past few years and I feel fortunate to have witnessed much of it. I wrote last week about what I considered to be the first EclipseCon, 2 years ago. I’ll share a bit about last year’s EclipseCon this week.

Next week, stay tuned, as I’ll be blogging from EclipseCon 2005. If they have wireless access, I’ll try to cover some of the keynotes live.

The night owl gets the milestone build (Eclipse 3.1M5 is here!)

Eclipse 3.1M5 is here!

I like this quote from Kim Moir, the Master of Eclipse Build Ceremonies (OK, not an official title):

“The clock has struck midnight and M5 has emerged as a beautiful new stable build.  Enjoy.”

You can download 3.1M5 here. The mirrors probably do not have it yet, so I would go ahead and go to the main Eclipse download site in Canada.

Read about the New Stuff in Eclipse 3.1 M5 here.

Before I drop off to sleep, here’s some highlights that I hope to try out this weekend:

1. Starting up SWT apps will be easy, via a Run As > SWT Application menu item. That’s great! The only downside will be the decreased demand for my #1 blog entry. But that’s one small step back for Luis, one big leap forward for Eclipse-kind.

2. New Undo/Redo API. This is also great, since this is a tricky thing for Tool Developers, but also one that needs to be right for there to be a good user experience. Looks like this is still in its early stages.

3. TableTree has been deprecated and replaced by a Tree with multiple columns. Since I also do Swing, it was always weird to see TableTree instead of JTreeTable.

4. You can finally reorder Table columns by dragging. Another thing that I missed from Swing.

5. More RCP support in terms of startup, wizard templates, and branding. 3.1 is looking to be great for RCP Apps. I only hope that it is accompanied by a greater web presence and maybe even a marketing campaign. Perhaps a prominent link in the navigation bar, promotion to a top-level project, or maybe a place on the top of the home page would be good. Everyone knows that Eclipse does plug-ins, but RCP is not as well known yet.

6. iTunes-like searching of Properties as well as Preferences.

7. Import/Export of Preferences. This is good for developing in teams when you want to have shared preferences and something I’ve been wishing for a while.

8. New Help view. This hopefully will improve the user experience with help, especially with searching. I especially like the search. I’ve been meaning to post a blog entry about how isn’t fully in the Google Universe and how you can get around it, but perhaps now I won’t have to.

9. Install/Update Wizard Redesigned. Hopefully the user experience will improve here too. So far, it has been nicer to install via zip files rather than this wizard and hopefully that will be reversed soon.

10. More Java 5 support.

11. Better Source folder configuration.

Wow, it looks like there’s been some good work on the user experience. Hopefully this will make the EclipseCon demo even better, but I’m even more excited about the eventual 3.1 release after seeing these improvements. Note to Erich or whomever is presenting: Please make sure the power connections are good. ;)

Technorati tags: eclipse

Memories of EclipseCon 2003

I was at EclipseCon 2003. What’s that you say? The first EclipseCon was EclipseCon 2004? I beg to differ.

I would say the first EclipseCon was the “Eclipse event at JavaOne 2003“, back on June 11th, 2003.

I didn’t have a blog back then, but if I did, I think this is what I would have written once I got back to my hotel room…

June 11, 2003

Just got back from the Eclipse BOF. It was a little hard to find, since it was not on the grounds of JavaOne, but in a hotel nearby. There were probably around 50 people there.

I got a free Eclipse cap. :)

I saw Erich Gamma, Mr. Design Patterns himself, and he showed off some interesting features in the new version of Eclipse, like the hot code replace which lets you change code while debugging. He demoed it by running JHotDraw and changing its look and feel while running.

The guys from SAP talked about their experiences with developing on top of Eclipse as a platform. They did a demo which wen much better than the one that kind of crashed and burned during a keynote. I can sympathize with the guy.

It seems like they had TogetherSoft port Together/J or at least the underlying libraries to SWT for use in NetWeaver. They’re considering giving some of that back to open source. That would be cool. [Note from the present: I don’t think any of that has become open source. TogetherSoft has now been fully integrated into Borland, which seems committed to Swing, although there is a Together Edition for Eclipse which I haven’t evaluated yet.]

There was a question and answer session, which was interesting. I asked a question about how JSR 198 would affect Eclipse. JSR 198 is the holy grail of tool plug-in interoperability, which if fully realized, could let you write a plug-in for NetBeans and run it in Eclipse or JBuilder or whatever other IDE that is JSR 198 compliant. The answer was that the Eclipse team is on the committee, as is Oracle, which also happens to be on the Eclipse Board, and both will work to help implement JSR 198, but it shouldn’t impact Eclipse in a negative way. [Note: Not sure what is the status of JSR 198. Anyone have any insight?]

After the Q&A, they had a random drawing of everyone who submitted answers and I won a book: The Java Developer’s Guide to Eclipse. I even got it signed by one of the authors, Jim D’Anjou, who was there. [Note: This book has been invaluable in my Eclipse endeavors. I highly recommend it, but make sure to get the 2nd version, which has been updated for Eclipse 3.0.]

I got a chance to talk to some folks. I had a good chat with Steve Northover of the SWT Team. We talked a bit about an old OTI product, ENVY, which I had used and enjoyed back when I programmed in Smalltalk. It was nice to see that the Smalltalk community was full force into Java and that the OTI folks (who form the backbone of the Eclipse Team) are helping lead the way, especially since they’ve done such good work before.

I grilled Steve a bit about SWT, since I’m a big fan of Swing which I’ve mastered over the past few years. He explained that it was a pragmatic decision of IBM back when it was developing WSAD, since at the time Swing/AWT just was not performing well. Later on, it seems that he explained that Swing / SWT interoperability was quite feasible. [Note: It does work on Windows and Linux now, but not yet on Mac OS X. If you like this blog, perhaps you could do me a favor and vote for this bug entry? :)]

The posters were interesting, kind of like a science fair focused on Eclipse. I talked to the fellow behind the JBossIDE. I also was intrigued by the Draw2D and GEF poster, though I couldn’t quite figure out how it relates to Java2D. I’ll have to look more into this. [Note: GEF and Draw2D are great. They probably should be included in the main download, along with EMF and XSD.]

Epilogue: Later on, I went to a BOF about Building a Wizard Framework in Swing. The fellow from HP who presented noted that he didn’t use the framework anymore because now they are developing in Eclipse, which provides a nice wizard framework. That was a good early illustration of why it wasn’t just a choice between JFace/SWT and Swing/AWT, but that there were lots of frameworks that Eclipse provides for Tool Developers.

Technorati tags: eclipse