HomeDigital EditionSys-Con RadioSearch Java Cd
Advanced Java AWT Book Reviews/Excerpts Client Server Corba Editorials Embedded Java Enterprise Java IDE's Industry Watch Integration Interviews Java Applet Java & Databases Java & Web Services Java Fundamentals Java Native Interface Java Servlets Java Beans J2ME Libraries .NET Object Orientation Observations/IMHO Product Reviews Scalability & Performance Security Server Side Source Code Straight Talking Swing Threads Using Java with others Wireless XML

Web: www.mycgiserver.com
E-mail: [email protected]

Sometimes finding hosting for your well-crafted pieces of code can be more work than the coding itself. Locating a service that does it free of charge is a real challenge; however, www.mycgiserver.com is a service that meets both criteria. The site started life as a CGI server that could run user's Perl scripts, PHP, and Java servlets, but in November 2000 they made the decision to concentrate on Java deployment.

There are other providers of free server space to run your Java Web applications, such as iSavvix (www.isavvix.com) or WebAppCabaret (www.webappcabaret.com), so it is advisable to check all of them and see which will fulfill your requirements.

Many free services on the Internet contain banner advertising to fund the service. The only banner ads on www.mycgiserver.com are on their own home page and in the member's area pages. At present there are no banner ads on the Web space viewed by the public.

The servlet container used, Caucho Resin, is an open-source servlet engine. It also handles the JSP and XTP calls; being a Jakarta Tomcat user for so long I'm looking forward to researching and using Resin for my local development. We're not limited to servlets, JSP is also available, and for the data hungry there's InstantDB and Hypersonic SQL on the site. Access to an SMTP server and an RMI registry is also available.

Registration is all done online. Once registration details have been processed and you have replied to your confirmation e-mail, 5MB of server space is allocated. There is the option to be e-mailed at regular intervals to be told of upgrades (EJB is coming soon, plus plans for domain and subdomain hosting).

The members area gives information on the amount of space you have used, a brief rundown of the mappings to different file types (servlets, JSP, XML, xtp, and so on), the all important FAQ, and a list of installed components covering XML parsing, e-mail, regular expressions, and cryptography. Also available within the member's area is a Java compiler (JDK 1.3), so if you upload a Java source file to your area you can compile without having to do it on a local machine first. There is an option to password areas of registered Web space with ".htaccess", and a "htpasswd" program is available online to generate the passwords.

From a development point of view, all servlets created are contained as a package. It's important to note because if you don't declare any package information, the servlets won't run. As everyone shares the servlet engine, you have to declare that the servlet belongs to you (see Listing 1).

When users run the servlet, they would visit www.mycgiserver.com/servlet/fictionusername.TestServlet

Servlets can run from any directory, but you must remember to adjust the package name accordingly in order for the servlet to work. For people new to the servlet and JSP programming, there are sample files for you to look at within your personal server space. There is also a discussion board, so you can post questions or provide answers to those in need or distress. This makes up for the lack of formal documentation and the depth of information within the FAQs.

There are a couple of minor problems with the service, the first being you can't keep all your servlet classes in one .jar file. The other is the online documentation. What I would like to see are pages for setting up the add-on components, such as InstantDB and Xerces, and using the RMI registry. For example, I had to download InstantDB onto my development machine and figure out how it works, then transfer that knowledge to my server account. My concerns are for new Java programmers who want to develop and learn. Our aim should be to encourage not discourage.

I use the service as a test bed and alternative Web space, and is something I'm looking to develop more. For those who don't need the complexity of JRun or WebLogic, I would encourage you to look at www.mycgiserver.com. The only cost is your time and effort.

Reviewed by
Jason Bell [email protected]


Listing 1 TestServlet.java

 package fictionusername;

import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;

public class TestServlet extends httpServlet {
        public void doGet(httpServletRequest req, HttpServletResponse res)
          throws IOException, ServletException {

                // body of code continues...



All Rights Reserved
Copyright ©  2004 SYS-CON Media, Inc.
  E-mail: [email protected]

Java and Java-based marks are trademarks or registered trademarks of Sun Microsystems, Inc. in the United States and other countries. SYS-CON Publications, Inc. is independent of Sun Microsystems, Inc.