Thursday, November 15, 2007

WebLogic 10.3 Tech Preview

BEA has released a tech preview version of its flagship product, WebLogic Server, the most advanced JEE application server. The new application server has features that make many other envy, as it is able to do the hot deployment of classes.
Experience using the Eclipse Europa Fall using BEA Connector for WebLogic 10.3 shows a very significant increase in time to deploy changes in the Java classes.
One of our project adapted this environment which makes development pretty much faster and enjoyable.
More time for beers and fewer time waiting to deploy...

Tuesday, October 23, 2007

NetBeans Jackpot project

Sam has just written in the JUG-ID that there is a NetBeans Jackpot project.

The first impression is of course the Logo.
I really like the Duke logo playing the slot machine. Hihihi.

Jackpot is Java source code reengineering tool. It works on NetB eans IDE.

Apache Hudson Continuous Build

This week I have had intensive touch with Hudson. I need to setup a new environment for development. It is a continuous build application, from the open source free software (OSFS) stack.

Hudson could run on any JEE application servers, such as Tomcat or Jetty. The project is now under Apache Software Foundation. The license is Apache License v 2.0.  
In our enviroment we use Subversion, and Hudson integrate well with Subversion. It polls for changes in Subversion, and  build on changes so that we could know which commit breaks the build. Hudson could run Ant build project but support Maven 2 build as well. To configure Hudson to use Maven 2 build, you only need to specify the pom.xml file. 


Monday, October 22, 2007

Back To AWT!

Last 2 weeks has been my time revisiting the Java AWT. I was assigned to create a chart graphics which is not supported by existing open source projects. The graphics required to be overlapping with left and right side showing different scales on the Y-axis. I took a look on an open source project that do similar graphics, and finally come into decision to create the graphics itself in Java AWT, and later display it through servlet streaming the image.
Last time I dealt with this stuff was long time ago, first time I learnt Java 1.1. The assignment was to create a GUI application for Reverse Polish Notation (RPN) calculator. RPN is a stack machine, where all operations takes place in the stack. RPN itself was widely used in the first generation programmable calculator (with the first and notable player: Hewlett-Packard!). The assignment was displaying 8 rows of stacked line seven-segment-digits that contain numbers stored in the stack machine.
This is a real fun though, it remains me the time of BASICA when drawing in the screen requires us to compute the coordinate, transforming it, etc. Now of course the AWT has bunch of more satisfying features such as Graphics2D (which wasn't there during Java 1.1 reign).
This is a real banana!

Tuesday, October 16, 2007

Digital Mars C/C++ Compiler Review

Some peoplein the Linux programming mailing list suggested people to use this Digital Mars C/C++ Compiler to learn C/C++ language. I still maintaining my C/C++ programming skill once a while, but it's been quite long since last time engaged in big project.
You can take a look here: http://www.digitalmars.com/download/freecompiler.html
The compiler seems to be free, but you are required to pay when requesting for the CD.
I tried to play around a bit with it, which seems a good for fast up-and-running C/C++ environment. It runs on Win32 and Win16 environment as well. Of course you might need a DOS Extender for Win16 environment in order to be able to use high memory (if you don't understand this, it's ok, just a heritage from the old x86 architecture which we might not be using anymore).

I downloaded the 8.50 version and try to make a working environment out of it.

Java2D for Custom Report Graphics Display

This last 4 days I was forced to learn the Java2D. Java2D is a powerful library, but it was only introduced in Java 1.2. The last time I learn about graphics in Java, was the time when I took the OOP Course, back to 1997? Mr. Stef taught us OOP using Java 1.1. AWT has just changed the infrastructure to message based to reduce complexity. We implemented a graphical Reverse Polish Notation calculator with 8 rows representing the contents of the stack (the first electronic calculator was using this kind of stack based Reverse Polish Notation).

Now I have to browse through it again, because the requirements asked for a type of graphics which I believe currently not supported in any reporting engine. It needs an overlapped view of two graphics. One with the legend on the left, and the other on the right. I have tried to use JFreeChart, but eventually found out that this kind of graphics is not commonly used. I have to build the graphics from scratch, except for the encoder that converts the BufferedImage objects into a PNG or GIF files.

It's interesting to see how JFreeChart is doing it down the hood. Last time when I touched this library it was still 0.9.x and not so stable. Now the library has grown up so much, and the page display flashy pictures.

AquaLogic Portal and WebLogic Portal

The event of Oracle Corp (NASQ: ORCL) bidded price on BEA Systems, Inc (NASQ: BEAS) has raised some users' eye brows.

This time I read and found out that the AquaLogic set of products were actually the PlumTree products which was bought by BEA Systems, Inc on 2005. BEA Systems made a major rebranding of the products as AquaLogic, with AquaLogic User Interface (ALUI) actually a complete, more mature, service oriented based, portal solution. AquaLogic was positioned as SOA based portal solution because it is not just involving Java technology instead it could be integrated with other platforms such as .NET technology.
The WebLogic Portal (WLP) gives illusion that this is the best portal product of BEA Systems' line of products, but I seemed the AquaLogic is somehow a better product than WLP. I haven't dug it well enough into the ALUI, but my experience with WLP has shown that it has a steeper learning curve. WLP technology is not just simply easy to use out-of-the-box.

Oracle Corp now keep adding more and more middleware products from the companies it buys. Some of them intersected each other. Some other obviously overlapped. When there are 2 products of the same kind within the same company, one must die. While ALUI and WLP still co-exist, the acquisition by Oracle, if it really happens would have created a company with overcrowded portofolio of enterprise portals. Then, 3 out of the 4 must die slowly?!? 

Let's watch for the Survival of The Fittest game once again...

Wednesday, September 12, 2007

Eclipse Europa + WebLogic Debug Setting

Everybody seems to be glad on hearing that BEA Systems will be based on Eclipse IDE platform. The next big step is that the connector to BEA WebLogic Server could be run on Eclipse independent of the WebLogic Workshop (and Eclipse bundle). Now everybody could just grab a clean Eclipse installation, later install the WebLogic Server connector.
In order to be able to trace using Eclipse (I'm using Europa Fall version), we need to put a memory setting in our configuration file or run this in command line prior to invoking the server startWeblogic.cmd (or startWeblogic.sh) script.

set MEM_ARGS=-Xdebug -Xnoagent -Xrunjdwp:transport=dt_socket,address=8453,server=y,suspend=n -Djava.compiler=NONE -Xms256m -Xmx512m

By enabling this setting we are able to trace (step in, step out, step over, put a break on the code, etc). This is not a special capability of WebLogic of course, instead it is the capability of JVM available through the JDWP specification. 

 

Friday, August 31, 2007

CentOS 5 Doesnot Support AMD Turion 64 X2

I tried to run the installer for CentOS 5 on my VirtualPC 2007. Until certain step it works, then suddenly it stops. This one remains me to first time running SuSE Linux on AMD K6 based processor long time ago. There were some buffer overrun which was not guarded by the Linux kernel.
After then we have to wait for the patch/fix.

Wednesday, August 29, 2007

Market Still Being Reluctant Towards Migrating to IMS-based Platform

A recent poll by Comptel Corporation (OMX Helsinki: CTL1V), the leading vendor of dynamic Operations Support Software (OSS), found that operators around the globe have still not fully decided on a migration path to IMS. The poll, conducted at Comptel’s annual User Group forum, showed that while a third (32%) of operators worldwide had decided to move towards an IMS architecture within next 2 years, another 32% had made no plans with regards to adoption.
In my opinion,

IMS sounds like the Holy Grail for integrating land line and mobile networks, which everybody already agreed that most likely it will  be based on TCP/IP and UDP/IP stack. The adoption itself is no such an easy task, especially for already operating telecom operator.

My experience working with some telecom operators in Indonesia and Malaysia has shown that it is not that easy to implement a new paradigm in infrastructure for already operating telecom operator. Their main concern normally would be to keep the subscribers services. Migrating the system is not first priority. Maintaining current subscribers are first priority.

For newly launched telecom operators, it would very well make sense to adopt the latest technology straight away because there would be less entry barrier to adopt the new technology.  As it is common in communications, electronics and telecommunications, the latest technology usually is much cheaper than the older ones.

Sunday, August 19, 2007

IBM become Solaris reseller for its x86 product!

IBM has offered Windows based solution, then Linux solution, Novell solution, and now it also offers Solaris solution. This is of course marked the true separation of Sun's hardware business and its Solaris operating system business (now earns mostly from support!), a path that Sun has chosen years ago. Jon Schwartz has stated in his blog that August 16th, 2007 was the milestone for the separation.
Actually Solaris has run on high end hardware other than Sun's, but still in the SPARC architecture circle (such as Fujitsu high end servers).
Now Solaris runs a business model pretty much similar to the RedHat Enterprise Linux (RHEL), competing head-to-head to it, and has the advantage of being positioned as high end operating system lowering down to earth, while RHEL was positioned (at least by community) as hacker operating system trying to go up to become high end platform.
As far as I can remember, Sun also run its StarOffice business under the same business model. So I think this business model is nothing new to Sun.
It will be most likely that other x86 based hardware major vendors (HP/Compaq, Dell, Fujitsu, etc) will join the bandwagon, but IBM has had the advantage of being one to catch the first wave. Now users will have other choice instead of using Windows, Linux, and Novell.

Saturday, August 18, 2007

No TELNET Client in Vista!?

Changing job always needs adjustments.
One of the most annoying thing is that you have to backup all your data, return your notebook to the office, and move the data to your new notebook. I moved to my personal notebook, cos starting from now I will be working on office's PC.
For me, I had an additional tasks, as I have to buy a new notebook. Making backup of all your data you have accumulated for more,than 1 year itself quite a tricky stuff. I have settled on the XP Professional, have a virtualized OpenSolaris 11 (Nevada) and CentOS 5, WebLogic 8.1 and WebLogic 9.2 installations along with the domains, and tons of codes personal stuffs to move.
My choice eventually fell on dual core Turion64 based Fujitsu lifebook. Large clear screen, economic, no camera, but I like it. Fujitsu also invented smart battery management and shock prevention software for hard drives.
One of the thing, is that latest computers only offer Vista. Mine is bundled with Vista Home Premium. It is much like changing platform from Linux to OpenSolaris. Lots of homeworks to do before you could run it so well.
Last week when I tried to work on with Tomcat, but my browser don't show anything. I need to check whether Tomcat service is available on the default port 8080. Then suddenly I found out that THERE IS NO TELNET CLIENT in Windows Vista! I checked the PATH variable, seems to be okay.
Then I googled around, and found out that TELNET client is disabled by default on Windows Vista!
You need to set it up like this, go to Control Panel:
Control Panel > Programs and Features > Turn Windows features on or off > Telnet client
Turn it on.
Amazingly, it took more than 10 minutes just to enable TELNET client! I got no idea why it took so long to enable such a simple trivial client application.
Later on I found out the reason why Tomcat not yet listening to port 8080. Vista blocked the port and asking for permission to listen to that port. This happens only the first time you run your Tomcat instance. If you enable client access feature, you need to reply to this kind of quite-annoying-prompts. Anyway I must be getting used to it.
Voila, Tomcat works again.

Friday, August 10, 2007

End of Unemployed Period and How To Work in Singapore

Today I collected my Singapore EP (employment pass), so right now I officially end up my unemployed period. Next week I will start working right away.
If you want to work at Singapore, you need to have a company that wants to hire you. After the interview and you have been admitted, than you will need to prepare at least these things:

  • Your passport.

  • A passport size photo, black and white.

  • Your university certificate, preferably in English, or translated to English.

  • Your academic transcript, in English or translated to English.


Send the softcopy of the document (scanned) to your employer. They will make application for your EP.
If your document is not in English, then you need to translate it by translator attested by your country's embassy in Singapore, or you may as well go translate it to sworn translator in your country.
When the time your EP has been approved, or before, they might be asking you to show the original documents submitted. This is not always the case, but be prepared for it. Then you will need to collect your EP at Ministry of Manpowers (MOM) . This time you need to be physically present in Singapore.
If you want to go to the MOM office, take an MRT to the Clarke Quay station. Probably this is the most convenient way to get there. Right at the MRT station, you will find a lot of sign board showing where to go to the "Ministry of Manpower". Follow the board, cross the road and you will get to the MOM office. It will be better if you get there before 11am, Singapore time (GMT+8), so that you could be able to collect the EP document within the same day. Don't forget to bring:

  • Your passport

  • Your immigration card attached to your passport

  • Passport size photo (you can take it for SGD 10 beside the MOM office)

  • Declaration and forms from your employer

Wednesday, July 25, 2007

What is an XA driver?

XA is a set of distributed transaction protocols defined by Open Group.
XA provide interfaces that could be used for cross platform transactions. Currently, much of the famous databases provided XA-compliant drivers. XA-compliant driver means that the transaction manager could send XA command directly to the driver.
Oops, sorry, in the world of distributed transaction, there are transaction manager and resource managers. Transaction manager coordinate the transaction, orchestrating the two-phase commit for each of the resource manager.
In JEE point of view, and transaction manager could be a type 3 JDBC driver, and the resource managers could be an XA compliant JDBC drivers, or general type 4 JDBC driver in which the type 3 JDBC driver will emulate XA command using common JDBC transaction commands.
In WebLogic console, when we setup a connection pool, usually we will be asked whether we want to assign an XA driver or just ordinary driver. XA drivers will have a significant overhead imposed into it, so make sure you only use the XA drivers when really required. It is common to have an XA-compliant version of connection pool and non-XA-compliant connection pool, both connecting to the same database, to avoid performance penalty when we don't need two-phase commit.
In my former company, we have a clustered WebLogic server installation with each of the databases have two pairs of connection pools, a non-XA and XA-compliant driver. Due to clustered environment, database connection are using RMI through JNDI lookup. For read only data, always use non-XA connection pool to increase performance.

Tuesday, July 24, 2007

Free and Unemployed

After admitted for work in Singapore, I resigned immediately because the employer asked me to start working ASAP. Singapore is a nice country to earn money, but I have a personal matters that pretty much the main reason to relocate there. The employer has been taken care of the EP application for me.
Yesterday I was called, suddenly the asked me to provide the translated academic transcript for the EP application. They said that this is not usually the case. Probably some kind of random sampling happened and it happened to be me that was chosen for the random checking. They already have some foreigners in the company, the procedure is a bit unusual.
I called to my campus. They told me that probably there is a delay in providing the translation of my academic transcript, due to the change of the rector of the University of Indonesia. Again, I lost my booked flight for the second time. What a waste of money.
Meanwhile, I'm free and unemployed now. Free zone..
Only for a while though...
This event also provides me with enough free time to explore, and accomplish things otherwise I couldn't do. Now I could read some old WebLogic texts, learn more the difference between type 3 and type 4 JDBC driver, and those kind of thingy... This time is a kind of retreat time, where you could do things you wouldn't have time to when you are engaged in an employment. I missed those time when I was as free as bird, when you become the business owner. But become an employee isn't a bad thing at all. You don't have to take just about everything, instead you could focus on things that you are best at.

Saturday, July 21, 2007

Intermittent problem with JRoller?

Today I found out this happening on our fellow JUG-ID JRoller blogs. The JRoller engine has been generated a script variable "$renderedText" instead of displaying the blog content. This suppose to happen temporarily, as the JRoller team pleaded they will fix it ASAP.

No INNER JOINs in Oracle 8i

Yesterday we encountered a problem when testing an already working version of our web application. The application works well in the development environment. When we move the application to hit the production database, it throws an exception.
The application uses Hibernate as its persistence manager. Our team has been hassled for quite some times, until one of our colleagues found out that the query produced by Hibernate was not runnable from Oracle's console. Digging further we found out that the database in production used an older version, the Oracle 8i. Oracle 8i does not support INNER JOIN syntax, therefore it rejects the query produced by Hibernate.
It came across my mind that we should change the dialect. If 8i does not support what is running on 9i, then the developer of Hibernate should have put different dialects for them. This is found out to be true. There is org.hibernate.dialect. Oracle9Dialect for Oracle 9i databases, and org.hibernate.dialect.OracleDialect for older Oracle 8i databases.
After we change it to the correct dialect, the problem somehow is still there. After browsing for a while I eventually found out that we also need to change the query translator to the older version, org.hibernate.class.ClassicQueryTranslator.
Then the application is working in the production database. Voila! It works!

My Last Day,John Stovall, Python, WLST and Jython technology...

Yesterday supposed to be my last day @work. But somehow I must come again on Monday, and reschedule my flight to Batam to Tuesday. Moving to different kind of industry, but still in the same JEE/WebLogic/Solaris/Oracle path. Just a bit apart from the telco industry.

Lately I wasn't able to update this blog because at client office, they block the blog sites. Now, after being freed now I can start updating this blog again.

After accidentally meeting with John Stovall while at Changi Airport, I got enticed to learn more and more about Python, and Jython, its Java porting. First time I met John when I came to JaMU, December 2006. I was presenting Maven 2 technology, and each of the attendees were asked to introduce themselves. You can't miss noticing that big John. We happened to be in the same airplane, and after arrived at Changi airport, I began to recover his name, I called him, "Mr. Stovall", and then he began noticing an acquaintance. He's on the way to Amsterdam, to attend a Python meeting. He began preaching the beauty of Python, the philosophy behind it: "there should be one best way to do it...". I was also realizing that the reason why Guido von Rossum moved to Google was because of almost the entire Google site is based on Python.

I told John that I was using some Jython script because it is part of the WebLogic Scripting Tool (WLST). I learned a lot on it because some of my tasks while at Ericsson's project at Cyberjaya, was to create a automatic installation, deployment and setting tools. I found out that the best way to do it is through WLST. The older method wlshell still works, but using WLST, you could have access to a broader range of futures, both offline and online (requires a running WebLogic instance).

After returning to my regular tasks at Jakarta, I began downloading latest version of Jython. Before that, I have tried one of the scripting languages that has catch up the wave and has been ported to Java: JRuby. I also tried the scripting language made specially for Java: Groovy.

I began to fall in love working with Jython. You can utilize Java classes. The scripting language is close to the functional language I've been using a lot: Gofer+, a derivation of Haskell. Prof. Wishnu Prasetya taught us Data Structure and Algorithms using that functional language. Prof Mia Indika also taught the functional programming using the Haskell language. Python, er, Jython scripting more or less resemble that of Haskell. Sorry, for most of you who learned functional programming through typing lots of Irritating Parentheses (LISP). Though I also used Scheme when learning functional programming, later I mostly used the Gofer+/Haskell family of language.

Python also supports closure, so there is no point that Ruby is better. It only has Rails that makes it famous. I know when I learn Jython in depth, this is two fold, I could create better WLST scripts for WebLogic automatic deployments and configurations, and also be able to do OOP scripting for fast prototyping. I try to construct a script to test Hibernate DAOs and Managers. I will share some of these scripts when have more time to write it.

Wednesday, May 23, 2007

XServer Configuration in MiNevada Fixed!


Lintang and Adhari from Open Solaris User Group Indonesia (OSUG-ID) has answered my question in the Open Solaris User Group. The answer is referring to previous post sometimes ago by Adhari (thanks to Lintang for the pointer and thanks to Adhari for the resourceful answer). I posted the answer here just in case the Google Groups link is available no more.

Mungkin ada yang mengalami problem yang sama ketika configure Xserver di VMWare. Sedikit berbagi trick ketika configure XServer pakai Xsun provider Solaris 10 di atas VMWare. Beberapa hari coba-coba install Solaris 10 di VMWare, inginnya mau start XServer dengan resolusi 1024x768. Problem muncul, konfigurasi sudah benar pakai 1024x768 tapi output selalu produce resolusi 800x600.
Step konfigurasi:
1. Jalankan kdmconfig di single user mode (init level 1)
2. Pilih Xsun
3. Pilih Change Video Device/Monitor
4. Pilih XF86-VMWARE VMWare Inc vmware0405
5. Pilih MultiFreq 56khz (up to 1280x1024 interlaced)
6. Pilih 17"
7. Pilih 1024x768 - 16M colors
8. Continue dan test
9. Jika tampil dengan benar pilih Yes
10. Kembali ke Init Level 3

No worry if you don't understand Bahasa, I'll translate it for you.
May be there are people who experience the same problem when configuring the Xserver on VMWare. I want to share a little trick to configure the XServer using Sun Solaris 10 Xsun provider on VMWare. After days of trial and errors installing Solaris 10 in VMWare, I just wanted to start XServer using the 1024x768 resolution. The problem occurs, though the configuration is for 1024x768 but the output always produces the 800x600 resolution.
This is my configuration step by step:
1. Run kdmconfig in single user mode (init level 1)
2. Choose Xsun
3. Choose Change Video Device/Monitor
4. Choose XF86-VMWARE VMWare Inc vmware0405
5. Choose MultiFreq 56khz (up to 1280x1024 interlaced)
6. Choose 17"
7. Choose 1024x768 - 16M colors
8. Continue and test
9. If it shows correctly then choose Yes
10. Back to Init Level 3

The article itself does not directly answer my question, because I don't know whether the vmware solution applies to me which uses different vm (that is Microsoft Virtual PC). But I believe this article is a highly resourceful one, because it gives me idea on what to try.

So, this is what I actually did:
Crawling through the broken graphics, try to locate and click the [Command line login].

Change to single user mode:
# init 1

Try to run the kdmconfig
# kdmconfig

Not working, because the term is not recognized. I eventually managed to find a working terminal type (remember those good ol' they when ANSI terminals are luxurious stuffs).

# export TERM=ansi
# kdmconfig

Choose Xsun, continue.
Change Video device/Monitor, continue.
Notebook LCD XGA 48kHz (1024x768 @60Hz), continue.
15-inch, continue.
1024x768 - 256 colors @60 MHz, continue.
No changes needed - Test/Save and Exit, continue.
Test.
If you can see the display, click the [OK] button.
Voila, it works!!!

Back to init level 3.

# init 3

Yipeeee!

Friday, May 11, 2007

WebLogic 10.0 Users: Apply Critical Patch

BEA has identified a problem that affects all BEA WebLogic Server 10, BEA Workshop for WebLogic Platform 10, and BEA WebLogic Portal 10 users. The problem is caused by an erroneous license check against an internal license file that will expire on May 14, 2007.

BEA has addressed this problem. Two solutions are available:

  • A patch for existing WebLogic 10 installations, and

  • Updated installers


The patch is available from the BEA Patch Repository; the Patch ID is 2VJT.

Until a solution is applied, the implications of this problem are as follows:

  • If you attempt to boot a WebLogic Server 10 or WebLogic Portal 10 server prior to May 14, you will receive a warning that "sales@bea.com for information on extending your license.>".

  • If you attempt to boot a WebLogic Server 10 or WebLogic Portal 10 server on May 14 or afterwards, the server will not boot.

  • If you have booted a WebLogic Server 10 or WebLogic Portal 10 server prior to May 14, it will continue to run past May 14. However after May 14, attempts to make policy changes in the console will fail, and the server cannot be rebooted after May 14.


Please monitor http://support.bea.com for updates on this problem.

Wednesday, March 28, 2007

Oracle Acquired Tangosol

Last year it was TimesTen and SleepyCat (BerkeleyDB).
This year it is Tangosol.
Who will be the next?

This database giant acquired Tangosol (vendor of Coherence data cache which has been used in many large financials), adding to its "Extreme Transaction Processing" initiative.

http://go.techtarget.com/r/1194471/5981609
http://www.oracle.com/tangosol/index.html

Installing Solaris 10 on SunFire V210

Because most of my time, I have spent in the development, this event is considered a rare occasion: a hands-on experience on plain Sun SPARC based 64-bit machine. This time I have it all in my power: SunFire V210. A machine which you could install, reinstall, configure, reconfigure the way you want it.
In my opinion, it was much easier to install Solaris 10 on Sun's machine, than it was to install one on a virtual machine, or even on an ordinary PCs. The Auto Layout Disk went smoothly, no failure is necessary.
This is actually a rather old machine, used to test the installation script. The client doesn't want to go to their client and install the application only to find out that there's something missing in the installation script. So we fetch out a machine similar to the production platform: a SunFire V245. It is of a bigger size (2U, I think) compared to V210 (1U).

Powered by ScribeFire.



Wednesday, January 24, 2007

Tuning your IntelliJ IDEA 6.0

I found some useful tips when using JetBrains IntelliJ IDEA 6.0:

Turn off the "Synchronize files on frame deactivation" from [File - Settings - General] when your application source tree has become very large. This will save your time synchronizing unnecessarily when switching between windows. I often switch between processes using Alt-Tab key, and this setting saved me a great deal of time.

In the same menu, turn off "Reopen last project on startup" when working in more than one project. When your project grows large, and you switch between projects pretty often, it's nice not to have your IDEA opening the project, loading its mega collection of jars, sitting doing nothing for 5-15 minutes, and later found out it is not the project you are intended to open.

Tuesday, January 23, 2007

Good repository of JDK documentation

I always liked the way Allimant collecting the JDK documentation, in a .chm file! It saves me a lot of time browsing the JavaDoc in its standard format, or browsing and searching in the Internet. The pre-indexed .chm file makes me find anything I need much faster.

http://www.allimant.org/javadoc/

Monday, January 22, 2007

EDC Survey on Top 15 Application Server

Evans Data Center conducted survey on 70 users of application server, and compiled the result in this PDF document:

http://www.bea.com/content/news_events/white_papers/EDC_AppServersPro_V6_Final.pdf

After posting this into JUG-ID, of course there is several discussion, especially on the winner app server in this survey: WebLogic.

Josh asserted that WebLogic 8.1 does not provide hot deployment feature. Tjip asserted that on WebLogic 9 it is already implemented.
Sam asserted that Glassfish/SJAS is currently the only one in the top app server which complies to Java EE 5.

Tuesday, January 9, 2007

Only in Enterprise application

This is what I have encountered while consulting in enterprise application and in the telco industry:
  • Garbage collector running for more than 1,5 minutes
  • Customer care data of 15 million subscribers
  • Data of more than 30 million cards
  • Oracle 9i running query on HP/UX 11i for more than 36 hours
Only on JEE Application development:
  • 2,500 database tables, 3,600 database views
  • 3,800 Java classes, not including the OR/M models

Monday, January 8, 2007

Solaris 10 Installation

Today I tried to install Solaris 10 for x86. So far the installer has done an excellent job. The installation is more or less like installing an NT 4.0 box. I've got not much problems encountered.

The installer bundles the JDK 1.5.0_06 inside.

Saturday, January 6, 2007

New Year Resolution for Java Developer 2007?

MikeUrban put his new year resolution for Java coders in his page.
I tried to adopt mine here:
  1. I will release my first open source project.
  2. I will speak in JaMU this year for begginers on beginners material.
  3. I will go back and do something interesting with all my failed, half-finished projects.
  4. I will realize that design patterns are a guide, not a religion.
  5. I will bother to research the security issues relevant to my work.
  6. I will spend an hour teaching a child the rudiments of programming, even if it's just "Hello World" in JavaScript.
  7. I will do internationalization and localization intensively in my web applications.
  8. I will learn how to use Unicode.
  9. I will not respond to requests for help by informing the questioner that they are not only asking the wrong question, but should change the language they program in and/or their Linux distribution.
  10. I will create one bona-fide playable game, even if it's Tic-Tac-Toe 2007.
  11. I will recognize that not all programs are self documenting, and that this is why comments were invented.

FTP Server problem and the RFC

Still gruntling with the same FTP response text problem.

Ah, eventually I managed to tune the response message text to meet the client's need. Modification of the C source code and recompilation eventually solves the problem. Thanks to fgrep tool and SRPM distribution...

I tried several FTP server implementation, and, yes, they have different response message text also. I compared results from wuftpd, vsfptd, and FileZilla. They produced the same code '226', but put different message on it.

I trace back to the RFC document for FTP, and that's the culprit. It is not specify something, just giving some example. People implement different versions though related. Great job, IETF... You put me in a month of headache.

Tuesday, January 2, 2007

Free Java Lectures

Somebody has posted about this page in the JUG-ID.
Free Java lectures in PowerPoint (.pps) format.

http://curmudgeon99.googlepages.com/

Enjoy!

Happy New Year 2007!

Happy New Year 2007!

The holiday is over, now back to work.

Last year, 2006, for me was an important year for:

I began entering the telecommunication operator industry fully. This is the world where I could seamlessly applies Java EE technology in enterprise class hardware and enterprise class data size and also enterprise class load. Most of deployment in telco is on Solaris boxes, which requires me to rehearse and enhance my BASH scripting skill once again. I get acquainted with some untouchable technologies like Oracle TimesTen and DataGuard, WebLogic Integration, etc.

I switched and becoming permanent employee for the first time in my life, working for an 470-people-IT-company.

I become co-speaker at one of the Bina Nusantara University Java seminar.

I have become one of the speaker for Java Meeting Up (JaMU) 24 -- I received a free IntelliJ IDEA 6.0 personal license from JetBrains for it!

We have deployed 3 applications using WebWork 2.2!

The Internet connection was getting much better today! People begin posting stuffs again at JUG-ID.