collect, reflect on and share your achievements and development online, in a space you control
create online communities and social network through Groups, Blogs and Forums
built on open source and open principles. Interoperate out of the box with Moodle ·
The SKOS API is a Java interface and implementation for the W3C Simple Knowledge Organisation System SKOS. For more information about SKOS see here. An implementation of the SKOS API is provided which uses the OWL 2 API, at present you will need to obtain the OWL API seperately from the OWL 2 website. [UPDATE 12-09-2011] The current release of the SKOS API has been deprecated, a new version_3 developer branch is available in the SVN repository that works with the latest OWL API v3.
For more information please contact the user group at firstname.lastname@example.org
The SKOS API is open source and is available under the LGPL License
The SKOS API includes the following components:
An API for the major SKOS constructs and an efficient in-memory reference implementation based on the OWL 2 API
Abstract data model for working for SKOS that avoids commitment to any of the concrete syntaxes, such as RDF
RDF/XML parser and writer
OWL/XML parser and writer
OWL Functional Syntax parser and writer
Turtle parser and writer
Support for extending the underlying SKOS data model via the OWL 2 API
Support for integration with reasoners such as Pellet and FaCT++
Range of convenience methods for working with SKOS ·
SCPSolver should enable a Java developer to use Linear Programming in less than 10 minutes.
Most solvers for linear programs are implemented in C/C++ for performance reasons. Java developers can use JNI interfaces for some solvers. However most interfaces are pretty difficult to setup, and lock the developer in to a specific solver. SCPSolver was developed to overcome those issues. The library has the following features:
easy to deploy on Linux, Mac Os X and Windows with prebuilt linear programming libraries (almost dependency-free)
plugin-concept: write model, use different solvers to solve it
currently supported solvers:
CPLEX (solver pack must be built by script by user)
low learning curve: very simple, no-frills API
other features: implementation of sparse matrices and graphs, debugger for linear programs, prebuilt models for common optimization problems like set cover, ... ·
Cascading is a Data Processing API, Process Planner, and Process Scheduler used for defining and executing complex, scale-free, and fault tolerant data processing workflows on an Apache Hadoop cluster. All without having to 'think' in MapReduce.
Cascading is a thin Java library and API that sits on top of Hadoop's MapReduce layer and is executed from the command line like any other Hadoop application.
As a library and API that can be driven from any JVM based language (Jython, JRuby, Groovy, Clojure, etc.), developers can create applications and frameworks that are "operationalized". That is, a single deployable Jar can be used to encapsulate a series of complex and dynamic processes all driven from the command line or a shell. Instead of using external schedulers to glue many individual applications together with XML against each individual command line interface.
The Cascading API approach dramatically simplifies development, regression and integration testing, and deployment of business critical applications on both Amazon Web Services (like Elastic MapReduce) or on dedicated hardware.
Cascading is not a new text based query syntax (like Pig) or another complex system that must be installed on a cluster and maintained (like Hive). But Cascading is both complimentary and a valid alternative to either application. ·
Normally smartphone events are tightly coupled to your phone device itself. When your cell phone is ringing, your phone speaker plays a ringtone. When you get a new text message, your phone displays it on its screen. Wouldn't it be thrilling to make thoses phone events visible somewhere else, on your wearable, in your living room, on your robot, in your office or where ever you want it to occur? Or would you like to use your smartphone sensors, like the accelerometer, light sensor, compass or your touchscreen to control other devices? 'android meets arduino' is a toolkit, basically consisting of an Android application and an Arduino library which will help you to interface with your phone in a new dimension. You can build your own interfaces almost without any programming experience. ·
Apache Shiro is a powerful and easy-to-use 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. ·
scalaxb-appengine is a RESTful API to run scalaxb over the web. It's implemented using n8han/Unfiltered and the full source is available on eed3si9n/scalaxb-appengine.
scalaxb-appengine came into being because I didn't know how to deploy a command line application written in Scala. Greg kindly suggested that I turn scalaxb into a web service, so I did. I guess I always thought about the possibility of making it into a web app, but this gave me a perfect opportunity to seize the moment and write a web app in Scala. ·
Scala Pages (SCP) is a lightweight web framework developed in the Scala language. It is intended for developing Scala web applications; it is released under the Apache 2 license. SCP provides an API that is familiar to Java programmers. It is built on and closely aligned to the Servlet API. It can be learned quickly by anyone familiar with Java web development. The SCP Scala web framework is build around a text-oriented template engine. Dynamic web pages are either generated from templates or from Scala code. Templates can be HTML-templates, XML-templates or any other text format, such as CSV, JSON, etc. Because SCP neither uses DOM nor SAX parsing, memory and CPU requirements are moderate. SCP makes use of XML processing instructions instead of custom tags. ·
This application writes messages received by a TCP/IP socket connection to the local file system. It can be operated either as multi client capable socket server or as a socket client and is multithreaded. Both, Linux/Unix and Windows, are supported. ·
The Globus® Toolkit is an open source software toolkit used for building grids. It is being developed by the Globus Alliance and many others all over the world. A growing number of projects and companies are using the Globus Toolkit to unlock the potential of grids for their cause. ·
Hazelcast is an open source clustering and highly scalable data distribution platform for Java, which is:
* Lightening-fast; thousands of operations/sec.
* Fail-safe; no losing data after crashes.
* Dynamically scales as new servers added.
* Super-easy to use; include a single jar.
Hazelcast is pure Java. JVMs that are running Hazelcast will dynamically cluster. Although by default Hazelcast will use multicast for discovery, it can also be configured to only use TCP/IP for environments where multicast is not available or preferred. ·
PrimeFaces is an open source component suite for Java Server Faces featuring 90+ rich set of JSF components. Additional TouchFaces module features a UI kit for developing mobile web applications.
* 90+ rich set of components (HtmlEditor, Dialog, AutoComplete, Charts and many more).
* Built-in Ajax with Lightweight Partial Page Rendering.
* Native Ajax Push/Comet support.
* Mobile UI kit to create mobile web applications for handheld devices with webkit based browsers.(IPhone, Palm, Android Phones, Nokia S60 and more)
* Compatible and Lightweight.
* Skinning Framework with 25+ pre-designed themes.
* Extensive documentation. ·
Fræser is a framework for estimating the parameters of static and dynamic errors-in-variables systems with the opportunity to compare various errors-in-variables parameter estimation algorithms via simulations. It features a graphical user interface and several examples for simultaneously estimating model and noise parameters.
The framework incorporates the following linear and nonlinear estimation methods for static and dynamic systems:
* model parameter estimation for static systems
o Koopmans method
* linear model and noise parameter estimation for dynamic systems
o (extended) instrumental variables method (XIV)
o bias-compensating least-squares method (BCLS)
o Frisch scheme (FS)
o generalized Koopmans-Levin method (GKL)
* nonlinear model parameter estimation for static systems
o nonlinear Koopmans method (NK)
o approximated maximum likelihood method (AML)
* nonlinear model and noise parameter estimation for dynamic systems
o bias-compensated least squares method (BCLS)
o nonlinear Koopmans-Levin method (NKL)
o nonlinear extennonlinear extension to generalized Koopmans-Levin method (NGKL) ·
Jspresso is an innovative framework for building rich internet applications. Jspresso dramatically reduces the development cycles needed to get your corporate application up and running while not sacrificing quality, robustness and performance. Jspresso is not just another webapp framework. Jspresso based applications offer the exact same ergonomics as desktop applications while keeping an N-tier, server-centric architecture on a java backend. Jspresso-based applications can be deployed either in Adobe's Flex, qooxdoo, WingS, ULC and Swing, all on the same codebase and without a single specific line of GUI code. And last but not least, Jspresso is free. ·
If you are a newcomer to the SATisfiability problem, you might want to take a look at wikipedia's page on the boolean satisfiability problem first. You might also find those surveys of interest. For a deeper insight of the current interest on SAT solvers for software and hardware verification, Armin Biere's course on formal systems is a good start. Eugene Goldberg has also a nice and somehow non standard way of introducing modern SAT solvers in his three part course on SAT. ·
Apache Shiro is a powerful and flexible open-source security framework that cleanly handles authentication, authorization, enterprise session management and cryptography.
Our mission: To provide the most robust and comprehensive application security framework available while also being very easy to understand and extremely simple to use. ·
Die Roblet®-Technik ist eine in Java™ implementierte Softwareschicht zwischen Anwendung und Übertragungsnetzwerk. Ziel ist, von jeglichen Hardware- und Netzwerkaspekten verteilter Systeme zu abstrahieren, um die Komplexität bei der Entwicklung verteilter Anwendungen signifikant zu reduzieren. Um dieses Ziel erreichen zu können, bietet die Roblet®-Technik Verteilungsfreiheit bei der Zuordnung von Funktionalität, Technikvereinheitlichung für die verteilte Anwendung und Netzwerktransparenz inklusive Datensicherheit. ·
FUBAR uses the statistical technique "Kriging" to rescale images with an global geometric pattern, called the variogram.
The image can be infinitely rescaled: the estimates ('o' on the left figure) are calculated from five neighbouring samples of the source image ('+' on the left figure). The image is 'noisy' because each pixel is a realization of the estimated value. In other words, each pixel is a random value with a mean and a variance from the local distribution. By changing the variogram (press 'v') or the variance multiplier, it is possible to control that variance.
Clicking the left mouse button zooms in on the image and right-click zooms the image back out. Press SPACEBAR to accept the current realization as the 'source image' -this will reduce noise at small scales. ·
Katta is a scalable, failure tolerant, distributed, data storage for real time access.
Katta serves large, replicated, indices as shards to serve high loads and very large data sets. These indices can be of different type. Currently implementations are available for Lucene and Hadoop mapfiles.
* Makes serving large or high load indices easy
* Serves very large Lucene or Hadoop Mapfile indices as index shards on many servers
* Replicate shards on different servers for performance and fault-tolerance
* Supports pluggable network topologies
* Master fail-over
* Fast, lightweight, easy to integrate
* Plays well with Hadoop clusters
* Apache Version 2 License ·
* Who We Are
What is Apache Pivot?
Apache Pivot is an open-source platform for building rich internet applications in Java. It combines the enhanced productivity and usability features of a modern RIA toolkit with the robustness of the Java platform. Pivot applications are written using a combination of Java and XML and can be run either as an applet or as a standalone, optionally offline, desktop application.
Like other modern development platforms, Pivot provides a comprehensive set of foundation classes that together comprise a "framework". These classes form the building blocks upon which more complex and sophisticated applications can be built. ·
Griffon is a Grails like application framework for developing desktop applications in Groovy. Inspired by Grails, Griffon follows the Convention over Configuration paradigm, paired with an intuitive MVC architecture and a command line interface. Griffon also follows the spirit of the Swing Application Framework (JSR 296), it defines a simple yet powerful application life cycle and event publishing mechanism. Another interesting feature comes from the Groovy language itself: automatic property support and property binding (inspired by BeansBinding (JSR 295)), which makes creating observable beans and binding to their properties a snap! As if property binding was not enough Groovy's SwingBuilder also simplifies building multi-threaded applications, say goodbye to the ugly gray rectangle (the bane of Swing apps)!
Grails developers should feel right at home when trying out Griffon. Many of Grails' conventions and commands are shared with Griffon. Granted, Swing is not the same as HTML/GSP but Builders simplify the task of creating the UI.
Seasoned Java developers will also be able to pick up the pace quickly, as the framework relieves you of the burden of maintaining an application structure, allowing you to concentrate on getting the code right. ·
Apache Wink is a simple yet solid framework for building RESTful Web services. It is comprised of a Server module and a Client module for developing and consuming RESTful Web services.
The Wink Server module is a complete implementation of the JAX-RS v1.0 specification. On top of this implementation, the Wink Server module provides a set of additional features that were designed to facilitate the development of RESTful Web services.
The Wink Client module is a Java based framework that provides functionality for communicating with RESTful Web services. The framework is built on top of the JDK HttpURLConnection and adds essential features that facilitate the development of such client applications. ·
Jodd is generic purpose open-source Java utility library. It enriches JDK with many powerful and feature rich utilities. Jodd helps with everyday task, makes code more robust and reliable. Special attention is put into creating reusable and fastest possible code and still keeping it compact, under 500 KB.
Jodd Wot is bundle of lightweight application frameworks - under 300 KB! Designed following the CoC, DRY and SCS principles, it makes development simple, but not simpler; you get 90% of the features with 10% of usual effort.
Jodd is free software, released under the terms of the BSD license.
Fastest bean manipulation library around, together with introspection and type conversion tools and some unqiue features.
Elegant web MVC framework that uses CoC and annotations in a pragmatic way to simplify web application development.
Slick and lightweight dependency injection container that uses annotations and supports sufficient most of features offered by other containers.
The fastest proxy creator with unique approach for defying pointcuts and advices.
Db & DbOrm
Efficient and thin layers that significantly simplifies writing of database code.
Elegant usage and astronomical precision in one time-manipulation class. ·
Welcome to JaValid
JaValid is an open source framework for validating your Java business objects. JaValid is licensed under the Eclipse Public License 1.0. JaValid 1.2 is the latest release.
JaValid is an annotation-based validation framework, which allows you to annotate your Java objects to introduce validation. JaValid can be used in any type of Java application (standalone application, web application etc). The framework currently provides full integration with the Spring Framework, Java Server Faces, Facelets, and any database. The framework can be extended easily, by means of extensions, and also allows you to add your own validation constraints in addition to the ones shipping with the framework.
The framework is documented well (both the source and the general documentation), so check it out. To learn more, have a look on the documentation page.
The source and distributions are hosted on sourceforge, go to the downloads directly here. You may also want to check out the weblog, which contains some useful information, including several examples.
Have fun using JaValid! ·
Stitches is a Grails 1.1 plugin that implements a content repository with many value added features.
* Define content and attributes
* Store and version content
* Search and filter by keyword, folder, tag.
* Geocode your content and perform "nearby longitude/latitude searches"
* Synchronize your content to amazon s3.
* Automatic Image scaling upon request.
* Text is automatically extracted for keyword search from different document formats (e.g. PDF, Word, Excel, etc) ·
We provide a AJAX JSF solution, that combines ease of use, stability and performance. Our AJAX solution supports lots of environments: It works inside JSF datatables, together with JSF 1.1 as well as 1.2, with Facelets and even with JSR168 Portlets! We provide true PPR (partial page rendering) and PPS (partial page submit) which means that the rendering process is only executed for the components that are being rerendered and only the fields needed for the request are submitted and processed. ·
Ripplet is a powerful,high available,flexible,collaborative load/stress test tool. It aims at providing an environment where users are able to do the tasks as follows :
* illustrate test design and outline load description clearly
* control realistic performance load efficiently, both on logic and data flow
* diagnose performance spikes and bottlenecks easily
* evaluate system capacity quickly and correctly
* share achievements for developers or customers, not only reports but test plan for product enviroment stage evaluation
Use it, extend it, just making your load test fruitful, your production stable. Hopefully, it's pretty much everything you seek in load test and it's beyond your expectation. ·
Here comes what a lot of people were waiting for: "Spring Roo provides interactive, lightweight, user customizable tooling that enables rapid delivery of high performance enterprise Java applications. Click here to access the latest Spring Roo resources, including downloads, forum, Subversion, Jira, Fisheye, Twitter feeds, documentation etc." ·
Neuroph is lightweight Java neural network framework to develop common neural network architectures. It contains well designed, open source Java library with small number of basic classes which correspond to basic NN concepts. Also has nice GUI neural network editor to quickly create Java neural network components. It has been released as open source under the LGPL license, and it's FREE for you to use it. ·
The WaveMaker platform consists of two components: WaveMaker Visual Ajax Studio™ for developing rich internet applications and WaveMaker Rapid Deployment Server™ for deploying applications into a standard and secure Java environment. ·
Writing efficient user interfaces is the main maxim, here at Vimperator labs. We often follow the Vim way of doing things, but extend its principles when necessary.
Towards this end, we've created the liberator library for Mozilla based applications, to encapsulate as many of these generic principles as possible, and liberate developers from the tedium of reinventing the wheel. ·
ProtoJ is a pure java build, installation and deployment library that hands control over to you. There's no third-party ProtoJ application directory to maintain, no environment variables to set up and absolutely no other required software. Simply add the ProtoJ library to your project and get ready to experience the joy of a friction-free development cycle. So why not give ProtoJ a try right now, it really is as easy as 1-2-3:
1. Download the ProtoJ executable jar file.
2. Create a new "basic" project by executing java -jar protoj-exe-jdk5-1.9.2.jar -sample basic.
3. Try a few commands from the basic/bin directory: ./basic.sh compile archive hello-basic.
When you're feeling more adventurous take a look at the jboss demonstration that demonstrates how ProtoJ can be used to build, store persistent configurations and launch a jboss project with considerable ease. You may be amazed at how easy this is to accomplish: not because ProtoJ is rocket science, but because it is based on java rather than xml.
Features to Enhance Any Project
ProtoJ abandons build scripts. It's "unique selling point" is that all use-cases are accessible in-code through the api, with just one call to Java in just one starter script! If you ever wished you could get rid of your build scripts then look no further: ProtoJ is targeted at you!!!
ProtoJ is part of your project. You don't have to hide away use-cases related to the build inside some xml file, to be handled by some other tool merely at the start of your project life-cycle. Compilation and jar creation for example belong to your project just as much as your core business use-cases and are accessible at build-time through to run-time.
ProtoJ plays nicely with maven. ProtoJ uses a traditional lib directory and support for filling it up from a maven repository is provided right out of the box. And going in the other direction, you can easily deploy your project artifacts to a maven repository so that they can be shared with other ivy or maven projects. Or indeed with other ProtoJ projects!
ProtoJ plays nicely with aspectj. Aspectj compiler support can be enabled with just a single method call, as can support for load-time-weaving. Then just drop your .aj files alongside your .java files and they will be picked up by the ajc compiler without any additional aspectj installation.
ProtoJ is available on all major platforms. Each release of ProtoJ is subjected to rigorous testing on Linux (Ubuntu), Unix (Mac OS X) and Windows (XP) and also on Java 5 and Java 6. If you work with any other platform then you can easily check for compatibility by following the instructions in the BuildingFromSource page. ·
easyb is a behavior driven development framework for the Java platform. By using a specification based Domain Specific Language, easyb aims to enable executable, yet readable documentation.
Behavior driven development?
Behavior driven development (or BDD) isn't anything new or revolutionary-- it's just an evolutionary offshoot of test driven development, in which the word test is replaced by the word should. Semantics aside, a lot of people have found that the concept of should is a much more natural development driver than the concept of testing. In fact, when you think in terms of behavior (i.e. shoulds) you'll find that writing specifications is easier to do first, which is the intent of test driven development in the first place. ·
Raphaël currently supports Firefox 3.0+, Safari 3.0+, Opera 9.5+ and Internet Explorer 6.0+.
Processing.js runs in FireFox, Safari, Opera, Chrome and will also work with Internet Explorer, using Explorer Canvas.
The Processing language was created by Ben Fry and Casey Reas. It evolved from ideas explored in the Aesthetics and Computation Group at the MIT Media Lab and was originally intended to be used in a Java run-time environment.
Java PureFaces is a layer on top of JSF that simplifies implementation. The article here is the aggregate of the blog posts that I have written on our blog. The framework is not yet made public, and we are looking to see if there is interest in us releasing it as an open-source project. We are not a JSF framework company; we develop web applications. This framework is a result of our experience with the tools with which we were already working. ·
Simple, effective, bookmark, JSF
PrettyFaces is an OpenSource JSF extension which enables creation of bookmark-able, pretty URLs made easy. Our goal was to solve this problem as simply as possible, while still enabling a useful set of functions such as: page-load actions, integration with faces navigation, dynamic view-id assignment, and managed parameter parsing. All of this without introducing unnecessary coupling. ·
Our goal is development of software that allows significant reducing costs for implementation and maintenance of various kinds of applications. In the open source domain, there are a lot of technologies that overlap or are entirely interchangeable. We see our purpose in designing solutions that make it easier for programmers to develop software by means of integrating well known technologies rather than creating clones of those technologies.
For integration, we choose open source technologies that provide rich functionality, are simple to use and widely accepted by developers all over the world. Due to our independence, we can offer the most effective and unprejudiced solutions.
Integration solutions for developers are the main focus of our professional activities. At the same time, in the context of designing general integration solutions, we can help you develop your individual projects using our software. This approach may be beneficial both for you and us. You'll get a high quality product developed in a short period of time due to our well designed and tested software. We'll benefit from discovering new requirements to our software and finding new ways to further evolve and improve it by implementing your requirements.
We are ready to apply our solutions for the development of Your database applications based on Eclipse RCP and Netbeans platforms as well as various web applications. Please contact us using email or phone. We will be glad to co-operate with you. ·
Jazzmaster is an application framework developed by Eiichiro Uchiumi (Eiichiro.org) and can be performed on JDK 5 or later Java platform. Using Jazzmaster framework, you can construct the application from the small one which is processed on a command line to the large one like enterprise application on the paradigm of SOA (Service-Oriented Architecture). The application which is built by composing the immediately-modularized services on the Jazzmaster framework certainly improves the flexibility of changeability and the development agility, according to becoming if the scale grows.
Jazzmaster is composed of the following modules:
* AspectJ integration ·
Scalaris is a scalable, transactional, distributed key-value store. It can be used for building scalable Web 2.0 services.
Scalaris uses a structured overlay with a non-blocking Paxos commit protocol for transaction processing with strong consistency over replicas. Scalaris is implemented in Erlang. ·
A framework to support dynamic adaptation behavior in Java EE enterprise systems and to develop self-managing applications. StarMX utilizes JMX features and can be integrated with different policy/rule engines to enable self-management capabilities. ·
Hama (means a hippopotamus in Korean) is a parallel matrix computation package currently in incubation with Apache. It is a library of matrix operations for large-scale processing and development environments as well as a Map/Reduce framework for a large-scale numerical analysis and data mining, that need the intensive computation power of matrix inversion, e.g., linear regression, PCA, SVM and etc. It will be useful for many scientific applications, e.g., physics computations, linear algebra, computational fluid dynamics, statistics, graphic rendering and many more. ·
Enterprise Messaging systems let programs communicate by exchanging messages, much as people communicate by exchanging email. Unlike email, enterprise messaging systems provide guaranteed delivery, speed, security, and freedom from spam. Until recently, there was no open standard for Enterprise Messaging systems, so programmers either wrote their own, or used expensive proprietary systems.
AMQP Advanced Message Queuing Protocol is the first open standard for Enterprise Messaging. It is designed to support messaging for just about any distributed or business application. Routing can be configured flexibly, easily supporting common messaging paradigms like point-to-point, fanout, publish-subscribe, and request-response.
Apache Qpid implements the latest AMQP specification, providing transaction management, queuing, distribution, security, management, clustering, federation and heterogeneous multi-platform support and a lot more. And Apache Qpid is extremely fast. Apache Qpid aims to be 100% AMQP Compliant. ·
View providers driven applications(vpda) is java based application framework for building applications composed from server components - view providers. View providers are server components which define user interface and user control. Client platform is just presentation engine, there is never any concrete application logic there. VPDA is 4 tier apllication framework with all needed infrastructure. This means communication between client and server, server management, deployment. ·
Mahara is an open source e-portfolio system with a flexible display framework. Mahara, meaning 'think' or 'thought' in Te Reo Māori, is user centred environment with a permissions framework that enables different views of an e-portfolio to be easily managed. Mahara also features a weblog, resume builder and social networking system, connecting users and creating online learner communities. ·
easyb is a behavior driven development framework for the Java platform. By using a specification based Domain Specific Language, easyb aims to enable executable, yet readable documentation. ·
ChucK is a new (and developing) audio programming language for real-time synthesis, composition, performance, and now, analysis - fully supported on MacOS X, Windows, and Linux. ChucK presents a new time-based, concurrent programming model that's highly precise and expressive (we call this strongly-timed), as well as dynamic control rates, and the ability to add and modify code on-the-fly. In addition, ChucK supports MIDI, OSC, HID device, and multi-channel audio. It's fun and easy to learn, and offers composers, researchers, and performers a powerful programming tool for building and experimenting with complex audio synthesis/analysis programs, and real-time interactive control. ·
reacTIVision is an open source, cross-platform computer vision framework for the fast and robust tracking of fiducial markers attached onto physical objects, as well as for multi-touch finger tracking. It was mainly designed as a toolkit for the rapid development of table-based tangible user interfaces (TUI) and multi-touch interactive surfaces. This framework has been developed by Martin Kaltenbrunner and Ross Bencina at the Music Technology Group at the Universitat Pompeu Fabra in Barcelona, Spain as part of the the reacTable project, a novel electronic music instrument with a table-top multi-touch tangible user interface. ·
memcached is a high-performance, distributed memory object caching system, generic in nature, but intended for use in speeding up dynamic web applications by alleviating database load. ·
A library for using Memcached as a second level distributed cache in Hibernate.
* Based on the excellent spymemcached client
* Includes support for the Whalin (danga) memcached client
* Supports entity and query caching.
* See the Configuration page
* See how easy it is to configure in Grails ·
The Grinder is a JavaTM load testing framework that makes it easy to run a distributed test using many load injector machines. It is freely available under a BSD-style open-source license.
The latest news, downloads, and mailing list archives can be found on SourceForge.net.
* Generic Approach Load test anything that has a Java API. This includes common cases such as HTTP web servers, SOAP and REST web services, and application servers (CORBA, RMI, JMS, EJBs), as well as custom protocols.
* Flexible Scripting Tests are written in the powerful Jython scripting language.
* Distributed Framework A graphical console allows multiple load injectors to be monitored and controlled, and provides centralised script editing and distribution.
* Mature HTTP Support Automatic management of client connections and cookies. SSL. Proxy aware. Connection throttling. Sophisticated record and replay of the interaction between a browser and a web site.
See the longer features list for further details. ·
The Java ClassBuilder is a simple framework for bytecode transformation of existing Java classes, in order to make them easily usable for data binding (and other uses) when developing Java desktop applications.
Although the ClassBuilder is a (very lightweight) framework, it's focus is on a set of ready out-of-the-box solutions that aim to bring easy to use data binding to the Java platform. Under the hood it uses the amazing Javassist bytecode transformation library to change the structure of Java classes at runtime.
Let's repeat: the focus of the ClassBuilder is not on providing a framework (there's enough of those already), but providing ready-to-use solutions that utilize it under the hood. ·
Hibernate Spatial is a generic extension to Hibernate for handling geographic data. Hibernate Spatial is open source and licensed, like Hibernate, under the LGPL license.
Hibernate Spatial allows you to deal with geographic data in a standardized way. It abstracts away from the specific way your database supports geographic data, and provides a standardized, cross-database interface to geographic data storage and query functions.
Hibernate Spatial supports most of the functions of the OGC Simple Feature Specification. Supported databases are: Oracle 10g/11g, Postgresql/Postgis, and MySQL. ·
A meta-programming approach to general data modeling.
Meta-JB is a MetaClass/MetaObject layer providing generic access to model implementations, decoupling application logic from underlying implementation details, and allowing user interfaces (Swing, HTML, etc.) to be dynamically generated at runtime. By wrapping model implementations in MetaObject adapters, applications can interact with the model layer in a homogenous way.
Meta-JB extends the Java Beans-based meta-programming concept to provide more generic access to object attributes and descriptions for any model object with an appropriate adapter. The descriptions of a class's properties (the MetaClass) and access to an object's attributes are decoupled from actual implementations by adapters implementing a Map-like name/value interface (the MetaObject). Because the thin framework is built on generic interfaces, it is not tied directly to real Java bean implementations and can also be used for anything that can access values by name. (Some examples are SQL result sets, HTTP request data, or simple hash maps.) Once a "class" has been described, the information can even be applied to different underlying implementations.
The MetaClass/MetaObject layer is a foundation for dynamically generating user-level access to application object models. Toolkits are provided for generating Swing GUIs at runtime or dynamically rendering objects as XML using the class descriptions. On the drawing board is support for generating HTML forms and views as well. Future development may also extend to a collaborative data access layer. ·
Runa WFE is an environment for JBoss jBPM workflow engine. It is a cross-platform end user solution for business process development and execution. Together Runa WFE and JBoss jBPM provide an easy to use business process management system.
Runa WFE is an open source project.
What is this project
Runa WFE provides:
* an end user GUI to define business processes without any coding: draw flowcharts, define roles and variables, lay out forms
* an end user GUI to load and execute processes
* an administrative interface to create and remove users/groups and grant rights
* a possibility of writing automatic "bots" that can participate in business processes
* a possibility to code new GUI elements, variable types, organizational structure functions etc. that extend existing Runa WFE components and will be available to end users through the GUI
Runa WFE makes it possible to integrate your diverse enterprise applications in a unified system, by using "bots" that run inside "bot stations". ·
Foxtrot is an easy and powerful API to use threads with the JavaTM Foundation Classes (JFC/Swing).
The Foxtrot API are based on a new concept, the Synchronous Model, that allow you to easily integrate in your Swing code time-consuming operations without incurring in "GUI-freeze" problem, typical of Swing applications.
While other solutions have been developed to solve this problem, being the SwingWorker (see also here for an update) the most known, they are all based on the Asynchronous Model which, for non-trivial Swing applications, carries several problems such as code asymmetry, bad code readability and difficult exception handling.
The Foxtrot API cleanly solves the problems that solutions based on the Asynchronous Model have, and it's simpler to use.
Your Swing code will immediately benefit of:
* code symmetry and readability
* easy exception handling
* improved mantainability ·
Obba provides a bridge from spreadsheets to Java classes. With Obba, you can easily build spreadsheet GUIs (Excel or OpenOffice) to Java code. Its main features are:
* Loading of arbitrary jar or class files at runtime through an spreadsheet function.
* Instantiation of Java objects, storing the object reference under a given object label.
* Invocation of methods on objects referenced by their object handle, storing the handle to the result under a given object label.
* Asynchronous method invocation and tools for synchronization, turning your spreadsheet into a multi-threaded calculation tool.
* Allows arbitrary number of arguments for constructors or methods (avoids the limitation of the number of arguments for Excel worksheet functions).
* Serialization and de-serialization (save Serializable objects to a file, restore them any time later).
* All this though spreadsheet functions, without any additional line of code (no VBA needed, no additional Java code needed).
For a more detailed introduction see the Obba documentation
Obba is small.
Obba for Excel consists of three files (these files will be installed by an an installer Install Obba for Excel.exe):
* Obba.xla: An Excel Add-in providing workbook functions like obMake(), obCall(), obGet().
* Obba.dll: The bridge from Excel to Java.
* Obba.jar: The Java object handler and the Obba control panel.
Obba for OpenOffice consists of one file:
* Obba.oxt: The Obba Add-in including the OpenOffice adapter and Obba.jar (the Java object handler and the Obba control panel). ·
This open source software project connects the world of java with TWAIN.TWAIN is an application programming interface standard used to access scanners & digital cameras ... .
This package was developed to scan an image in order to turn it into an *.sff file and then fax it.
How does it work ? What happens ?
1. On loading: jtwain.java loads it's C++ counter part, the library jtwain.dll.
2. jtwain.dll will load "TWAIN_32.DLL" and get a function pointer to the DSM (Data Source Manager) entry point (twain state 2).
3. If loading was successful jtwain.java creates a new thread that calls nstart in jtwain.cpp.
4. Due to the fact that twain is signalling events through the OS-dependent event queues, we need to set up an application window including it's wndProc callback function.
5. After that ninitLib will open the DSM (twain state 3). Now the DSM is ready to handle device specific requests.
6. The native thread is then entering the event loop and calling jtwain.cbhandleGetMessage whenever it receives an event.
7. The twain entry function must be called from within the native thread. In order to do that a command can be initiated from arbitrary java threads by calling ntrigger. This will cause the native thread to call jtwain.cbexecute.
Two commands can be triggered:
1. Select: The DSM will pop up a select dialog and the user can select a data source.
2. Acquire: The data source will pop up a user dialog that allows the user to set various settings and then either scan or cancel the request. Once an image has been acquired by the twain data source as a DIB (Device Independent Bitmap) a BufferedImage object will be created and the DIB data copied to this BufferedImage. The jtwain object informs the ScannerListeners of the new image. ·
Jersey is the open source (under dual CDDL+GPL license), production quality, JAX-RS (JSR 311) Reference Implementation for building RESTful Web services. But, it is also more than the Reference Implementation. Jersey provides an API so that developers may extend Jersey to suite their needs. The governance policy is the same as the GlassFish project. ·
Pivot is an open-source framework for building high-quality, cross-platform applications that are deployable both via the web and to the desktop. It began as an R&D effort at VMware but has now been made available to the community as an option for developers who want to build rich internet (RIA) applications in Java.
Sample Pivot application
pdfUnit is a framework for testing a generated pdf document with the JUnit test framework so JPdfUnit is a high level api. The framework is designed for an easy access to the PDFBox library. This functionality provides the user a lot of possibilities in pdf document handling. For instance you can test the meta data of the pdf document like the author or the creation date or search for content via Strings, fragments of words or even regular expressions. Different simple ready-to-use assertions allow the user to compare the expected data to the concrete data of the pdf document. JPdfUnit is developed to test one pdf document. You have got three different kinds of using the framework i.e. you can inherit our DocumentTestCase shown in the example or you can work with our DocumentTester class to avoid inheritance from our framework. ·
sux0r 2.0 is an extendable content management system (CMS) built around the principles of Naive Bayesian probabilistic content.
Naive Bayesian Categorization is the ouija board of mathematics. Known for being good at filtering junk mail, the Naive Bayesian algorithm can categorize anything so long as there are coherent reference texts to work from. For example, categorizing documents in relation to a vector of political manifestos, or religious holy books, make for a neat trick. More subjective magic 8-ball categories could be "good vs. bad" or company press releases in relation to stock market prices.
In addition to being a blog, RSS aggregator, bookmark repository, and photo publishing platform, sux0r 2.0 allows users to maintain multiple lists of Naive Bayesian categories. These category lists, called vectors, can be shared with other users. This allows a group of trusted friends to share, train, and use sux0r together. ·
ProcessMaker is commercial open source workflow management software designed for small to medium-sized businesses and organizations. ProcessMaker allows a business user with zero programming experience to model, automate, and manage a company's unique business processes.
ProcessMaker is a complete workflow management suite with tools to design forms, create documents, assign roles and users, create routing rules, interconnect with third party systems, and map a process quickly and easily. You can manage workflow from your favorite web browser without having to download any client software at all.
We believe in no vendor lock-in and source code visibility. Thanks to open source code, ProcessMaker integrates seamlessly with your organization's existing systems. ProcessMaker's light yet powerful workflow engine is simple to use and easy to extend. ·
Sphinx is a full-text search engine, distributed under GPL version 2. Commercial license is also available for embedded use.
Generally, it's a standalone search engine, meant to provide fast, size-efficient and relevant fulltext search functions to other applications. Sphinx was specially designed to integrate well with SQL databases and scripting languages. Currently built-in data sources support fetching data either via direct connection to MySQL or PostgreSQL, or using XML pipe mechanism (a pipe to indexer in special XML-based format which Sphinx recognizes).
As for the name, Sphinx is an acronym which is officially decoded as SQL Phrase Index. Yes, I know about CMU's Sphinx project. ·
Platypus is a full-featured and easy-to-use page layout and typesetting system.
Inspired by technologies such as TeX, Platypus adds new features and, especially, ease of use to the generation of documents of all kinds. It is particularly adept at listing code, and so is frequently used for documentation. Input consists of text files with embedded formatting commands. These files are converted by Platypus to PDF, HTML, or Microsoft Rich Text Format (RTF).
Platypus is written in Java and relies on the iText library. It is available at no charge under the Apache open-source license. For more information, see the links to the left. ·
If you're developing a workflow designer, displaying a database, showing the state of your telecommunications network or writing a UML tool, why write your application from scratch when there is JGraphpad Pro? ·
OmegaT is a free translation memory application written in Java. It is a tool intended for professional translators. It does not translate for you! (Software that does this is called "machine translation", and you will have to look elsewhere for it.) OmegaT has the following features:
* Fuzzy matching
* Match propagation
* Simultaneous processing of multiple-file projects
* Simultaneous use of multiple translation memories
* External glossaries
* Document file formats include:
XHTML and HTML
Microsoft Office 2007 XML
* Unicode (UTF-8) support: can be used with non-Latin alphabets
* Support for right-to-left languages
* Compatible with other translation memory applications (TMX) ·
Anvil is an Open Source Framework for creating Enterprise Portals with Flex as the Client and Java as the back end. It is being developed by Ryan Knight and Holly Edelson of Williams, James Ward of Adobe, Jon Rose of Gorilla Logic and many other great developers at Williams.
We wanted Anvil to be simple to deploy in any Java environment so it uses Plain Java Objects (POJO’s), Spring and BlazeDS. This allows it to be run in any application server or servlet container.
Here are some of the great features Anvil provides:
1. Single window or multi-window interface (similar to a Portal).
2. A pluggable security module which allows an enterprise to easily integrate their existing security systems into a Flex application.
3. The ability to load modules from different locations in the network for load balancing or fail-over.
4. Authorization and access control at different levels of granularity. This allows individual modules and remote services to be secured differently.
5. Common build scripts and templates to automate the building of Flex and Java.
6. A utility to auto-generating Flex code from Java.
7. A utility to auto-generate the project files for Flex Builder.
8. The ability to expose any Java class as a remote service to Flex
And many other great features! We will be writing about Anvil here and would appreciate any feedback or requests! ·
JPPF is an open source Grid Computing platform written in Java that makes it easy to run applications in parallel, and speed up their execution by orders of magnitude. Write once, deploy once, execute everywhere! ·
Abbot helps you test your Java UI. It comprises Abbot, which lets you programmatically drive UI components, and Costello (built on Abbot) which allows you to easily launch, explore and control an application. The framework may be used with both scripts and compiled code. ·
Appistry Enterprise Application Fabric (EAF) is a grid-based application platform that dramatically simplifies the development and deployment of highly scalable applications in Java, Spring, .NET or C++.
Unlike traditional application servers, Appistry EAF is built from the ground up for scalability. And unlike traditional grid computing, it's extremely easy to fabric-enable your applications.
With Appistry EAF, customers are able to quickly and inexpensively bring new capabilities to market, with the agility, reliability and scale demanded by their businesses. ·
UMLGraph allows the declarative specification and drawing of UML class and sequence diagrams. The current features are part of an ongoing effort aiming to provide support for all types UML diagrams. An IEEE Software article titled On the declarative specification of models explains the rationale behind this approach. The tehnology behind UMLGraph was used to draw many of the diagrams appearing in the books Code Quality: The Open Source Perspective (Addison Wesley, 2006) and Code Reading: The Open Source Perspective (Addison Wesley, 2003). In addition, the UMLGraphDoc doclet included in this distribution automatically adds UML diagrams to javadoc documentation. ·
Mock is a widely used technology in unit test domain. It shields exteral and unnecessary factors and helps developers focus on the specific function to be tested.
EasyMock is a well known mock tool which can create mock object for given interface at runtime. The mock object's behavior can be fine defined prior the test code in the test case. EasyMock is based on java.lang.reflect.Proxy, which can create dynamic proxy class/object according to the given interfaces. It has the inherent limitation from the Proxy. It can create mock object for given interface only.
Mocquer is a similar mock tool as EasyMock. With the help of Dunamis Project, it extends the function of EasyMock to support mock object creation for both class and interface. ·
JMock is a library that supports test-driven development1 of Java2 code with mock objects3.
Mock objects help you design and test the interactions between the objects in your programs.
The jMock library:
* makes it quick and easy to define mock objects, so you don't break the rhythm of programming.
* lets you precisely specify the interactions between your objects, reducing the brittleness of your tests.
* works well with the autocompletion and refactoring features of your IDE
* plugs into your favourite test framework
* is easy to extend. ·
Sanaware Java Docking is a library for managing the windows of a Java Swing application.
With the Sanaware Java Docking Framework you can:
* Organize the windows of your application in panels, split panes, tabs, lines, grids and floating windows.
* Reorganize the windows of your application by drag and drop.
* Minimize and maximize your windows.
* Save your workspace.
* Organize the toolbars, buttons, and actions of your application. ·
UISpec4J is an Open Source functional and/or unit testing library for Swing-based Java applications, built on top of the JUnit test harness.
If you are writing a Swing application, you will appreciate UISpec4J above all for its simplicity: UISpec4J's APIs are designed to hide as much as possible the complexity of Swing, resulting in easy to write and easy to read test scripts. This is especially true when comparing UISpec4J tests with those produced using Swing or low-level, event-based testing libraries. ·
Buoy is a library for creating user interfaces in Java programs. It is built on top of Swing, but provides a completely new set of classes to represent graphical components. It offers many advantages over using Swing directly, including:
* A much simpler, cleaner, and more consistent API
* A better mechanism for laying out interface components
* A far more powerful event handling mechanism, which is based on dynamic binding of arbitrary methods as event listeners
* Built in support for serializing user interfaces as XML, then reconstructing them again
Other important features of Buoy include:
* It forms a "transparent wrapper" around Swing. It hides the complexity of Swing when you don't want to deal with it, but doesn't get in your way when you actually need that complexity.
* It is very small and efficient. The entire compiled library is only 200 K.
* It is written entirely in Java, and works on any JVM that is compatible with J2SE 1.4 or later.
* All source code is in the public domain. ·
With help of JXLayer you can easily decorate your compound components and catch all Mouse, Keyboard and FocusEvent for all its subcomponents. JXLayer is very friendly to your applications, it uses only public Swing API and doesn't change any global settings like RepaintManager, EventQueue or frame's glassPane. It neither add AWTEventListener to AWT's toolkit. ·
iScreen is a Java Object Validation Framework, suitable for validating Java Objects (including JavaBeans) to ensure that they are "valid" according to some definition (usually via configuration). The term 'iScreen' means "information screen," where 'screen' means to protect or conceal. Information, represented by Java objects, are passed through the screen. If they are considered acceptable (i.e. valid), then nothing occurs. If not, then an exception is thrown, allowing the application to notify someone or something of the invalid information. ·
Espresso3D is a high performance real-time 3D engine for the Java(tm) programming language. E3D is not just a scene graph. It aims to be a complete solution for your application with OpenGL rendering, OpenAL audio, collision detection, input, and rendering support.
Espresso3D began as a free for non-commercial use library in October 2004. As of April 8, 2008 Espresso3D is available under the open source LGPL license. ·
The goal of this project is to provide a small and cohesive set of powerful UI components that allow creating modern applications that provide visual functionality similar to or superseding that of Vista Explorer and Office 2007. The components provide consistent visuals under the existing core and third-party look-and-feels, respect the DPI settings of the user desktop and follow the core Swing guidelines in the external APIs and the internal implementation details.The component suite includes:
* Layer for defining and using resizable icons
* Command button component
* Command button panel component
* File viewer panel component
* Breadcrumb bar component
* Ribbon component
The project is licensed under BSD license and requires JDK 6.0 ·
Contains extensions to the Swing GUI toolkit, including new and enhanced components that provide functionality commonly required by rich client applications. Highlights include:
* Sorting, filtering, highlighting for tables, trees, and lists
* Login/authentication framework
* TreeTable component
* Collapsible panel component
* Date picker component
* Tip-of-the-Day component ·