Comments
Richard Davies wrote: The UK has a good crop of technology pioneers in cloud computing - for example ElasticHosts, FlexiScale, Flexiant, OnApp - and also some strong government initiatives such as G-Cloud. We will have to see whether this kind of technical leadership converts into swift mass-market adoption or not.
Cloud Computing
Conference & Expo
November 2-4, 2009 NYC
Register Today and SAVE !..

2008 West
DIAMOND SPONSOR:
Data Direct
SOA, WOA and Cloud Computing: The New Frontier for Data Services
PLATINUM SPONSORS:
Red Hat
The Opening of Virtualization
GOLD SPONSORS:
Appsense
User Environment Management – The Third Layer of the Desktop
Cordys
Cloud Computing for Business Agility
EMC
CMIS: A Multi-Vendor Proposal for a Service-Based Content Management Interoperability Standard
Freedom OSS
Practical SOA” Max Yankelevich
Intel
Architecting an Enterprise Service Router (ESR) – A Cost-Effective Way to Scale SOA Across the Enterprise
Sensedia
Return on Assests: Bringing Visibility to your SOA Strategy
Symantec
Managing Hybrid Endpoint Environments
VMWare
Game-Changing Technology for Enterprise Clouds and Applications
Click For 2008 West
Event Webcasts

2008 West
PLATINUM SPONSORS:
Appcelerator
Get ‘Rich’ Quick: Rapid Prototyping for RIA with ZERO Server Code
Keynote Systems
Designing for and Managing Performance in the New Frontier of Rich Internet Applications
GOLD SPONSORS:
ICEsoft
How Can AJAX Improve Homeland Security?
Isomorphic
Beyond Widgets: What a RIA Platform Should Offer
Oracle
REAs: Rich Enterprise Applications
Click For 2008 Event Webcasts
In many cases, the end of the year gives you time to step back and take stock of the last 12 months. This is when many of us take a hard look at what worked and what did not, complete performance reviews, and formulate plans for the coming year. For me, it is all of those things plus a time when I u...
SYS-CON.TV
AltoWeb Application Platform
AltoWeb Application Platform

The AltoWeb Application Platform is a J2EE-compliant system designed to provide an integrated environment to develop, deploy, and manage Web-based and services-based applications. It allows developers to create applications without specific knowledge of enterprise Java and to deploy the final product on J2EE- compliant application servers.

The platform consists of several components: AltoServer, AltoStudio, AltoManager, and AltoMonitor. AltoStudio is the integrated development environment in which applications are built. The AltoServer, running inside a J2EE-compliant application sever, provides the runtime environment and monitoring engine for applications created in AltoStudio. The Alto-Manager component manages the remote deployment of AltoWeb applications built in AltoStudio. AltoMonitor provides real-time monitoring of application usage and performance. Figure 1, from the AltoWeb Web site, provides an outline of the architecture of the AltoWeb Platform. For this review, I will be focusing on AltoStudio.

AltoWeb is distributed in three configuration packages to run on three individual application servers: IBM's WebSphere, BEA's WebLogic, and the JBoss application server. For this review, I've loaded the WebLogic version of AltoWeb onto WebLogic Server 6.1.

AltoStudio Concepts
AltoStudio is a development environment that follows a component-based approach to building applications. Development is done while connected to a live instance of AltoServer and all objects are deployed automatically as work is saved.

Development work is organized into applications and projects. Applications represent Web application containers on an application server. Projects are collections of components that perform a collection of business processes, such as managing a product catalog. Applications may contain multiple projects.

The developer has at his or her disposal four categories of objects for building applications:

  • Data Access: Provides access to external data stores. Connectors to external sources include SQL databases, Web servers, file systems, XML files, HTML files, and flat files.
  • Business logic: Business logic objects provide the actual logic rules for execution, the mechanisms to link the presentation tier to the data tier, and the means to encapsulate and represent business entities.
  • Views: Views represent the presentation layer of an application and may be created in JSP and XML.
  • Components: Customized, user-developed Java classes that manipulate data.

    In addition to the individual editors in AltoStudio for objects such as JSP pages, XML pages, and Java classes, external editors may be registered for each object to give the developer access to the full range of capabilities provided by those specific tools.

    Development in AltoStudio
    For this review, I'll create a simple application that accesses user information in an Oracle database. The initial setup will involve establishing a SQL Data Source object that will use a connection from an existing pool in WebLogic. AltoStudio provides the ability to access a connection object through a JNDI lookup by simply specifying the name of the connection object. Alternatively, AltoStudio can access a database through a JDBC driver.

    The first step to representing the User as an object available to other components is to create a MetaObject. The MetaObject, linked to a specific data store, provides a layer of abstraction isolating the details of the data storage mechanism from the components that will access it. The definition of a MetaObject consists of fields and operations. The fields may be created from a custom SQL statement or selected directly from a list of available tables and columns. Operations are defined to manipulate the item represented by a MetaObject. For example, several Select operations may be defined to handle lookups or searches by various fields. These operations may be created from SQL statements or by applying one of the available filter types.

    Once the data sources and the MetaObjects have been created, process logic may be created to perform the business operations on the data. Process objects are created by diagramming the operations in a process view. The process view contains individual component operations, each with their own inputs and outputs.

    In the example in Figure 2, the process executes the function GetUserById. The function maps the input parameter to a defined select operation on the User MetaObject and produces three outputs. The function outputs are then mapped to the process outputs.

    Information is transported within and among processes by DataModel objects. These containers provide temporary storage for runtime data and may be shared across components.

    Along with the provided modules that may be inserted into processes, AltoStudio also provides the ability to create custom components by coding Java classes. When creating a Java class, the developer defines the input, output, and any custom runtime parameters used during execution. AltoStudio then generates the skeleton Java code for a subclass of ProcessWorker. The developer then has the option to launch an IDE that has been associated in AltoStudio to complete development on the class. When finished, this class is available in the Process editor as an executable component.

    Once the process has been defined and the appropriate DataModels assigned and created, an interface must be created to allow other processes to act upon it. The interfaces are defined by Action components. Three types of Action components exist in AltoStudio: Actions, XML Actions, and Web Service Actions. The standard Action object is used in browser-based applications to call a target process, custom class or pass data to a public Data Model. The end result of an action is a JSP view or a URL. XML Actions allow AltoWeb to manage client requests in XML format. Web Service Actions allow AltoWeb processes to be executed via SOAP calls. Once defined, the Web Service Actions may be published to a UDDI registry from within AltoStudio.

    Web Service Actions may be created from scratch or from an existing WSDL definition. To create the action from an existing definition, an active UDDI registry must be available for AltoStudio to browse. Once available, the developer selects the definition desired and AltoStudio creates a new process with the corresponding data models and structures defined in the WSDL document. When creating a service without an existing WSDL definition, the developer must follow specific naming and data structure conventions outlined in the documentation.

    Finishing Up
    Throughout the development process, AltoStudio is linked with the host application server to store applications. This gives the developer the flexibility to test the application from an external client throughout the development cycle. With the combination of Web Service Actions, JSP Views, and XML Views, the application is available from very distinct types of clients with minimal development effort. The underlying business process is independent of the access method created for that process. In the case of the User Lookup Web Service Action I've created, AltoStudio generated the necessary SOAP call required to test the service and retrieve the results.

    Summary
    The AltoWeb Application Platform provides an integrated environment to de-velop, test, deploy, and manage Web-based and services-based applications. The AltoStudio development environment provides developers with the tools to create business-oriented applications without requiring a low-level knowledge of J2EE and Web services technologies. Its flexibility does present a learning curve for new developers, but once acclimated, the tool is effective. Overall, the AltoWeb Application Platform is a solid tool that can improve the development of Web- and services-based applications.

    Contact:
    Steve Wilkes
    Principal Technologist
    1731 Embarcadero Road
    Palo Alto, CA 94303 i
    650 251-1591
    swilkes@altoweb.com

    Pricing:
    Platform starts at $3500 per developer seat

    Test Environment:
    Pentium III
    256 MB RAM
    Windows XP Professional
    Oracle 8i
    BEA WebLogic 6.1
    JDK 1.3.1

    About Brian Barbash
    Brian R. Barbash is the product review editor for Web Services Journal. He is a senior consultant and technical architect for Envision Consulting, a unit of IMS Health, providing management consulting and systems integration that focuses on contracting, pricing, and account management in the pharmaceutical industry.

  • In order to post a comment you need to be registered and logged in.

    Register | Sign-in

    Reader Feedback: Page 1 of 1

    SOA World Latest Stories
    Quick Response (QR) codes are intended to help direct users quickly and easily to information about products and services, but they are also starting to be used for social engineering exploits. This article looks at the emergence of QR scan scams and the rising concern for users today....
    The Chinese company that claims it owns the iPad trademark says it plans to seek a ban on iPad exports out of China, threatening global supplies. According to what a lawyer for Proview Technology (Shenzhen) Co Ltd told Reuters, the firm is petitioning Chinese customs to stop shipment...
    Cisco Wednesday filed suit in the European Union’s second-highest court, the General Court in Luxembourg, challenging the European Commission’s rubber stamp last October of Microsoft’s $8.5 billion acquisition of Skype. Cisco says it isn’t opposed to the merger, but figures the EC sh...
    2011 was a year of rapid adoption for public and private cloud services. Instant and on-demand server provisioning was the driving force behind the massive growth. On top, cloud server templates and script automation simplified application installation for simple and pre-defined applic...
    As more enterprises are adopting clouds, the nature of cloud computing is changing. Previously, clouds were used to test applications or for non-mission critical applications. Today, enterprises are using clouds for cost-saving advantages and launching more mission critical application...
    Building a cloud computing environment with on-demand access to compute, network, and storage resources requires an elastic infrastructure at multiple levels. Virtualization combined with x86 servers has transformed the way we scale out compute resources. Unfortunately, legacy Fibre Ch...
    Subscribe to the World's Most Powerful Newsletters
    Subscribe to Our Rss Feeds & Get Your SYS-CON News Live!
    Click to Add our RSS Feeds to the Service of Your Choice:
    Google Reader or Homepage Add to My Yahoo! Subscribe with Bloglines Subscribe in NewsGator Online
    myFeedster Add to My AOL Subscribe in Rojo Add 'Hugg' to Newsburst from CNET News.com Kinja Digest View Additional SYS-CON Feeds
    Publish Your Article! Please send it to editorial(at)sys-con.com!

    Advertise on this site! Contact advertising(at)sys-con.com! 201 802-3021


    SYS-CON Featured Whitepapers
    ADS BY GOOGLE