Rapid Application Development and Application Generation Tools

Total Page:16

File Type:pdf, Size:1020Kb

Rapid Application Development and Application Generation Tools Rapid Application Development and Application Generation Tools 5/2014 Walter Knesel Java... A place where many, many ideas have been tried and discarded. A current problem is it's success: so many libraries, so many technologies, so many choices Or, You want to be a Java Full Stack Developer? WEB Project DNA ● IDE (Eclipse, NetBeans, Jbuilder, IntelliJ, ...) ● Build Tool (Maven, Ant, …) ● Unit testing (Arquillian, EasyMock, JUnit, ...) ● App server (Tomcat, JBoss, WebLogic, WebSphere, Netty, ...) ● UI framework (JSF, GWT, Spring MVC, Struts, Tapestry, …) ● CSS files, JavaScript files, Images, HTML files, SQL ● View JavaBeans, Business JavaBeans, WebService endpoints ● ORM, DAO (JPA, Hibernate, JDBC), WebService clients ● Database (SQL Server, Oracle, MySQL, ...) Java SE Java takes too long: ● develop / compile / deploy / test cycle is long ● IDE / project integration mysteries ● download / config jars into IDE / app server ● XML configurations are tedious (older spring / hibernate) ● Technologies change every darn time ● !! Getting a new project started is hard !! So what did we do about it? Rapid Application Development ! As usual, there are many choices: AppFuse 3.x ● open-source Java EE web app framework ● designed for quick, easy development start up ● Provides project skeleton and additional code features ● Maven 2 build automation ● Hibernate, iBATIS or JPA as persistence frameworks ● compatible with JSF, Spring MVC, Struts 2 or Tapestry frameworks ● Uses Netty web server ● http://appfuse.org Some of the Code Features: ● User Management – login, signup, remember ● E-Mail ● Templated Layout ● File Upload AppFuse 3.x Grails ● Re-use technologies like Hibernate and Spring under a single interface ● Templates using GSP (Groovy Server Pages) ● Dynamic tag libraries for creating web page components ● Customizable Ajax support ● sample applications that demonstrate the framework ● includes a web server and automatic reload of resources ● http://grails.org/ Features ● No XML configuration ● All required libraries present ● Automatically prepares the Java web environment for deployment ● provides dynamic methods (mixins) based on class type ● allows developers to perform operations without implements or extends ● Has an app generator, owned by Spring Source, works like Spring Roo Grails JSPX(-bay) ● asp.net like imitator, yet different ● Does not mix java into jspx pages ● Plain html use – page tags ● convention over configuration ● stateful ui interface ● Data persistence exists, JPA not mentioned ● http://jspx.sourceforge.net/ JSPX(-bay) OpenXava ● You write the code for data structure and business logic ● You do not have to write HTML, JavaScript, CSS, SQL, etc. ● Java EE user interface and the database logic are automatically provided ● Extend any part of the app later, if needed ● List mode (search) has paging, ordering, filtering, adding / removing / moving columns, PDF reports, export to Excel, etc. ● Detail mode (view) with tabs, frames, dialogs, editors for references and collections, etc. OpenXava Play 2.x ● Definite Scala web platform possibility ● Scala and Java, non Java EE ● heavily inspired by and similar to Ruby on Rails and Django, uses module concept ● Uses convention over configuration ● designed to be run using JBoss Netty web server ● Can package to war and run on EE app servers. ● Stateless: Play 2 is fully RESTful - there is no Java EE session per connection ● a persistence layer based on JPA ● Built in hot-reloading ● an embedded database ● full embedded testing framework ● http://www.playframework.com/ Play 2.x WaveMaker 6.x ● Automatic generation of Hibernate mapping, queries from database schema import ● Automatic creation of Enterprise Data Widgets based on schema import ● Edit form implements create, update, delete functions automatically ● Visual, drag & drop assembly of web applications ● Developer sees live application data within the studio (LiveLayout) ● one-touch deployment to Tomcat, Websphere, Weblogic, Jboss ● Browser-based WaveMaker studio can be bundled ● Deploys a standard Java .war file ● effectively an open source alternative to Force.com ● http://www.wavemaker.com WaveMaker 6.x Others not covered ● Jrapid, not free, cloud based, DRY http://www.jrapid.org/ ● Stripes, not specifically RAD http://www.stripesframework.org ● Vaadin, not specifically RAD https://vaadin.com ● Wicket, not RAD, plain html, components http://wicket.apache.org/ Common Features ● Project skeletons and some feature code ● Convention over configuration and Annotations ● Maven – get / configure / deploy jars ● Maven – standard project config, operations ● light-weight frameworks, scripting langs ● DRY (don't repeat yourself) pattern ● code generation or support of some layers Another Approach Please? ● I don't really want to give up my environment for another ● The technology changed again and I don't want to jump to yet another environment to catch up ● I'd like to just push a button..... Application Generation Tools ● Not as easy as pushing a button ● Does not generate a production application ● DOES generate a deployable running application ● A good start, delete what you don't want ● Grails ● Maven archetypes ● Spring Roo ● Seam / JBoss Forge Maven Archetypes ● Many choices, will likely find one for your desired environment and version. ● Built a demo with jboss-javaee6-webapp-archetype 7.1.3 Final ● Command line: mvn archetype:generate ● Eclipse new → maven project ● Produces a maven project skeleton ● http://maven.apache.org Jboss EE6 Blank Project Jboss EE6 non blank Project Maven Archetypes Pros ● Part of Maven, instant Maven project ● Light, quick, easy to run ● No other external software to install ● Freedom to build app your way ● Many, many archetypes to work with Cons ● Produces a skeleton only ● Blank is truly minimal (pom, libraries, persistence.xml) Spring Roo ● Is a separate (commandline) generator ● Has to be installed (unzipped) ● Install oracle driver into internal osgi ● Reversing a database worked first try! ● Had to build database tables first ● http://projects.spring.io/spring-roo/ Roo shell Roo commands ● project --topLevelPackage org.cchmc.bmi.psysoc.pvp ● jpa setup --provider HIBERNATE --database ORACLE ● dependency remove --groupId com.oracle --artifactId ojdbc14 --version 10.2.0.2 ● dependency add --groupId com.oracle --artifactId ojdbc6 --version 11.2.0 ● database properties set --key database.driverClassName --value oracle.jdbc.OracleDriver ● database properties set --key database.url --value jdbc:oracle:thin:@localhost:1521:XE ● database properties set --key database.username --value myid ● database properties set --key database.password --value mypass ### all tables at once ● database reverse engineer --schema PSYSOCPVP --package ~.models ● web jsf setup --implementation ORACLE_MOJARRA --library PRIMEFACES --theme BLUESKY ### build them all ● web jsf all --package ~.beans Roo Generated: ● a PrimeFaces JSF UI ● Non EE AspectJ Spring beans and models ● heavy use annotation and injection ● Models use JPA ● Some internationalization provided ● Simple CRUD app, runs in Tomcat Roo Project Roo App Roo Pros ● Little investment ● More capabilities than shown ● Database schema reversal works ● Spring, JPA, JSF, PrimeFaces Cons ● Non EE ● AspectJ bean generation ● Roo Specific Annotations ● Does not “drop in” to Jboss servers Seam 2 ● Marry JSF 1.2 w/ JPA and make it work ● My first app generation encounter ● Installed Seam external to IDE ● Defined schema in reveng.xml ● Built an EE 5 CRUD app ● MPM admin tool started this way ● http://www.seamframework.org/Seam2/Home Seam 3 ● Java EE 6 and CDI ● Seam 2 had to become Seam 3 ● Seam 3 introduced JBoss forge ● Seam 3 has stopped (see Apache DeltaSpike, others) ● http://www.seamframework.org/Seam3 Jboss Forge 1.4x ● Is a separate (commandline) generator ● Has to be installed (unzipped, Eclipse) ● Reversing a database - miserable failure ● Did it their way, inside out ● http://forge.jboss.org/ Forge Shell Forge Commands ● New-project; ● scaffold setup --scaffoldType faces; ● beans setup; ● entity --named Customer --package ~.domain; ● field string --named firstName; ● field string --named lastName; ● field temporal --type DATE --named birthDate; ● … ● @/* Generate the UI for all */; ● scaffold from-entity ~.domain.* --scaffoldType faces –overwrite; ● @/* create rest WebService CRUD endpoints */; ● rest setup; ● rest endpoint-from-entity ~.domain.*; ● build; Forge Generated: ● JSF UI ● Domain beans, EE criteria query view beans ● heavy use annotation and injection ● views use JPA ● Simple CRUD app, runs in Jboss 7 Forge Project Forge App Forge Pros ● More function, for free ● J2EE 6 Annotated, JBoss compatible, what we use ● JSF, JPA, criteria queries already built if desired ● Large table paging is built in. Cons ● Multiple injected entity managers ● Extended conversations ● More pages, clicks to navigate ● Want DB reverse engineering to work ● View beans are too dense Conclusions ● Generally good starts or short cuts ● Use what works, delete what doesn't ● May show new ideas, techniques, APIs ● Build multiple projects, cannibalize them ● Don't be afraid to modify / extend .
Recommended publications
  • Spring Roo - Reference Documentation
    Spring Roo - Reference Documentation DISID CORPORATION S.L. Table of Contents Getting started . 1 1. Overview . 2 2. What’s new in Spring Roo 2.0 . 3 Improved extensibility . 3 No backward compatibility . 3 Usability improvements . 3 Centered in Spring technologies . 3 Application architecture . 4 Domain model . 4 View layer . 4 3. Requirements . 6 4. Install Spring Roo . 7 Using Spring Roo . 9 5. The Roo shell . 10 6. Impatient beginners . 12 7. Create your Spring Boot application . 13 8. Configure the project settings . 14 9. Setup the persistence engine . 15 10. The domain model . 16 JPA entities . 16 DTOs . 20 11. The data access layer . 21 Spring Data repositories . 21 Default queries . 21 12. The service layer . 22 Service API and Impl . 22 13. The view layer . 23 Thymeleaf view engine . 23 Spring MVC Controllers . 23 Spring Webflow . 25 14. The integration layer . 26 REST API . 26 WS API . 26 Email . ..
    [Show full text]
  • The Definitive Guide to Grails
    apress.com Graeme Rocher, Jeff Scott Brown The Definitive Guide to Grails This will be the first and only definitive book on the agile open source lightweight Grails (“Groovy on Rails” analogous to Ruby on Rails) Framework 1.0 release Written by the open source Grails project founder and lead, Graeme Rocher Emerging growth area with support from key open source lightweight projects like Spring, Hibernate, Wicket and more The rise of Ruby on Rails has signified a huge shift in how we build web applications today; it is a fantastic framework with a growing community. There is, however, space for another such framework that integrates seamlessly with Java. Thousands of companies have invested in Java, and these same companies are losing out on the benefits of a Rails–like framework. Enter Grails. Grails is not just a Rails clone. It aims to provide a Rails–like environment that is more familiar to Java developers and employs idioms that Java developers are comfortable 2nd ed., 648 p. using, making the adjustment in mentality to a dynamic framework less of a jump. The concepts within Grails, like interceptors, tag libs, and Groovy Server Pages (GSP), make those in Printed book the Java community feel right at home. Grails' foundation is on solid open source technologies Softcover such as Spring, Hibernate, and SiteMesh, which gives it even more potential in the Java space: 39,99 € | £36.99 | $46.99 Spring provides powerful inversion of control and MVC, Hibernate brings a stable, mature object [1]42,79 € (D) | 43,99 € (A) | CHF relational mapping technology with the ability to integrate with legacy systems, and SiteMesh 53,55 handles flexible layout control and page decoration.
    [Show full text]
  • Efficient Web-Based Application Development Tools on XML-Enabled Databases
    Copyright is owned by the Author of the thesis. Permission is given for a copy to be downloaded by an individual for the purpose of research and private study only. The thesis may not be reproduced elsewhere without the permission of the Author. Efficient Web-based Application Development Tools on XML-enabled Databases A thesis presented in partial fulfilment of the requirements for the degree of Master of Information Sciences Yi Chen Massey University Palmerston North, New Zealand July 2008 Efficient Web-based Application Development Tools on XML-enabled Databases Table of Content 1 Introduction ............................................................................................................................... 4 1.1 Web-based Application Development .......................................................................... 4 1.1.1 Web-based Applications ............................................................................................... 4 1.1.2 Developing Web-based Applications............................................................................ 5 1.1.3 New Challenges and Opportunities with Web 2.0 ........................................................ 7 1.2 Web-based Application Development Tools ................................................................ 9 1.2.1 Oracle Application Express (APEX) .......................................................................... 11 1.2.2 WaveMaker (formerly ActiveGrid) ............................................................................ 12 1.2.3 Ruby
    [Show full text]
  • What's New in GWT?
    What’s New in GWT? David Chandler Google Web Toolkit Team Atlanta, GA USA [email protected] 1 Agenda Why rich Web apps with GWT? GWT Quickstart Developer tools GWT performance for your users Building with GWT 2.12 2 GWT in 10 sec Asynchronous JavaScript And XML++ 3 GWT in 60 sec Open source Java to JavaScript compiler Lets you write rich Web apps in Java Cross-browser just works (FireFox, Chrome, Safari, IE 6+) Produces small, fast JavaScript Easy (and efficient) RPC Great for large projects / teams 4 Browser-Proof Your JS Code IE Firefox Safari Chrome Opera 5 5 No plugins required Silverlight VML Flash 6 6 Can you find the bug? Hint: JavaScript is a dynamic language 7 7 Catch errors at compile time Java is a static language 8 8 Completion, refactoring... 9 9 Eating our own dogfood += AdSense, Maps, Docs, Groups... 10 10 Demos Booked In Typing race 11 Rich ecosystem www.gwtmarketplace.com 12 More ecosystem Util: GIN, gwt-dnd, gwt-fx, gwt-comet, ... Widgets: EXT-GWT, Smart-GWT, ... Frameworks: Vaadin! 13 4+ years in review May 2006 GWT 1.0 Launch at JavaOne … … Aug 2008 GWT 1.5 Java 5 language support Apr 2009 GWT 1.7 Dedicated IE8 support Fall 2009 GWT 2.0 UIBinder (XML template), runAsync() Oct 2010 GWT 2.1 MVP, RequestFactory, Spring Roo 14 14 GWT delivers... Productivity for developers - Language, IDEs, tools, libraries - People, ecosystem Performance for users - 'Perfect' caching - Whole program optimization 15 15 Developing with GWT Develop - Google Plugin for Eclipse, GWT Designer, STS / Roo Debug - In Eclipse with dev mode
    [Show full text]
  • Osgi and GWT Integration Via Pax-Web and Maven (V:0.01)
    OSGi and GWT integration via Pax-web and Maven (v:0.01) Sergio Blanco Diez Ignacio Diaz de Sarralde Carvajal January 13, 2010 Contents 1 Introduction 2 2 GWT 3 2.1 Toolkit overview.....................................3 2.1.1 Development overview..............................3 2.1.2 Google Web Toolkit component overview...................4 2.2 Workflow.........................................4 2.2.1 Project creation.................................4 2.2.2 Project structure.................................5 2.2.3 \Hosted" or Development server........................6 2.2.4 Module definition; .gwt.xml files........................8 2.2.5 Coding the client; GWT Widgets........................9 2.2.6 Coding the server; Remote Procedure Calls.................. 12 2.3 Other features...................................... 14 2.3.1 Internationalization............................... 14 2.3.2 Declarative User Interfaces........................... 14 3 OSGi and GWT integration 17 3.1 Creating the GWT Project............................... 17 3.2 Things to consider in GWT Maven projects...................... 20 3.3 Enabling OSGi in the GWT project.......................... 20 3.3.1 Turning the GWT project into a bundle.................... 20 3.3.2 Dependencies management........................... 25 3.3.3 Run using Pax Runner.............................. 28 1 Chapter 1 Introduction When developing complex OSGi applications it is usual to implement one or more web frontends, be them for end users or for consumption by other systems. OSGi provides a standard way to register servlets and resources under different URLs, but creating complex frontends can be dif- ficult and time consuming. When the frontend is SOA based, solutions like Apache CXF help exposing internal services via web services or REST. But if the frontend must be a fairly complex web application in itself, complexity rises.
    [Show full text]
  • Great Lakes Software Symposium Westin Chicago Northwest November 11 - 13, 2011
    Great Lakes Software Symposium Westin Chicago Northwest November 11 - 13, 2011 Fri, Nov. 11, 2011 Ballroom 3-4 Ballroom 1-2 Gallery Chambers Stanford Trafalgar 12:00 - 1:00 PM REGISTRATION 1:00 - 1:15 PM WELCOME 1:15 - 2:45 PM What's new in Spring Resource-Oriented Programming HTML5 Concurrency without Busy Java Introduction to Lean-Agile Craig Walls Architectures : REST I Tim Berglund pain in pure Java Developer's Software Development Brian Sletten Venkat Subramaniam Guide to Java 7 Paul Rayner Ted Neward 2:45 - 3:15 PM BREAK 3:15 - 4:45 PM NoXML: Spring Resource-Oriented NoSQL Smackdown! Collections for Concurrency Busy Java Measure for Measure for XML-Haters Architectures : REST II Tim Berglund Venkat Subramaniam Developer's Guide – Lean Principles Craig Walls Brian Sletten to Multi-Paradigm Design for Effective Metrics Ted Neward and Motivation Paul Rayner 4:45 - 5:00 PM BREAK 5:00 - 6:30 PM Introducing Spring Strategic Design Cassandra: Radical Towards a Humane Busy Java Resource-Oriented Roo: From Zero Using DDD NoSQL Scalability Interface—Aesthetics Developer's Architectures : to Working Spring Paul Rayner Tim Berglund and Usability Guide to Guava RDF/SPARQL Application in Record Time Venkat Subramaniam Ted Neward Brian Sletten Craig Walls 6:30 - 7:15 PM DINNER 7:15 - 8:00 PM Keynote: by Venkat Subramaniam Great Lakes Software Symposium Westin Chicago Northwest November 11 - 13, 2011 Sat, Nov. 12, 2011 Ballroom 3-4 Ballroom 1-2 Gallery Chambers Stanford Trafalgar 8:00 - 9:00 AM BREAKFAST 9:00 - 10:30
    [Show full text]
  • Developing Webapps Faster with Appfuse Matt Raible [email protected]
    Developing webapps faster with AppFuse Matt Raible [email protected] !ww.raibledesigns.co" Who is Matt Raible? • Developing websites since 1994 (before Netscape 1.0) - Developing in Java since 1999 • Committer on several open source projects: Roller Weblogger, Struts Menu, Display Tag, AppFuse, Struts Resume • Have a weblog (http://raibledesigns.com) with tips n’ tricks for J2EE and web development • Author: Spring Live (SourceBeat) and contributor to Pro JSP (Apress) !ww.raibledesigns.co" Audience Questions • Your Experience with webapps? • What do you want to get from this presentation? • Open Source experience with Ant, XDoclet, Struts, Hibernate, Spring? !ww.raibledesigns.co" Presentation Agenda • What is AppFuse? • Open Source Dependencies • Demo of Features • HowTo: Create Person object and DAO to persist • Questions? !ww.raibledesigns.co" AppFuse - what is it? • History - how it came to be • Powered by Ant, glued together with Spring, persisted by Hibernate and controlled with Struts • Easy setup (ant setup) for Tomcat and MySQL • Testing on all tiers: DAOs, Business Delegates, Struts Actions and JSPs !ww.raibledesigns.co" Dependencies !ww.raibledesigns.co" Demo of Features • Container Managed Authentication - easily switch from JDBC to LDAP or Windows domain authentication • Remember Me and Self Registration • GZip Compression Built-in • Testing environment ready to go, Anthill ready • http://demo.raibledesigns.com/appfuse !ww.raibledesigns.co" Create database, table, POJO and DAO A Quick HowTo !ww.raibledesigns.co" Development
    [Show full text]
  • Impacts of Object Oriented Programming on Web Application Development
    International Journal of Computer Applications Technology and Research Volume 4– Issue 9, 706 - 710, 2015, ISSN: 2319–8656 Impacts of Object Oriented Programming on Web Application Development Onu F. U. Osisikankwu P. U. Madubuike C. E. James G. Computer Science Department of Computer Science Computer Science Department, Computing and Department, Department, Ebonyi State Engineering, Akanu Ibiam Federal Obong University University, University of Polytechnic, Akwa-Ibom, Nigeria Sunderland, Uwanna, Nigeria UK Nigeria Abstract: Development of web application nowadays can hardly survive without object oriented approach except for the purpose of just information display. The complexity of application development and the need for content organization has raised the need for web application developers to embrace object oriented programming approach. This paper exposes the impact of object oriented programming on web application development. The exposition was done through a detailed study and analysis of information from secondary sources. The internet was usefully employed to access journal articles for both national and international sources. Our study enables web developers and designers to understand web application features, tools and methodologies for developing web application. It also keeps researchers and scholars abreast of the boost which OOP has brought into Web Applications development. Keywords: Object-Oriented Paradigm; Web; Web 2.0; RIAs; URL. 1. INTRODUCTION According to [17], Web Applications are web sites which are designers to understand web application features and popular dynamic in nature and uses server side programming to allow languages, tools, and methodologies for developing web a good interaction between the user form at the front end, and application. the database at the back-end.
    [Show full text]
  • Migrating from Struts 1 to Struts 2
    Migrating from Struts 1 to Struts 2 Matt Raible, Virtuas Open Source Solutions [email protected] © 2005-2006, Virtuas Open Source Solutions Introductions Your experience with Java? Your experience with Web Frameworks? What do you hope to learn today? Open Source experience: Ant, Struts, WebWork, Spring, Hibernate, Eclipse, Tomcat? Favorite IDE? Favorite OS? Favorite Server? Matt Raible Web Framework Experience Struts: used since June 2001 - same time 1.0 was released. Spring MVC: used since January 2004 - before 1.0 was released. WebWork: used since July 2004. Tapestry: used since July 2004. JSF: used since July 2004 - both Sun’s RI and MyFaces. Agenda 1. Struts Overview 2. WebWork Overview 3. Reasons for Upgrading 4. Migrating from Struts 1 to Struts 2 5. Migrating from WebWork 2 to Struts 2 6. Pitfalls 7. Q and A Struts 1.x Overview Struts 1.x Pros: The “Standard” - lots of Struts jobs Lots of information and examples HTML tag library is one of the best Cons: ActionForms - they’re a pain Can’t unit test - StrutsTestCase only does integration Project has been rumored as “dead” WebWork/Struts2 WebWork/Struts 2 Pros: Simple architecture - easy to extend Tag Library is easy to customize with FreeMarker or Velocity Interceptors are pretty slick Controller-based or page-based navigation Cons: Small Community Documentation is poorly organized WebWork / Struts 2 WW/S2 Lifecycle WebWork Action public class UserAction extends ActionSupport { private UserManager mgr; private User user; private String id; public void setUserManager(UserManager
    [Show full text]
  • On an Amazing Journey with the European Atlas of the Seas – 16
    On an amazing journey with the European Atlas of the Seas – 16 June 2021 Workshop Speakers and Panelists Zoi Konstantinou is a Marine Scientist MSc-PhD, specialised in Integrated Coastal and Marine Management and in Science-Policy-Society interface. Before she joined the European Commission, she worked in marine research, in science-policy interface and in higher education. As an European Commission Policy Officer, she works on the development and management of EMODnet, on other issues related to ocean observations and data, on ocean literacy and other issues related to knowledge and research. Wavemaker Dr Easkey Britton works at the nexus of science and art. She has a PhD in marine social science, and is a writer, artist and ocean leader with a deep love and passion for surfing and the sea. Her work explores the relationship between people and nature, especially water environments. She contributes her expertise in blue space, health and social wellbeing on national and international research projects. She is currently a lead researcher on the INCLUSEA project, fostering and promoting greater inclusion and accessibility in surfing in Europe. Her book ‘50 Things to Do By the Sea’ has just been published and her next book, ‘Saltwater in the Blood’ comes out September 14th. Nathalie Van Isacker holds a Master’s degree in bio-engineering and certificates for courses in water management. Her professional experience is in consulting, communication and outreach related to polar sciences and the Polar Regions and project monitoring in the fields of climate change, nature conservation and the environment. As a Project Officer for the EMODnet Secretariat since September 2020, she supports communication and outreach activities related to the European Atlas of the Seas.
    [Show full text]
  • Develop a Simple Web Application with Apache Wicket and Apache
    Develop a simple Web application with Apache Wicket and Apache Geronimo Combine Wicket, Geronimo, and Apache Derby to form an open source Java Web development platform Skill Level: Intermediate Robi Sen ([email protected]) Vice President Department 13 LLC 10 Jul 2007 Apache Wicket is an innovative Java™ Web application framework that was introduced a couple of years ago. It helps simplify Web application development by clearly separating the roles of developers and designers. It lets you remove logical code from the view layer, eliminating the need for JavaServer Pages (JSP), providing a simple plain old Java object (POJO)-centric mode of development, and removing much of the need for XML and other configuration file formats. In this tutorial, learn how to set up your system to develop a simple Web application with Wicket, using Apache Geronimo as your application server and Apache Derby as the embedded database. Section 1. Before you start This tutorial is designed for developers who have found Java frameworks, such as Struts, lacking in needed functionality. If you're interested in developing Web applications in a more object-oriented manner, where the view is clearly separated from logic and there's minimal configuration and mapping, then Wicket is for you! This tutorial walks you through the basics of how Wicket works, while using Apache Geronimo to set up a Java Platform, Enterprise Edition (Java EE) server, Web server, and embedded database in just minutes. Combining Wicket with Geronimo lets you develop data-driven, scalable Web applications using software that's all open source. Develop a simple Web application with Apache Wicket and Apache Geronimo © Copyright IBM Corporation 1994, 2008.
    [Show full text]
  • Continuous Transition from Model-Driven Prototype to Full-Size Real-World Enterprise Information Systems
    [GNM+20] A. Gerasimov, J. Michael, L. Netz, B. Rumpe, S. Varga: Continuous Transition from Model-Driven Prototype to Full-Size Real-World Enterprise Information Systems. In: 25th Americas Conference on Information Systems (AMCIS 2020), pp. 1-10, Association for Information Systems (AIS), Aug. 2020. Association for Information Systems AIS Electronic Library (AISeL) AMCIS 2020 Proceedings Systems Analysis and Design (SIGSAND) Aug 10th, 12:00 AM Continuous Transition from Model-Driven Prototype to Full-Size Real-World Enterprise Information Systems Arkadii Gerasimov RWTH Aachen University, [email protected] Judith Michael RWTH Aachen University, [email protected] Lukas Netz Chair of Software Engineering, [email protected] Bernhard Rumpe RWTH Aachen University, [email protected] Simon Varga RWTH Aachen University, [email protected] Follow this and additional works at: https://aisel.aisnet.org/amcis2020 Recommended Citation Gerasimov, Arkadii; Michael, Judith; Netz, Lukas; Rumpe, Bernhard; and Varga, Simon, "Continuous Transition from Model-Driven Prototype to Full-Size Real-World Enterprise Information Systems" (2020). AMCIS 2020 Proceedings. 2. https://aisel.aisnet.org/amcis2020/systems_analysis_design/systems_analysis_design/2 This material is brought to you by the Americas Conference on Information Systems (AMCIS) at AIS Electronic Library (AISeL). It has been accepted for inclusion in AMCIS 2020 Proceedings by an authorized administrator of AIS Electronic Library (AISeL). For more information, please contact [email protected]. Continuous
    [Show full text]