arrow_back history picture_as_pdf This page is read only. You can view the source, but not change it. Ask your administrator if you think this is wrong. In the following paragraphs, we will show you how to create your first JVx application with minimal effort and code. The application's task is to display data from a database table and make the data editable. Before you start you will need the following libraries and tools: * [[http://sourceforge.net/projects/jvx/files/latest/download|JVx Binary package]] * Eclipse IDE (>= 3.4) with JDT (recommended: Eclipse IDE for Java EE developers) * JDK 6.0 (1.6) or higher * HSQLDB library (http://www.hsqldb.org) * [[http://sourceforge.net/projects/jvxfirstapp/files/latest/download|JVx sample Eclipse project]] For our JVx sample application we need the following parts: * [[#application|Application]] * [[#workscreen|Work screen]] * Business object * Database connection == Create an application == {{anchor:application:}} We need an application as a frame for the client. Each application must implement the interface ''javax.rad.application.IApplication''. In our example, we derive from the standard implementation ''com.sibvisions.rad.application.Application'', whereby we use the following code: <file java FirstApplication.java> package apps.firstapp; import javax.rad.application.genui.UILauncher; import javax.rad.genui.UIImage; import javax.rad.genui.component.UIButton; import javax.rad.genui.container.UIToolBar; import javax.rad.genui.menu.UIMenu; import javax.rad.genui.menu.UIMenuItem; import javax.rad.remote.IConnection; import com.sibvisions.rad.application.Application; import com.sibvisions.rad.server.DirectServerConnection; /** * First application with JVx, Enterprise Application Framework. * <p/> * @author René Jahn */ public class FirstApplication extends Application { //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ // Initialization //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /** * Creates a new instance of <code>FirstApplication</code> with a technology * dependent launcher. * <p/> * @param pLauncher the technology dependent launcher */ public FirstApplication(UILauncher pLauncher) { super(pLauncher); } //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ // Overwritten methods //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /** * {@inheritDoc} */ @Override protected IConnection createConnection() throws Exception { return new DirectServerConnection(); } /** * {@inheritDoc} */ @Override protected String getApplicationName() { return "firstapp"; } /** * {@inheritDoc} */ @Override protected void afterLogin() { super.afterLogin(); //configure MenuBar UIMenu menuMasterData = new UIMenu(); menuMasterData.setText("Master data"); UIMenuItem miDBEdit = createMenuItem ("doOpenDBEdit", null, "DB Edit", UIImage.getImage(UIImage.SEARCH_LARGE)); menuMasterData.add(miDBEdit); //insert before Help getMenuBar().add(menuMasterData, 1); //configure ToolBar UIToolBar tbMasterData = new UIToolBar(); UIButton butDBEdit = createToolBarButton ("doOpenFrame", null, "DB Edit", UIImage.getImage(UIImage.SEARCH_LARGE)); tbMasterData.add(butDBEdit); getLauncher().addToolBar(tbMasterData); } //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ // Actions //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /** * Opens the edit screen. * <p/> * @throws Throwable if the edit frame can not be opened */ public void doOpenDBEdit() throws Throwable { DBEditFrame frame = new DBEditFrame(this); configureFrame(frame); frame.setVisible(true); } } // FirstApplication </file> == Create a work screen == {{anchor:workscreen:}} Once we have created the application framework, we now reate our first work screen with the following code: