Requirements:

Client:
Java-1.3.1 or higher
Java-1.4.2 or higher - if the netbeans visual designer is used for layouting

Server:
Java-1.3.1 or higher
Servlet-2.2 compatible J2EE server (Tomcat4,5,6; Weblogic8.1+ ,....)

Using JUIBrowser:

Like for servlets you have to override a method which is used as entry-point for your application.

public class UTestApp extends USecureNetworkApplication {
    public UTestApp(String sessionID, Properties props) {
        super(sessionID, props);
    }

    public void init(UApplet applet){
        super.init();

        UFrame frame = new UFrame();

        frame.setSize(300, 300);
        frame.setVisible(true);
        frame.setLayout(new UBorderLayout());
        frame.add(new UButton("Hello World"), BorderLayout.CENTER);
    }
}

As you can see the API can be used very similar way than Swing itself.
Listeners can be used the same way as with swing, even anonymous inner classes are possible :)