Presented by

  • apache software foundation

Organized by

  • lanka software foundation
  • lanka linux user group
  • The Linux Center, Sri Lanka

Sponsors

  • Google
  • WSO2
  • WSO2
  • IBM
  • JKCS
  • Covalent
  • US Technology
  • TransAsia
  • Dialog

Sessions

Apache Synapse ESB

Asankha Perera (WSO2 inc.)

The ESB term has become so hyped as to be meaningless. Apache Synapse is a project based on the maxim: “Code Talks”: instead of hype, Synapse is based on delivering the most useful function needed to build and manage a distributed, interoperable Service Oriented Architecture. Synapse sits between services on the network and does useful things. It can log and monitor, route and transform, translate and validate messages as they flow across the network. Synapse has a simple, easy to use configuration model closely based on available standards, including XPath, XSLT, and Regex. Out of the box Synapse does useful things like switching between WSRM and JMS, WS-Sec and HTTPS, XML and JSON, REST and SOAP. Synapse is a lightweight, high-performance pure open source Enterprise Service Bus and Broker. Built on top of Axis2 and Axiom, it supports both transparent proxying and an explicit gateway model. Synapse can be easily extended with additional mediators implemented as Java classes, classes managed by Spring etc. This talk will introduce the Synapse message mediation framework and how it could be configured and used to solve common enterprise integration scenarios. So come along and find out how to build an ESB the open way

AJAX and PHP

Christian Wenz (Hauser Wenz Partnerschaftsgesellschaft)

AJAX is a hot topic, but requires work on both ends of the client-server architecture: A lot of JavaScript on the server, and PHP on the backend. Especially on the server part, modules and frameworks can prove to be a real time and pain saver. This session first covers AJAX basics, including some solutions for common AJAX problems (back button, bookmarks) and then has a look at some of the AJAX frameworks for PHP.

Identity-Enabling Your Applications

David Recordon (VeriSign)

Web 2.0 requires a much better notion of the identity of our users. In response, a number of user-controlled digital identity technologies have sprung up, such as OpenID, LID, XRI, Sxip, Microsoft CardSpace, and the Higgins Project that are now converging in places such as Apache, OASIS, Identity Commons, IETF, and Eclipse. This talk explains the need for digital identity technologies (improved security, higher user convenience, increased privacy, more accurate information, new applications) and outlines how developers using these technologies can take advantage of digital identity in their applications including code samples.

Building Highly Available Web Applications

Emmanuel Cecchet (Continuent)

In web applications the database usually becomes the performance bottleneck and a single point of failure. In this talk we will show how to build end-to-end highly available multi-tier web applications using Sequoia http://sequoia.continuent.org with Apache HTTP web server, PHP, Tomcat, Geronimo and Derby. Sequoia provides database clustering techniques with unique transparent failover capabilities. We will also introduce the new Apache-licensed Appia group communication library http://appia.continuent.org which can be used to cluster any tier in a highly available system.

AJAX in Apache MyFaces

Ernst Fastl (Irian GmBH)

AJAX (Asynchronous JavaScript and XML) is a new, very interactive and dynamic techonology to build web applications. With AJAX, you load only parts of a page upon a request and leave the other parts of the page unchanged. This session covers the basics of AJAX and its inclusion in JavaServer Faces. It goes on demonstrating the AJAX components Apache MyFaces brings along and explains how to use them in highly interactive web applications. Finally, it outlines the technology to build your own AJAX components for JSF and Apache MyFaces.

Apache O/R Mappers

Henning P. Schmiedehausen

With the arrival of Cayenne in the Apache Incubator, the ASF has now five different projects to map SQL data to Java objects and vice versa: Torque, OJB, iBatis, JDO and Cayenne. This talk introduces all of them and shows their strenghts and weaknesses compared to each other.

Antlibs - specifying custom tasks for apache ant

Kev Jackson (ViNetworks)

Antlibs a new way to develop custom tasks for Ant 1.7. The presentation covers, how to write a basic antlib, how to test antlibs (using BuildFileTests, or the new antunit facility), and how to use the antlib in a build file.

Practical Guide to Apache Axis2

Rajith Attapattu (Red Hat Canada)

This unique session will address the most pressing issues that have been raised by the user community since Axis2 1.0 release. Key areas such as POJO support, Spring support, embedding, JAX-WS support etc will be discussed. The focus will be on providing the status with respect to these key issues and the critical “Know-How” to get started on these areas.

Inside Apache Geronimo 1.1 - What makes it special?

Rakesh Midha (IBM Software Labs)

Apache Geronimo is a Certified J2EE Application Server gaining popularity in both open source community and enterprise world. This session takes audience through what is in Geronimo for them, be it a developers, an administrator, an application deployer or a solution architect/designer. We will discuss Geronimo architecture and its usage from the above mentioned user’s perspective. This session takes audience through the Geronimo open source story which covers latest features, server installation and deployment, application development and deployment, tooling and debugging, and performance monitoring. We will look into Geronimo usage to setup your environment with the pre-intergrated resources to match up with your requirement like databases, messaging and directory. Also this session will have an introduction and capabilities of the latest Little-G distribution that provides a subset of Geronimo components in a light weight download form. This session will provide all the information you required to know why Geronimo is special and at the same time get you hooked up with Apache Geronimo.

BSF4Rexx: Camouflaging Java

Rony G. Flatscher (Wirtschaftsuniversität Wien)

Using Jakarta’s BSF it becomes possible to address Java as a weakly typed language. With the BSF4Rexx package one can address Java classes and Java objects as if they were ooRexx classes and objects, sending ooRexx messages to them and retrieving Java results as ooRexx results. ooRexx is a powerful object-oriented, industry-proven interpreter with an easy to learn syntax, that looks almost like pseudo-code. Being able to camouflage Java as ooRexx opens up an entire new world of applicability. One new area is the platform independent scripting of any application that possesses a Java interface, like the powerful office application suite “OpenOffice”, which gets used in the talk as an important proof of concept and demonstration that can be extended to arbitrary new applications.

Embedding Axis2/C in Your Application

Samisa Abeysinghe (WSO2 Inc.)

PHP Axis2 and the Axis2/C Firefox extension are examples of instances where Apache Axis2/C has been embedded to provide Web service capabilities in diverse platforms. This kind of integration is possible because of two reasons: first Apache Axis2/C is written in C; and second, it has been written platform independent with portability and integration in mind. This session explores how you could use the Apache Axis/C API to embed it in to your platform to enable Web Services. The session will use sample use cases from PHP Axis2 extension to demonstrate how integration could be done effectively in a short period of time.

Portlets with Python: dynamic languages using portals bridges

Santiago Gala (University Francisco de Vitoria)

Portlets bridges enable the use of legacy CGI scripts as portlets as well as the use of other languages than Java to interact with the portal server. The python bridge uses python to get tight python-java integration and includes python modules that enable writing process oriented portlets in a rather intuitive way. With python generators, the programmer can abstract away the request-response cycle of HTTP, and get a more intuitive flow of control for webapps.

Introduction to MINA

Trustin Lee (NHN Corporation, South Korea)

Apache MINA (A Multipurpose Infrastructure for Network Applications) is a Java network application framework that enables users to develop stable and high-performance network applications rapidly. MINA is ideal for developing protocol servers such as LDAP, SMTP, HTTP, Kerberos, and many more. In this session, the lead developer of the project explains what MINA is and how MINA can help you to implement simple and complex protocols. An overview of MINA patterns and constructs will be discussed to kick-start attendees so they can begin to use MINA.

Using Velocity, XML and XSLT to develop a portable, efficient rule engine

V.Omprakash (Polaris software lab)

There are many rule engines in the market but not much consideration is given to performance. The benchmarks included with these engines tend to focus on accomplishing something rather than accomplishing the same thing faster. Also, many of the rule engines still store the rules in proprietary formats which makes it difficult for these rules to be loaded and run by another rule engine. This paper proposes a design that leverages the power of XML, XSLT, Domain specific languages together with the power of Velocity in developing a rule engine that delivers the optimum performance.

Enhanced Single Sign-On

Werner Keil (Mastek)

This presentation explains the detail design for “Enhanced�? Single Sign-On (ESSO) functionality used by multiple partner sites to participate in a common portal. While the solution uses SAML to all possible extent, the nature of the highly heterogenous partner sites requires additional steps and use cases in addition to OASIS’ SAML standard.

WebDAV

Rich Bowen (Asbury College)

Distributed Authoring and Versioning - provides a compelling
replacement for FTP and other networked file systems, and is becoming
very common in operating systems and applications.