This document is a guide to help troubleshoot problems that might arise with applications that are developed using the Sun Microsystems Inc. release of Java Platform, Standard Edition 6 (JDK 6 release or Java SE 6 release). In particular, this guide addresses possible problems between the applications and the Java HotSpot virtual machine. The document provides a description of the tools, command line options, and other help in analyzing a problem. The document also provides guidance on how to approach some general issues such as a crash, hang, or memory resource issues. Finally, the document provides direction for data collection and bug report preparation.
CLAM stands for C++ Library for Audio and Music and in Catalan means something like "a continuous sound produced by a large number of people as to show approval or disapproval of a given event".
CLAM is a full-fledged software framework for research and application development in the Audio and Music Domain. It offers a conceptual model as well as tools for the analysis, synthesis and processing of audio signals.
EasyBeans is an open-source Enterprise Java Beans (EJB) container hosted by the OW2 consortium. The License used by EasyBeans is the LGPL.
EasyBeans main goal is to ease the development of Enterprise Java Beans. It uses some new architecture design like the bytecode injection (with ASM ObjectWeb tool), IoC, POJO and can be embedded in OSGi bundles or other frameworks (Spring, Eclipse plugins, etc.).
It aims to provide an EJB3 container as specified in the Java Platform Enterprise Edition (Java EE) in its fifth version. It means that Session beans (Stateless or Stateful), Message Driven Beans (MDB) are available on EasyBeans.
The new persistence layer used by EJB 3.0 is now called Java Persistence API (or JPA). It replaces the CMP (Container Managed Persistence) model used by EJB 2.x. The default persistence provider used in EasyBeans is Hibernate Entity Manager or Apache OpenJPA but other JPA providers have been tested like for example Oracle TopLink Essentials.
Grasshopper is a Visual Studio-based SDK and patented .NET to Java converter that enables you to run .NET Web and server applications to run on Linux® and other Java-enabled platforms.
10gen is a new platform-as-a-service technology designed to help developers quickly and easily build dynamic, scalable, mission critical web sites and applications.
The 10gen software stack is analogous to Google App Engine in that it provides a new stack of tools (database, grid management, application server) that are purpose-built to run in a cloud environment.
Sausalito is a product that enables you to develop, test, deploy, and host scalable web applications in the cloud. On this page, you find some reading material in case you're interested in
* technical details about Sausalito,
* user experience reports, or
* presentations and demos that we gave.
Essence
The 960 Grid System is an effort to streamline web development workflow by providing commonly used dimensions, based on a width of 960 pixels. There are two variants: 12 and 16 columns, which can be used separately or in tandem. Read more.
Dimensions
The 12-column grid is divided into portions that are 60 pixels wide. The 16-column grid consists of 40 pixel increments. Each column has 10 pixels of margin on the left and right, which create 20 pixel wide gutters between columns. View demo.
Purpose
The premise of the system is ideally suited to rapid prototyping, but it would work equally well when integrated into a production environment. There are printable sketch sheets, design layouts, and a CSS file that have identical measurements.
DB Schema Viewer is an Eclipse plugin that builds a graphical view of an existing database. Reverse Engineering is performed through JDBC. The most popular databases are currently supported:
* MySQL
* PostgreSQL
* Firebird
ClassMock is a framework that helps the creation of unit tests for components that use reflection or annotations. In this kind of classes, the behavior is dependent of the class structure. This way, each test case usually works with a different class created specifically for the test. With ClassMock is possible to define and generate classes in runtime, allowing a better test readability and logic sharing between tests.
The Pager Tag Library is the easy and flexible way to implement paging of large data sets in JavaServer Pages (JSP). It can emulate all currently known paging styles with minimal effort. It also includes re-usable index styles that emulate the search result navigators of popular web sites such as GoogleSM, AltaVista® and Yahoo!. The Pager Tag Library does most of the work for you by dynamically organizing your data set into pages and generating a browsable index with virtually any look desired.
“DHTML” dropdown menus have notoriously involved nasty big chunks of JavaScript with numerous browser-specific hacks that render any otherwise neat, semantic HTML quite inaccessible. Oh, the dream of a lightweight, accessible, standards-compliant, cross-browser-compatible method! Enter Suckerfish Dropdowns.
Subversion’s hook scripts provide a powerful and flexible way to associate actions with repository events. For example, the pre-commit hook allows you to check — and possibly abort — a transaction before it actually gets committed. This entry describes how to install and test a simple Python hook script to prohibit tabs from C++ files.
Home About Contact RSS A taxonomy of Rails plugins Tags rails, programming, ruby, patterns, plugins Posted Sat 16 Jun, 2007 A common stumbling block for Rails developers is learning the basics required to write plugins. This is made more complicated
a6fw is a Java framework for the rapid development of a rich GUI web client and/or rich GUI windows client, OLTP type applications using Model Driven Architecture (MDA) and declarative principles. It consists of modular pluggable application layers (UI, n
Your users want to customize formulas. They know Excel or OpenOffice.
// Compile price finding factory and strategy implementation from spreadsheet:
EngineBuilder builder = SpreadsheetCompiler.newEngineBuilder();
builder.loadSpreadsheet( new File( PATH, "CustomPriceFormula.xls" ) );
builder.setFactoryClass( PriceFinderFactory.class );
builder.bindAllByName();
Engine engine = builder.compile();
PriceFinderFactory factory = (PriceFinderFactory) engine.getComputationFactory();
// Use it to compute a line item price:
LineItem item = getCurrentLineItem();
PriceFinder priceFinder = factory.newInstance( item );
BigDecimal price = priceFinder.getPrice();
Compile parametrized spreadsheets directly to bytecode.
* No need to have Excel, OpenOffice, or a JDK installed.
* Native speed, thread safe execution.
* Bind directly to your computation strategy interfaces.
* Using double, or BigDecimal for financial applications.
* Available under the GPL and commercially (details).
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.
Abeille Forms Designer is a GUI builder for Java applications. Developers and designers can create complex, professional forms in minutes. Designers can drag and drop components onto a WYSIWYG editor. Full support for undo/redo and copy/paste is provided. Components can be easily customized by adding images or modifying their properties. Advanced fill effects are supported such as textures and gradients.
Abeille has intuitive layout rules and is based on the JGoodies FormLayout system (https://forms.dev.java.net). The FormLayout is a popular, open source layout manager for Java and is used by thousands of developers worldwide. Abeille comes with all the required software.
Abeille stores forms in binary files which can be loaded by your application and added to any Swing container. While the designer is licensed under the LGPL, the forms runtime has a BSD license. This allows forms created by the designer to be used freely in commercial applications.
* WYSIWYG Editor
* 3rd Party Java Bean Support
* Swing Based
* Borders, Gradients, Textures, Images, and Shadow Effects
* Undo/Redo
* Intuitive Layout Rules (based on JGoodies Form Layout)
* Open source runtime (BSD License)
* Code Generation
* Supports Windows, Linux, and Mac OS X.
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".
When the only thing you've got is a XML Hammer, every solution looks like XML.
The XML Hammer application is a free and open-source tool that simplifies elementary XML actions like checking for well-formedness, validation, transformation and xpath searches using any JAXP implementation.
After all these years of XML, it is still relatively difficult to simply validate or transform XML files. You are currently either forced to use extensive, sometimes expensive, and most often difficult to use tools with a lot of extra functionality unnecessary for these simple tasks and very often not flexible enough to provide what you want, or you will have to be almost a programmer and create your own application or script to handle these elementary XML related tasks.
The XML Hammer tool addresses these issues by providing a free and open-source tool that has a (relatively) simple to use user-interface however still allowing the flexibility for the user to specify anything that he/she would have been able to specify when writing a script for this same task him/herself.
The functionality of the XML Hammer tool is based on the capabilities provided by the Java API for XML Processing (JAXP) and supports the JAXP API as fully as possible. To achieve this, the functionality has been divided into five specific project types:
LIMBAS is a web client/server application allowing you to develop application quickly without programming. This, only by the use of tables and forms and other modules like workflow engine, user management, report editor, file manager or soap interface.
An outstanding feature is complete use with an Internet-Browser without installations, Plugins or other components on the client.
OpenID is a URL based identity system. An OpenID identity is simply a URL, and all the OpenID specification does is provide a way to securely prove that you own that URL. Unlike most identity systems, OpenID is completely decentralized. The end-user may c
Acceleo is the most powerful code generator tool of its generation. It has been designed to improve software development productivity. Acceleo brings to everyone the MDA approach applied to development industrialization
Today’s leading web applications are increasingly built on Web 2.0 principles: rich user interface, lightweight integration of multiple data sources, rapid evolution of applications, and user control over both content and context. Web 2.0 promises to expand the functionality of core business applications, knit together multiple services, and deliver a feature-rich user interface to enhance the customer experience and employee productivity.
This project contains custom Hibernate and JRuby extensions to let Hibernate work directly with org.jruby.RubyObject objects. That means that the Hibernate session accepts and returns plain old Ruby objects (no intermediary Java domain classes are needed). Another goal is to provide a Rubyish interface to the Hibernate configuration and functionality.
The idea to start this project comes from Ola Bini's blog http://ola-bini.blogspot.com/2007/04/activehibernate-any-takers.html. For more details please see http://rubymatic.blogspot.com.
The Advicio Service Workbench assembles second-generation IT service catalogues, creating a basis for distributed development of component-based service architectures. The tool’s deliverables are detailed IT service specifications in Advicio’s Service Specification and Configuration Language (SSCL). As well as delivering added value to clients – who benefit from clear-cut definitions of the content and scope of services – the specifications are also valuable for service providers to document workflows or in contract agreements with outsourcing partners.
In one line: Afae's goal is to be a Textmate like editor in Eclipse.
Afae stands for Another Freebooter's All-purpose Editor. It is a group of plugins for Eclipse that do the following:
* Syntax highlighting for many types of files. See the wiki for a complete list.
* MetaWeblog plugin for posting to your blog
* Keystroke comments
* An image viewer and basic re-sizer for GIF, JPG, ICO, and PNG
* Snippets inserter with trigger text and variable replacement.
* A while-you-edit XML DTD and XML Schema validator
Teaser for an interesting book...
EAI - The Broader Perspective
No one should have (or will) ever dared to build a 'Single System' which will take care of the entire business requirements of an enterprise. Instead, we build few (or many) systems,and each of them takes care of a set of functionalities in a single Line of Business (LOB). There is absolutely nothing wrong here, but the need of the hour is that these systems have to exchange information and interoperate in many new ways which have not been foreseen earlier. Business grows, enterprise boundaries expands and mergers and acquisition are all norms of the day. If IT cannot scale up with these volatile environments, the failure is not far.
Agile Modeling (AM) is a practice-based methodology for effective modeling and documentation of software-based systems. Simply put, Agile Modeling (AM) is a collection of values, principles, and practices for modeling software that can be applied on a software development project in an effective and light-weight manner. As you see in Figure 1 AM is meant to be tailored into other, full-fledged development methodologies such as XP or RUP, enabling you to develop a software process which truly meets your needs. The techniques of AM, in particular Agile Model Driven Development (AMDD), the lifecycle for which is depicted in Figure 2, enable you to scale agile software development to very complex situations.
Agilefant is an open source tool for managing agile software development activities, such as: projects, products, releases, iterations and backlogs. It brings together the perspectives of long-term product and release planning and project portfolio management.
Business processes optimization with service-enabled applications is on the CIO's high priority agenda (according to a recent study of Gartner's Executive Program - EXP). At the same time a German study for SMEs (small and medium sized enterprises) has confirmed this business need especially for Germany's distinct high share of SMEs.
AgilPro is a process integration framework based on a service oriented architecture (SOA). AgilPro integrates existing ERP (enterprise resource planning), material management and proprietary data processing systems using service adapters. Particularly SMEs are known to use isolated solutions which prevent integrated process flow. AgilPro Integration Framework will help to close this gap.
AgilPro integrates BPEL compliant process engines for process execution (e.g. JBoss jBPM).
The agimatec tools contain some utilities to enable generation of files, source code etc. from sql files and annotated java classes.
The agimatec-dbmigrate tool is a database migration/script execution framework that can execute sql scripts, groovy scripts and provides a lot of features to assist in database schema migration. (tested with Oracle and Postgres)
This is an early implementation of JSR 303 (Bean Validation), a specification of the Java API for JavaBean validation in Java EE and Java SE.
The technical objective is to provide a class level constraint declaration and validation facility for the Java application developer, as well as a constraint metadata repository and query API.
This implementation is based on the validation framework of agimatec GmbH, that is in production for more than a year and offers additional features, like XML-based extensible metadata, code generation (JSON for AJAX applications), JSR303 annotation support.
For more information refer to the Wiki at Overview
Ahnenblatt ist ein Programm zur Ahnenforschung bzw. Genealogie für Windows (kostenlos/Freeware), das die Eingabe von Ahnen, Datenaustausch und -export (GEDCOM, HTML, DOC, CSV, XML, ...), Druck von Listen/Tafeln und noch vieles mehr unter einer einfach zu bedienenden Oberfläche vereint.
ICEfaces Community Edition is an Ajax application framework that enables J2EE application developers to easily create and deploy thin-client rich web applications in pure Java. ICEfaces Community Edition is a fully featured product that Java developers ca
Java provides a neat way to carry out long lasting jobs without have to worry about threads and hanging the application. It's called SwingWorker. It's not the latest thing on Earth (released with Java 1.6) and you may have already read about it. What I never came across was a practical example of the swing worker.
XPath Explorer (XPE) is a GUI application that lets you interactively experiment with XPath. Basically, you type in a URL (to an XML or HTML document) and an XPath expression, and it displays the elements or attributes from that document which match that
What is Asynchronous IO for Java?
Asynchronous IO for JavaTM (AIO4J) is a package that provides the capability to perform input and output (IO) on sockets and files asynchronously -- that is, where the Java application can request the operation but can continue doing useful work while the underlying system performs the operation. The application is informed of the operation's completion later.
We are building a community-written O'Reilly Cookbook about how to build great Android applications. It will be full of how-to information along with code snippets that illustrate the ideas presented. It will be complete, featuring both how-to's that overlap with the official documentation, and material that goes beyond this to be more tutorial, more in-depth, or explaining "lessons from the trenches": what actually works to get the application functioning well. Unlike most books written by one, two or a few individuals, this will have input from hundreds of contributors, who will be able to view and comment on each others' recipes before the book is printed. And after the book is printed, this site will continue to exist - with a larger collection of recipes than will fit in the printed book - and serve as an Android developer resource site long after.
We welcome contributions from anybody who has something useful to say about how to make usable and successful Android applications. There are several ways of contributing: experienced Android developers can write recipes; newer ones can suggest recipes that they'd like to see; anybody can read and comment on recipes; anybody can vote for existing recipes (voting indicates that you like the recipe and/or think it should be included in the printed edition of the book). All we ask of contributors is the following:
It is a tool for reengineering 3rd party, closed, binary Android apps. It can decode resources to nearly original form and rebuild them after making some modifications; it makes possible to debug smali code step by step. Also it makes working with app easier because of project-like files structure and automation of some repetitive tasks like building apk, etc.
It is NOT intended for piracy and other non-legal uses. It could be used for localizing, adding some features or support for custom platforms and other GOOD purposes. Just try to be fair with authors of an app, that you use and probably like.
The Android Scripting Environment (ASE) brings scripting languages to Android by allowing you to edit and execute scripts and interactive interpreters directly on the Android device. These scripts have access to many of the APIs available to full-fledged Android applications, but with a greatly simplified interface that makes it easy to:
* Handle intents
* Start activities
* Make phone calls
* Send text messages
* Scan bar codes
* Poll location and sensor data
* Use text-to-speech
* And more
This is a project to port Android open source project to x86 platform, formerly known as "patch hosting for android x86 support". The original plan is to host different patches for android x86 support from open source community. A few months after we created the project, we found out that we could do much more than just hosting patches. So we decide to fork our code base that will provide android x86 support on different x86 platforms, and set up a git server to host it. To reflect this major change, we create this new project.
This is a collection of answers to frequently asked questions (FAQs) about Java Generics, a new language feature added to the Java programming language in version 5.0 of the Java Standard Edition (J2SE 5.0).
Annogen is a framework which helps you work with JSR175 Annotations. In a nutshell, Annogen generates a proxy layer in front of your Annotations. This lets you:
Override JSR175 Annotation values
...with data from XML or arbitrary plugin code that you write.
Migrate JDK1.4 code to JSR175
...by translating javadoc tags into Annotations
Work with popular introspection APIs
...including Reflection, Javadoc-Doclet, QDox, and APT-Mirror.
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!
The Apache C++ Standard Library project (code name stdcxx, pronounced "standard C++ library", not S-T-D-C-X-X) is a collection of algorithms, containers, iterators, and other fundamental components of every piece of software, implemented as C++ classes, templates, and functions essential for writing C++ programs.
The goal of the Apache C++ Standard Library is to provide a free implementation of the ISO/IEC 14882 international standard for C++ that enables source code portability and consistent behavior of programs across all major hardware implementations, operating systems, and compilers, open source and commercial alike. An additional goal is to achieve maximum implementation efficiency on each platform by taking advantage of platform-specific high-performance facilities and features which are often unique to the type of hardware, the operating system or the compiler.
Apache Camel is a powerful rule based routing and mediation engine which provides a POJO based implementation of the Enterprise Integration Patterns using an extremely powerful fluent API (or declarative Java Domain Specific Language) to configure routing and mediation rules. The Domain Specific Language means that Apache Camel can support type-safe smart completion of routing rules in your IDE using regular Java code without huge amounts of XML configuration files; though Xml Configuration inside Spring is also supported.
What CouchDB is
* A document database server, accessible via a RESTful JSON API.
* Ad-hoc and schema-free with a flat address space.
* Distributed, featuring robust, incremental replication with bi-directional conflict detection and management.
* Query-able and index-able, featuring a table oriented reporting engine that uses Javascript as a query language.
What it is Not
* A relational database.
* A replacement for relational databases.
* An object-oriented database. Or more specifically, meant to function as a seamless persistence layer for an OO programming language.
Apache CXF is an open source services framework. CXF helps you build and develop services using frontend programming APIs, like JAX-WS. These services can speak a variety of protocols such as SOAP, XML/HTTP, RESTful HTTP, or CORBA and work over a variety of transports such as HTTP, JMS or JBI.
Apache CXF is an open source services framework. CXF helps you build and develop services using frontend programming APIs, like JAX-WS. These services can speak a variety of protocols such as SOAP, XML/HTTP, RESTful HTTP, or CORBA and work over a variety of transports such as HTTP, JMS or JBI.
Apache ESME (Enterprise Social Messaging Environment) is a secure and highly scalable microsharing and micromessaging platform that allows people to discover and meet one another and get controlled access to other sources of information.
You can hardly turn a web page these days without seeing a story that describes how people are using social networks, whether it is Twitter, Facebook or some other service to develop and build their personal communities.
When solving problems, how useful might it be if a user was able to tap into the collective knowledge of her peers or surrounding groups of people with whom she might naturally network in the workplace setting? How much quicker and with greater precision might she be able to solve daily problems? What if there was a communications mechanism that takes the best of what services like Twitter offers and co-mingled that with readily recognizable business processes? That solution is Apache ESME.
Enterprise Social Messaging Environment (ESME) is a secure and highly scalable microsharing and micromessaging platform that allows people to discover and meet one another and get controlled access to other sources of information, all in a business process context.
You can hardly turn a web page these days without seeing a story that describes how people are using social networks, whether it is Twitter, Facebook or some other service to develop and build their personal communities. In business, we increasingly see blogs and wikis demonstrating utility in problem solving and communications but the real time nature of business process problem solving largely remains untouched by social networking tools. Existing services, while attractive do not scale well and have proven unreliable. This is unacceptable to business which must be 'Always On' and able to support people in their daily working lives. Such applications must therefore be scalable and reliable but also provide a lot more.
When solving problems, how good might it be if a user was able to tap into the collective knowledge of her peers or surrounding groupsof people with whom she might naturally network in the workplace setting? How much quicker and with greater precision might she be able to solve daily problems? What if there was a communications mechanism that takes the best of what services like Twitter offers and co-mingled that with readily recognizable business processes? That solution is ESME.
Felix is a community effort to implement the OSGi R4 Service Platform, which includes the OSGi framework and standard services, as well as providing and supporting other interesting OSGi-related technologies. The ultimate goal is to provide a completely compliant implementation of the OSGi framework and standard services and to support a community around this technology. Felix currently implements a large portion of the OSGi release 4 specification, but additional work is necessary for full compliance. Despite this fact, the OSGi framework functionality provided by Felix is very stable.
This plugin for Maven 2 is based on the BND tool from Peter Kriens. The way BND works is by treating your project as a big collection of classes (e.g., project code, dependencies, and the class path). The way you create a bundle with BND is to tell it the content of the bundle's JAR file as a subset of the available classes. This plugin wraps BND to make it work specifically with the Maven 2 project structure and to provide it with reasonable default behavior for Maven 2 projects.
Since the 1.4.0 release, this plugin also aims to automate OBR (OSGi Bundle Repository) management. It helps manage a local OBR for your local Maven repository, and also supports remote OBRs for bundle distribution. The plug-in automatically computes bundle capabilities and requirements, using a combination of Bindex and Maven metadata.
Imperius (Simple Policy Language) or SPL - Is a simple standards based object-oriented policy language that allows expression of management policies using condition-action rules. Imperius provides an extensible set of over 100 operations for expressing conditions and actions.
Imperius is a generalization of the CIM-SPL language. Conversely, CIM-SPL can be thought of as Imperius with CIM binding. Imperius can be extended to create similar bindings for other environments. JavaSPL (Imperius with Java binding) is another such example.
MINA is a simple yet full-featured network application framework which provides:
* Unified API for various transport types:
o TCP/IP & UDP/IP via Java NIO
o Serial communication (RS232) via RXTX
o In-VM pipe communication
o You can implement your own!
* Filter interface as an extension point; similar to Servlet filters
* Low-level and high-level API:
o Low-level: uses ByteBuffers
o High-level: uses user-defined message objects and codecs
* Highly customizable thread model:
o Single thread
o One thread pool
o More than one thread pools (i.e. SEDA)
* Out-of-the-box SSL · TLS · StartTLS support using Java 5 SSLEngine
* Overload shielding & traffic throttling
* Unit testability using mock objects
* JMX managability
* Stream-based I/O support via StreamIoHandler
* Integration with well known containers such as PicoContainer and Spring
* Smooth migration from Netty, an ancestor of Apache MINA.
Apache ODE (Orchestration Director Engine) executes business processes written following the WS-BPEL standard. It talks to web services, sending and receiving messages, handling data manipulation and error recovery as described by your process definition. It supports both long and short living process executions to orchestrate all the services that are part of your application.