Marco Walther's Weblog

« Previous page | Main | Next page »

20060525 Thursday May 25, 2006

Late JavaOne impressions

Last week was a lot of fun;-) JavaOne time. But at the end of it, I was very tired.

Everything started with the NetBeans Day on Monday. Or better with the registration to it. Seeing all those people standing in line to listen to what's new and coming in NB was quite a sight. I talked to a couple of people while standing in line about what tools they were using. Most of the people I talked to there where using more than one editor/IDE. Some little missing features  can sometimes make the live harder than it should be. I pointed a couple to Sandip's blog to show them that there is more out there and how easy it is to write your own little additional modules.

The presentations were good, but the conference rooms in the hotel could not hold all the people. I was especially interested in Sandip's presentation of the future Creator pack. That went well and I think a lot of people liked the idea that we are finally combining the two.

Tuesday, the AXAJ and Semplice showings in the keynotes were well recieved. I don't think too many people understood really what Tor was showing there. I think a couple got it later in the week at the Semplice coming out session.

One session was called "Twelve Reasons to Use Creator". Charles Ditzel wrote about it. I know a lot about Creator but I wanted to see what questions and concerns would come up there. Overall, I think the audience did learn a lot about different corners of Creator. For me the best part was when Octavian tried to squeeze into a small NetBeans shell (ahm t-shirt;-). I tried to take some pictures but those little digital cameras don't work so well at a distance:-(

I talked to a lot of people during my shift at the Creator booth in the Pavillion. Some things that came up again where Tomcat and JBoss, Java EE 5 support (and the unfortunate lack of Java SE 5 support in the current Creator), JDBC driver issues, and portlets/portal questions. Overall I somehow seem to see an increase in interest in the portlet area. At J1, at the Creator forum and I even get emails asking about deploying our portlets to different portals. So I used the pavillion to talk to the JBoss Portal and the LifeRay people. In the end I was successful to deploy our portlets to both of them;-)

Later in the evening I went to the packed JavaPosse BOF. The room in the Argent hotel could hardly hold all the people. Ofcourse I know all those four guys and it was a fun evening. Listen to episode #55 to get an impression;-) But it ended (officially) at 23:20 and I had to get home.

On Wednesday the most interesting talk for me was probably the Groovy talk. I come from a Unix background and did some scripting all along. I find that combination of Java and a scripting language good. I hope I can try to play with that a bit more in the near future.

Thursday started with the IBM keynote. I did not know what to expect but was surprised by the Eclipse and it's community talk. I found the demo of the tight integration of the IDE with the overall process very interesting. There was an old joke in the Emacs world: "When do you know that an editor matures? - When it can send email." I guess that process integration is a step into the same direction, doing more in the same environment.

Next was the Semplice talk. Unfortunately it was moved from the afternoon to the moring. So I don't know how many people did not make it. But the people who made it found it very interesting. Unfortunately the talk now collided with another talk "Dynamic Typed Languages and the JVM" which I would have also liked to attend:-(

In the evening, the famous J1 Bash with James Gosling's t-shirt throwing-machine contest. Some time to relax a bit and have fun.

Later I went to two NetBeans BOF's. In the first one Geertjan and Petr showed how easy it is to extend or customize NB with a new Web Framework. The second one was about the NB collaboration modules with a twist. The transport layer was JXTA;-) At that BOF one guy came up and talked about how he had tried to get the NB collaboration modules working in Creator. He was not completely happy. I tried that as well way back when. I got most of it to work but then too much other stuff came in between and that never went anywhere.

And it was again 23:20 and time to get home.

Friday started with the fun Sun keynote. I did not ride my bicycle that week:-( I was simply too tired and BART has restrictions on which trains you can bring your bike, so it did not play out. But quite some people did ride;-) And one guy won the Lance Armstrong jersey;-)

James Gosling had the final of the RT Slot Car Race on stage. That race track was always surrounded by a lot of people at the pavillion. And I've seen quite a few people spending a lot of time there trying to get into that final. Four kids from Germany made it and ended up taking second place;-)

Two interesting talks were the NB API development talk and a session on JSF in portlets.

Overall I trink it was a very good conference. I don't have any numbers but it looked more buzzing than the last couple of years. One thing, I have to think about, is how to better handle late BOF's, early keynotes and a 1.5 hour commute time.

And now I need some time to play with my new toy;-) The Jasper S20 phone. So far, it works pretty well as normal cell phone but I got it to play with the devlopment for it;-)

Have fun;-)
-- Marco

PS: I had big problems today. For whatever reason, my FireFox timed out all the time when I tried to write this post:-(

( May 25 2006, 03:36:26 PM PDT ) Permalink Comments [3]

20060514 Sunday May 14, 2006

Planet Java Studio Creator ?

I'm toying with a Planet Java Studio Creator site idea. So far I've my first attempt but I would like to know if other people find this useful and what they would like to see there.

The CSS is still completely messed up but look at planetjscreator and let me know if that would be useful. Currently it's only using feeds from Sun but I would like to open it to other Creator related feeds.

Please be patient, that's currently hosted on my little Cobalt Qube 3 on a DSL line. It might move or completely disappear depending on the responses I get;-)

I've also created a thread on the Creator forum. So you can also discuss this there.

Thanks,
-- Marco
( May 14 2006, 12:43:15 PM PDT ) Permalink Comments [2]

20060509 Tuesday May 09, 2006

Bike to JavaOne;-)

A lot of the Java enthusiasts will know that the 2006 edition of JavaOne will be held next week in San Francisco. I'll be there as well as for the NetBeans Day on the Monday.

If you have seen the Java Studio Creator web site, you also probably realize that I'm riding my bicycle quite a bit. So I was pleasantly surprised when I saw the Sun Announcement:


"Think Green - Bike to JavaOne and Demonstrate Sun's commitment to Eco-Responsibility"

I don't know where this went on the outside web site (yet), but here are some passages, which might be interesting for all interested readers to repeat (I even asked the marketing person before repeating them here;-):

"As part of the Participation Age, Sun is making a concerted effort to promote eco-responsibility to its employees, customers and partners. This year, the JavaOne Conference runs from May 16th - 19th and overlaps "Bike to Work Week." To support this effort and in keeping with Sun's efforts to help reduce greenhouse gas emissions, Sun employees planning to attend JavaOne are urged to bike to the event.
...
To make biking to JavaOne as convenient as possible, Sun has partnered with the San Francisco Bike Coalition to offer a free "Bike Valet" service Tuesday through Thursday from 8:00 am - 7:00 pm PT and Friday from 8:00 am - 1:00 pm PT in front of the Moscone Center South Hall. The San Francisco Bike Coalition is a non-profit advocacy organization dedicated to promoting the bicycle for everyday transportation. SFBC staffers will watch over bikes and give riders free advice on how to keep their cycles in top shape.
...
To inspire non-Sun attendees to bike to the show and add a little fun to the challenge, JavaOne participants who support Sun's efforts by biking or taking public transportation will be entered into a drawing for a Lance Armstrong signed Discovery Team bike jersey, other Discovery Bike Team gear, Timbuktu messenger bags and other great prizes. Although Sun employees are not eligible to win the raffle prizes, you can receive a free Nalgene bottle available to the first 100 people who participate."


I don't like the last paragraph so much because that means, I can't get any of the good stuff. But I guess that's ok;-)

So I'll try to ride into SF at least once;-) I won't do the whole 70 miles (one way), but maybe getting of BART at Oakland and using a free ferry on Thursday, the 18th sounds like fun. The other days it's BART for me.

Have fun at NetBeans Day and JavaOne next week;-)
-- Marco
( May 09 2006, 03:59:22 PM PDT ) Permalink Comments [4]

20060407 Friday April 07, 2006

Jalopy @ NB 5.0
Long time nothing new? Actually a lot has happened but the blog did not get the attention I would have liked:-(

I'm slowly getting used to working in NetBeans;-)

Ok, I worked on NetBeans for some years now, but I also worked on other stuff. And so I stayed with XEmacs because it supported most of the suff I was looking for in Java and it also supported all the other languages I'm interested in. I even read my email with XEmacs/VM.

But times change and I took the failure of the harddisk in my laptop as opportunity to try and see how long I can survive without a XEmacs setup. It has been more than three weeks now;-)

Some things I'm still missing but I'll look for them or try to find a way to get them working. I might follow in the steps of Sandip and create some small improvements for the things I would like to have.

The first thing I got working again is the very flexible Java code formatter Jalopy. At one time it had a NetBeans  plugin but that was in the 3.5 days. So I took that code and updated it to work with NetBeans 5.0. I hope my changes will make it someday onto the official web site. I sent my project over but the official project has a maven setup and I created a NetBeans project to work with. So there is still some adaptation to do. Until then, here is the nbm to play with and my project sources.

Have fun;-)
-- Marco

Update -- Fri Apr  7 22:18:35 PDT 2006

Tor pointed out that the Jalopy plugin already lives in the NetBeans contrib area. I did not know that, but I'll check that area more closely in the furture;-)
( Apr 07 2006, 07:13:38 PM PDT ) Permalink Comments [2]

20060216 Thursday February 16, 2006

Creator 2 Applications @ Oracle OC4J 10g - A new Episode

After I finished the first deployment to Oracles Application Server a coworker asked me about how to configure Data Sources in that setup. So finally yesterday evening I booted my second laptop up into SuSE Linux Enterprise Server 9 SP3 to start looking at that.

The first problems I encountered were "How did you start up this thing again?" & "What's the administrator user name and password for this server?". It was only three weeks since I played with that server but in the meantime I played with other application servers. It took me a while but finally I got everything under control.

The next question was to find a database to run alongside on the laptop. Since I ride the train and work in different places, I prefer complete self-hosted environments. So I took the sample PointBase database from Creator for my tests.

  • I quickly created a simple application with a drop down list bound to the DB, a button and a static text.
  • I exported it as a *.war file for J2EE 1.3 and deployed it to OC4J.
  • I did the jsp-cache-tlds="off" change as described in my earlier posts. 
So far so good. That worked before without data sources. Now what to do for JDBC connections?
  • I found on the web that I should stick the JDBC driver *.jar file into $ORACLE_HOME/j2ee/home/applib. So I copied the pbclient.jar there.
  • Restart the server. That might not be needed because I believe the following changes require another restart before everything is done.
  • The next steps are done in the Oracle Enterprise Manager, if somebody wants to edit *.xml files, it would be $ORACLE_HOME/j2ee/home/application-deployments/<YouApp>/data-sources.xml.
  • Go back to the >OC4J:home>Application: <YourApp> page.
  • At the bottom of that page, you see a Data Sources link. This brings up the list of configured Data Sources for the application. None so far.
  • Hit Create here which will bring up a page where you can fill in all the details about the Data Source. The screen shot below shows that page:

The interesting fields are the Location (should match the resource-ref name in the web.xml of your application), the Data Source Class (probably always com.evermind.sql.DriverManagerDataSource for everything except Oracle DB's) and the JDBC Driver (is com.pointbase.jdbc.jdbcUniversalDriver for my test setup).

JDBC Url, Username and Password are needed as well;-)

A couple of other fields need values but they are not interesting for web applications.

  • Apply the changes and restart the server if needed.
  • Now you should be able to browse to http://localhost:7777/<YourApp> and be happy;-)

Have fun with your data bases;-)

-- Marco

( Feb 16 2006, 02:50:48 PM PST ) Permalink

20060215 Wednesday February 15, 2006

Joel Brown's Blog

Joel left the Creator team and Sun:-( I wish him all the best in his new area.

His blog entries regarding the database side of Creator are still useful. But the link to his blog was removed from the Creator lists. So I hope this will serve as a anchor for now.

Good luck, Joel.
-- Marco

( Feb 15 2006, 03:24:43 PM PST ) Permalink

20060213 Monday February 13, 2006

Creator 2 Portlets in the JBoss Portal

OK, after I found the solution for the JSF API classes (See the entry below), I hoped to get a Creator 2 Portlet project deployed to the JBoss Portal as well. It worked;-)

It was just a matter of removing the WEB-INF/lib/jsf-api.jar and adding all the needed configuration WEB-INF/jboss-*.xml files.

Then just deploy the war file and add your new PortletInstance somewhere into the Portal. Of course, you will probably do it a bit better than what I did in the screen shot;-) But I don't claim to have any experience with JBoss Portal and for me it's more important to get it working.

It's always nice to see standards (JSR-168 in this case) just work as expected;-)

Have fun with your portlets;-)

-- Marco

Update for JBoss Portal 2.2 (from the floor of J1 2006;-)
 
* You have to remove the WEB-INF/lib/jsf-api.jar and the WEB-INF/lib/portlet.jar.
* Create a WEB-INF/jboss-app.xml
<jboss-app>
<app-name>your_app_name</app-name>
</jboss-app>


*
Create a WEB-INF/foo-object.xml, find a good example in the jboss-portal-2.2.1 users guide, chapter 4.1.1. The only interesting part is the <component-ref> element near the end. That value has to be your_app_name.your_portlet_name . The your_app_name is the one you have choosen above, the your_portlet_name comes from the <portlet-name> in the WEB-INF/portlet.xml.
* Package everything up and deploy it;-)

I hope this helps a bit;-) Thanks to J. Viet from the JBoss team for helping me figuring out what I needed to do here;-)

Thanks,
-- Marco

( Feb 13 2006, 01:54:07 PM PST ) Permalink

Creator 2 Apps @ JBoss + Portal - One Step at a time

I found the solution for my problem from last Friday. I simply had to remove the JSF API classes (WEB-INF/lib/jsf-api.jar) out of the war file. Then that application will work in a JBoss + JBoss Portal bundle. Apparently, the Portal adds those javax.faces.* packages somewhere very global?

Next step, try a Creator Portlet on the JBoss Portal;-)

Have fun,
-- Marco


( Feb 13 2006, 11:44:05 AM PST ) Permalink

20060210 Friday February 10, 2006

Today was JBoss day

                                     
        I played with Creator 2 applications on JBoss. So far I was partially successful. See the JBoss wiki for more information.

The good news is that it seems to work just fine as long as you don't have any other applications which want to use the bundled MyFaces libraries;-)


The not so good news is that the JBoss Portal seems to be an application which uses MyFaces. That means I don't currently know how to make that coexist with Creator applications:-(

Have fun,
-- Marco

( Feb 10 2006, 04:37:43 PM PST ) Permalink

20060209 Thursday February 09, 2006

Creator 2 Applications and Glassfish;-)

It simply works. I like that;-)

In Creator export your application as a *.war file for a J2EE 1.4 compliant container.

Download Glassfish (I used build 9.0-b32f) and get it up and running. Bring up the admin console and deploy your war file as every other war file. Point your browser at the URL and enjoy;-)

If you need some help to configure the resources for your application, there will be a tutorial (for Application Server 8.1 - but the steps are the same) on the Creator site soon. That's the beauty of blogs. I can quickly post something here, but the tutorials have to go through a lengthly review and publishing process.

Have fun,
-- Marco

( Feb 09 2006, 04:49:09 PM PST ) Permalink

Creator 2 @ Gentoo Linux ;-)

First the standard disclaimer:  That's not officially supported but it's just Java, right;-)

This came up on our Creator Forum. People tried to install Creator 2 on Gentoo Linux and that did not work so well.

I'm using  Linux since somewhen  in 1993 /1994. I used to copy stacks of floppies for the installations. So I thought, one more Linux distribution can't be too hard to install and get working. But I have to say, Gentoo is not exactly what I would recomment for starters:-( It takes a long time to configure and rebuild the world before you can do something useful, especially when you try to do that experiment on a scrap box (P3 500MHz/512MB). I think once you have your setup and you know your way around, it's probably not much harder (or better) than any other Linux distrubution out there. But getting to that point takes time.

My final system was a basic Gentoo system with KDE installed. It says:

marco@gentoo-mw ~ $ uname -a
Linux gentoo-mw 2.6.15-gentoo-r1 #2 PREEMPT Thu Feb 2 08:59:21 PST 2006 i686 Pentium III (Katmai) GenuineIntel GNU/Linux
marco@gentoo-mw ~ $ cat /etc/*release
Gentoo Base System version 1.6.13
Now I needed some extra preparations for the installation of Creator.  One thing, the installer of the bundled application server needs a specific libstdc++ to run. So I found the sys-libs/libstdc++-v3 package which should help with that. So I installed it (the symbolic link was to make sure, the installer would find the name it expected):

gentoo-mw ~ # emerge sys-libs/libstdc++-v3
gentoo-mw ~ # cd /usr/lib/libstdc++-v3/
gentoo-mw libstdc++-v3 # ln -s libstdc++.so.5 libstdc++-libc6.2-2.so.3

But that did not help yet:-( The ld.so.conf contained all the right directories and the ld.so.cache seemed to be updated but for whatever reason, the installer could still not find the library.  So I created another symbolic link:

gentoo-mw libstdc++-v3 # cd /usr/lib
gentoo-mw lib # ln -s libstdc++-v3/libstdc++-libc6.2-2.so.3 .

Now the installer was happy.

But the final application server would try to start and then fail. It turned out, my hostname gentoo-mw was not updated with the IP address from DHCP:-( So a ping localhost was fine but a ping gentoo-mw would not know how to resolve the name:-( The application server is trying to use both and failed.

So I used a trick I'd seen on my SuSE systems. They update the /etc/hosts file when the dhcp client gets an IP address. When there is no DHCP available (on a disconnected laptop for instance), they give the hostname an IP address 127.0.0.2. So I tried that on this Gentoo box and it seems to work just fine;-)

gentoo-mw ~ # fgrep gentoo-mw /etc/hosts
127.0.0.2       gentoo-mw

Now a ping gentoo-mw worked fine and the application server was ready to start.

I did a couple of installs and uninstalls until I found all the problems but for you, it should now just be a simple install (as the user who will use Creator!):

marco@gentoo-mw ~ $ ./creator-2-linux-en.bin

I hope this helps some people to use their favorite Linux distribution;-)

Have fun,
-- Marco
( Feb 09 2006, 10:24:50 AM PST ) Permalink

20060208 Wednesday February 08, 2006

Sun Java Studio Creator 2 and Java System Application Server 8.2

The good news: It simply works;-) Get the Application Server 8.2 and install it. Then add it as a Remote Server to Creator's Server Navigator.  Now you can deploy your applications to it ;-).

Maybe some people want to try that;-)

But I would not recomment replacing the `bundled' application server in Creator.  This would create a lot of problems because  we make heavy use of the bundled database engine for our examples etc. Application Server 8.2 switched to Apache Derby as bundled DB engine.

Have fun,
-- Marco


( Feb 08 2006, 01:51:11 PM PST ) Permalink

20060131 Tuesday January 31, 2006

Profiling Creator's Application server

There were some questions about the memory consumption of the application server on the Creator Forum. That's especially interesting when you try to develop applications which might be used by numerous clients at a time.

So I decided to take all the pieces together and try it. You need:
Now develop your application in Creator as you normally would and deploy it at least once. That deployment is needed to make sure, all the configuration is done to the application server and Creator does not try to restart the server while it's running in profile mode.

Start Netbeans and find the Runtime tab. Use the Add Server ... context menu action of the Servers node to tell Netbeans where it will find Creator's application server. That action will open a wizard to ask for all the necessary information.  On the first page, select Sun Java System Application Server and give the new server a name. On the next page, enter the path to the Creator application server.  For me that was "/export/home/marco/rave/Creator2/SunAppServer8". After a little while, the default domain creator should be filled in.  On the next page, enter the admin user name and password (that is admin/adminadmin by default) and hit finish. Now you should see a new node under Servers with your choosen name.

Right click and stop that server.  Then start it in Profile Mode again. Now select Profile -> Attach Profiler ...   from the menubar. Now select one profile task from the wizard (Monitor Application is fine for the beginning) and hit >--> Attach. The application server will continue to start up and you will see thread and memory information in the NetBeans profiler. Once the application server is up and running and you are more interested in a particular task, you can modify the profiling tasks on the fly (to switch to memory profiling for instance). See the NB Profiler page for more info.

Back in Creator, you can now deploy or redeploy your application and use the browser to navigate it.  NB will show you what the application server is doing.

Screen Shot

The screen shot above shows Creator 2, FireFox as browser and NetBeans 5.0rc2 with the profiler while I was trying to find memory problems in a DB application.

I hope this will help a bit;-)

Have fun,
-- Marco


( Jan 31 2006, 03:48:54 PM PST ) Permalink

20060130 Monday January 30, 2006

Where am I from?

           
Google Map imageWhere did I come from? I played a bit with Google Maps. And I found a nice picture of the area where I grew up.  The map to the left shows the city where I was born and the village where I spend most of my earlier fun time;-)

It also shows all four places where I went to school before I went to the university.

People always ask me, where I'm from. But there are no really big cities in that area, or at least not too many famous ones which are also well known here in the US.

For Europeans: I was born in the city where the inventor of the "western china/porcelain" was born.  My Gymnasium/High School was in the city which has a famous glass and optics history among other things;-)

Have fun;-)
-- Marco
( Jan 30 2006, 09:42:56 PM PST ) Permalink

Creator Applications and setup directory:-(

Just a word of caution: Don't create a directory called "setup"  in the project  root.   That is a reserved directory name for NetBeans. Creator itself inherited that NB hehavior partially. So if you do create such a directory, you might end up with very strange errors when you try to build or deploy your project.

Have fun;-)
-- Marco

( Jan 30 2006, 12:23:00 PM PST ) Permalink