"Besides a rich user interaction many applications need to display a big amount of data sets as diagrams or reports as part of their applications. In order to bridge the gap the BIRT project was created as part of the eclipse ecosystem. BIRT is an open source Eclipse-based reporting system that integrates with your Java/J2EE application to produce compelling reports. That BIRT integrates well with classic RCP applications is a well known fact. But the need for rich internet applications is still growing. And here the RAP comes into play. As a platform for developing Web 2.0 applications with the same patterns as for RCP it paves the way for single sourcing applications running on both platforms. In this talk we will show how to integrate diagrams and reports known from BIRT into RAP applications. Topics covered include how to setup the environment to let BIRT and RAP play well together. In addition we will give advices how to use the reports inside RAP applications and which problems may arise. As a final outcome of we will know everything to bring reporting capabilities into RAP applications. "
"Libra is an open source project under the Eclipse Web Tools Platform Container Project. It provides standard tools for OSGi Enterprise application development and in particular tools that integrate the existing WTP and PDE tooling so that OSGi Enterprise applications can be developed with both tooling at the same time. Libra also will enable users to work with tools for better experience in the Server-Side Equinox scenario.
The goals of the project are:
Providing tools for creation of deployable artifacts for application servers implementing the OSGi Enterprise specification, e.g. wizard for creating new Web Application Bundle projects.
Providing tools for converting existing Java EE deployable artifacts to OSGi Enterprise deployable artifacts, e.g. wizard for converting Dynamic Web projects to a Web Application Bundle projects.
Contributing tools for editing and validation of the metadata of OSGi Enterprise artifacts, e.g. extension of the PDE Manifest Editor for editing manifest headers that are specific to Web Application Bundles.
Developing OSGi server adapter, providing basic implementation of configuring an OSGi-based application server, starting it and deploying OSGi enterprise artifacts. This server adapter should be customizable and extensible by adopters.
Delivering tools that improve the experience of developing Server-Side Equinox applications.
Extending the tools in scope, so adopters can apply them depending on their own application model."
Apache Shiro (pronounced "shee-roh", the Japanese word for 'castle') is a powerful and easy-to-use Java security framework that performs authentication, authorization, cryptography, and session management and can be used to secure any application - from the command line applications, mobile applications to the largest web and enterprise applications.
Shiro provides the application security API to perform the following aspects (I like to call these the 4 cornerstones of application security):
Authentication - proving user identity, often called user 'login'.
Authorization - access control
Cryptography - protecting or hiding data from prying eyes
Session Management - per-user time-sensitive state
Shiro also supports some auxiliary features, such as web application security, unit testing, and multithreading support, but these exist to reinforce the above four primary concerns.
"Quercus is Caucho Technology's 100% Java implementation of PHP 5 released under the Open Source GPL license. Quercus comes with many PHP modules and extensions like PDF, PDO, MySQL, and JSON. Quercus allows for tight integration of Java services with PHP scripts, so using PHP with JMS or Grails is a quick and painless endeavor.
With Quercus, PHP applications automatically take advantage of Java application server features just as connection pooling and clustered sessions.
Quercus implements PHP 5 and a growing list of PHP extensions including APC, iconv, GD, gettext, JSON, MySQL, Oracle, PDF, and Postgres. Many popular PHP application will run as well as, if not better, than the standard PHP interpreter straight out of the box. The growing list of PHP software certified running on Quercus includes DokuWiki, Drupal, Gallery2, Joomla, Mambo, Mantis, MediaWiki, Phorum, phpBB, phpMyAdmin, PHP-Nuke, Wordpress and XOOPS.
Quercus presents a new mixed Java/PHP approach to web applications and services where Java and PHP tightly integrate with each other. PHP applications can choose to use Java libraries and technologies like JMS, EJB, SOA frameworks, Hibernate, and Spring. This revolutionary capability is made possible because 1) PHP code is interpreted/compiled into Java and 2) Quercus and its libraries are written entirely in Java. This architecture allows PHP applications and Java libraries to talk directly with one another at the program level. To facilitate this new Java/PHP architecture, Quercus provides and API and interface to expose Java libraries to PHP.
The Quercus .war file can be run on Java application servers such as Glassfish, i.e. it can be run outside of Resin. This .war file includes the Quercus interpreter and the PHP libraries."
"At this point, the only source of useful overview documentation for the Common Navigator are the excellent tutorials at Michael Elder's (the author of the CN) blog. Soon I hope to get some of this transferred into the Eclipse Plugin Developer's Guide.
RCP applications can quickly and easily use the CN to show the resources in the workspace. This assumes that your RCP application uses resources (which is another discussion). The CN can also be used for non-resource RCP applications, in that case, these instructions don't apply, as the objects treated by the CN have to be created directly by the RCP application.
If you are planning to use the CN in an RCP application that uses resources, there are 3 (2 of which are completely undocumented) things you must do:"
ModeShape (formerly "JBoss DNA") is a JCR 2.0 (JSR-283) implementation that provides access to content stored in many different kinds of systems. A ModeShape repository isn't yet another silo of isolated information, but rather it's a JCR view of the information you already have in your environment: files systems, databases, other repositories, services, applications, etc.
To your applications, ModeShape looks and behaves like a regular JCR repository. Using the standard JCR API, applications can search, navigate, version, and listen for changes in the content. But under the covers, ModeShape gets its content by federating multiple back-end systems (like databases, services, other repositories, etc.), allowing those systems to continue "owning" the information while ensuring the unified repository stays up-to-date and in sync.
ModeShape repositories can be used in a variety of applications. One of the most obvious ones is in provisioning and management, where it's critical to understand and keep track of the metadata for models, database, services, components, applications, clusters, machines, and other systems used in an enterprise. Governance takes that a step farther, by also tracking the policies and expectations against which performance can be verified. In these cases, a repository is an excellent mechanism for managing this complex and highly-varied information. But a ModeShape repository doesn't have to be large and complex: it could just manage configuration information for an application, or it could just provide a JCR interface on top of a couple of non-JCR systems.
"The goal of JavaMelody is to monitor Java or Java EE applications servers in QA and production environments. It is not a tool to simulate requests from users, it is a tool to measure and calculate statistics on real operation of an application depending on the usage of the application by users.
JavaMelody is opensource (LGPL) and production ready: in production in an application of 25 person years. JavaMelody is easy to integrate in most applications and is lightweight (no profiling and no database).
JavaMelody is mainly based on statistics of requests and on evolution charts. "
"The Virgo Web Server from EclipseRT is a completely module-based Java application server that is designed to run enterprise Java applications and Spring-powered applications with a high degree of flexibility and reliability. It offers a simple yet comprehensive platform to develop, deploy, and service enterprise Java applications.
The Virgo kernel supports the core concepts of Virgo and is not biased towards the web server, thus enabling other types of server to be created. The kernel can also be used stand-alone as a rich OSGi application platform. A server runtime can easily be constructed by deploying suitable bundles on top of the kernel. "
Spring Security is a powerful and highly customizable authentication and access-control framework. It is the de-facto standard for securing Spring-based applications
Spring Security is one of the most mature and widely used Spring projects. Founded in 2003 and actively maintained by SpringSource since, today it is used to secure numerous demanding environments including government agencies, military applications and central banks. It is released under an Apache 2.0 license so you can confidently use it in your projects.
Spring Security is also easy to learn, deploy and manage. Our dedicated security namespace provides directives for most common operations, allowing complete application security in just a few lines of XML. We also offer complete tooling integration in SpringSource Tool Suite, plus our Spring Roo rapid application development framework. The Spring Community Forum and SpringSource offer a variety of free and paid support services. Spring Security is also integrated with many other Spring technologies, including Spring Web Flow, Spring Web Services, SpringSource Enterprise, SpringSource Application Management Suite and SpringSource tc Server.
""Coming from desktop application development, I have found the IT Mill Toolkit [Vaadin] to be a lot of help in the transition to web application development. With the toolkit, writing AJAX enabled web applications is as easy as writing Swing based GUI code. It hides so many frustrating details, and handles browser independence so I don't have to worry about it. Using the toolkit makes it quite easy for me to write sophisticated web applications."
Bo Thorsen, Monty Program AB"
Before you read, please look at this video, showing the core features of ECP. The EMF Client Platform is a framework to build EMF-based client applications. The goal is to provide a one-click application based on a given EMF model. Besides the EMF model no additional components have to be developed or generated. Therefore ECP provides a standard solution including the most common features needed for EMF-based client applications. This application can then be customized step by step. This can be done by extending ECP or replacing single components completly.
"Apache Shiro is a powerful and easy-to-use Java security framework that performs authentication, authorization, cryptography, and session management. With Shiro's easy-to-understand API, you can quickly and easily secure any application - from the smallest mobile applications to the largest web and enterprise applications.
We recommend you start with the 10 Minute Tutorial which gives you a feel for Shiro and its API. Then feel free to get started using Shiro in your own applications."
This page contains links to applications built on the Eclipse Rich Client Platform (RCP). The listings here are intended to get you started in finding out more about products and projects that use the Eclipse RCP. You can also view a pdf presentation of RCP based applications.
We have also prepared some case studies of organizations that are using Eclipse RCP. Hopefully it will provide you a better understanding of the benefits from using Eclipse RCP for your application platform.
We'd like these pages to be useful to you - so please email us your pointers and comments!
This page contains links to applications built on the Eclipse Rich Client Platform (RCP). The listings here are intended to get you started in finding out more about products and projects that use the Eclipse RCP. You can also view a pdf presentation of RCP based applications.
We have also prepared some case studies of organizations that are using Eclipse RCP. Hopefully it will provide you a better understanding of the benefits from using Eclipse RCP for your application platform.
We'd like these pages to be useful to you - so please email us your pointers and comments!
Eclipse Rich Client Platform has come a looong way since it was first introduced (and used in Eclipse IDE). The new Eclipse RAP (Rich Application Platform) is also becoming more and more attractive for deploying existing or new Eclipse RCP applications to the web.
One of my the projects I'm working on is developed on top of Eclipse RCP. It uses additional plugins such as EMF (Eclipse Modeling Framework) including EMF Editor UI, Teneo (EMF Persistence for Relational Databases), and Hibernate.
After some work, I managed to run the whole application on both Eclipse RCP (desktop) and Eclipse RAP (web-based). See the screenshots for proof.
Thanks to the recently released EMF Support for RAP I don't have to let go any of the nice EMF generated editor UIs for the web-based RAP version.
What's amazing is how little the work I have to do to port the RCP app to RAP.
The changes I needed to do is not changing code, but juggling dependencies to plugins and/or packages. Also creating a few platform-specific plugins (different based on whether I deploy on RCP or RAP).
WeWebU OpenWorkdesk is an application suite (not just a CMIS browser!) for Enterprise Content Management (ECM) with an intuitive Web 2.0 front-end.
OpenWorkdesk applications are future-proof and protect your investments because the user interface and the application layer have been separated from the underlying ECM system. This separation allows you to continue using your applications without laborious modifications even after an upgrade or change of the ECM platform. OpenWorkdesk Community Edition is available for all CMIS-compliant ECM systems such as Alfresco ECM, IBM FileNet P8, Nuxeo and EMC Documentum. Therefore, it provides a very cost-efficient but nevertheless fully professional way of managing and retrieving documents.
Akka is the platform for the next generation event-driven, scalable and fault-tolerant architectures on the JVM
We believe that writing correct concurrent, fault-tolerant and scalable applications is too hard. Most of the time it's because we are using the wrong tools and the wrong level of abstraction.
Akka is here to change that.
Using the Actor Model together with Software Transactional Memory we raise the abstraction level and provide a better platform to build correct concurrent and scalable applications.
For fault-tolerance we adopt the "Let it crash" / "Embrace failure" model which have been used with great success in the telecom industry to build applications that self-heal, systems that never stop.
Actors also provides the abstraction for transparent distribution and the basis for truly scalable and fault-tolerant applications.
Akka is Open Source and available under the Apache 2 License.
"Jsvc is a set of libraries and applications for making Java applications run on UNIX more easily.
Jsvc allows the application (e.g. Tomcat) to perform some privileged operations as root (e.g. bind to a port < 1024), and then switch identity to a non-privileged user.
It can run on Win32 via the Cygwin emulation layer (see Cygwin for more information), however Win32 users may prefer to use procrun instead, which allows the application to run as a Windows Service.
The sources are located in the src/native/unix subdirectory.
In the future APR may be used to provide more portable platform support. "
"Apache Tuscany simplifies the task of developing SOA solutions by providing a comprehensive infrastructure for SOA development and management that is based on Service Component Architecture (SCA) standard. With SCA as it's foundation, Tuscany offers solution developers the following advantages:
Provides a model for creating composite applications by defining the services in the fabric and their relationships with one another. The services can be implemented in any technology.
Enables service developers to create reusable services that only contain business logic. Protocols are pushed out of business logic and are handled through pluggable bindings. This lowers development cost.
Applications can easily adapt to infrastructure changes without recoding since protocols are handled via pluggable bindings and quality of services (transaction, security) are handled declaratively.
Existing applications can work with new SCA compositions. This allows for incremental growth towards a more flexible architecture, outsourcing or providing services to others.
In addition, Tuscany is integrated with various technologies and offers:
a wide range of bindings (pluggable protocols)
various component types including and not limited to Java, C++, BPEL, Spring and scripting
an end to end service and data solution which includes support for Jaxb and SDO
a lightweight runtime that works standalone or with other application servers
a modular architecture that makes it easy to integrate with different technologies and to extend
Integration with web20 technologies
Apache Tuscany SCA is implemented in Java and C++ (referred to as Native)"
"OpenXava is a tool for Rapid Java Web Development, well-suited for business and database oriented applications.
Write simple domain classes with Java or Groovy, and get an AJAX application ready for production.
Since v4.2 OpenXava also produces iPad Web applications that behaves and looks like iPad native applications."