Quartz - Quartz Overview: "Quartz is a full-featured, open source job scheduling system that can be integrated with, or used along side virtually any J2EE or J2SE application - from the smallest stand-alone application to the largest e-commerce system. Quartz can be used to create simple or complex schedules for executing tens, hundreds, or even tens-of-thousands of jobs; jobs whose tasks are defined as standard Java components or EJBs. The Quartz Scheduler includes many enterprise-class features, such as JTA transactions and clustering.
Quartz is freely usable, licensed under the Apache 2.0 license."
Tuesday, January 10, 2006
Monday, January 09, 2006
dbdoclet Homepage
dbdoclet Homepage: "The DocBook Doclet (dbdoclet) creates DocBook code from Java source documentation. It is helpful, if you want to print reference handbooks of your API. The program can be used as javadoc doclet or as standalone application. The standalone application can be used as a converter to transform HTML documents to DocBook documents. Additionally DocBookDoclet comes with a Swing application called dbdoclet.TiDBit, which helps you to manage your documentation projects and to create PDF files."
XStream - About XStream
XStream - About XStream: "XStream is a simple library to serialize objects to XML and back again.
Features
* Ease of use. A high level facade is supplied that simplifies common use cases.
* No mappings required. Most objects can be serialized without need for specifying mappings.
* Performance. Speed and low memory footprint are a crucial part of the design, making it suitable for large object graphs or systems with high message throughput.
* Clean XML. No information is duplicated that can be obtained via reflection. This results in XML that is easier to read for humans and more compact than native Java serialization.
* Requires no modifications to objects. Serializes internal fields, including private and final. Supports non-public and inner classes. Classes are not required to have default constructor.
* Full object graph support. Duplicate references encountered in the object-model will be maintained. Supports circular references.
* Integrates with other XML APIs. By implementing an interface, XStream can serialize directly to/from any tree structure (not just XML).
* Customizable conversion stategies. Strategies can be registered allowing customization of how particular types are represented as XML.
* Error messages. When an exception occurs due to malformed XML, detailed diagnostics are provided to help isolate and fix the problem."
Features
* Ease of use. A high level facade is supplied that simplifies common use cases.
* No mappings required. Most objects can be serialized without need for specifying mappings.
* Performance. Speed and low memory footprint are a crucial part of the design, making it suitable for large object graphs or systems with high message throughput.
* Clean XML. No information is duplicated that can be obtained via reflection. This results in XML that is easier to read for humans and more compact than native Java serialization.
* Requires no modifications to objects. Serializes internal fields, including private and final. Supports non-public and inner classes. Classes are not required to have default constructor.
* Full object graph support. Duplicate references encountered in the object-model will be maintained. Supports circular references.
* Integrates with other XML APIs. By implementing an interface, XStream can serialize directly to/from any tree structure (not just XML).
* Customizable conversion stategies. Strategies can be registered allowing customization of how particular types are represented as XML.
* Error messages. When an exception occurs due to malformed XML, detailed diagnostics are provided to help isolate and fix the problem."
ClassEncrypt Software
ClassEncrypt Software: "ClassEncrypt is a program that can encrypt a developer's class files to prevent malicious users from stealing the source code. The program uses a modular design to allow the developer to create different encryption modules for the program to use. This software does not prevent the developer's software from being pirated.
The software comes with a default module that encrypts and decrypts using the Blowfish algorithm that was created by Bruce Schneier. This software is meant to be a barrier of protection for Java developers who want to market their software. It is not at all foolproof since the software enables the encrypted class files to still run using the regular JVM. It does, however, slow down any reverse engineering that someone may try on the developer's software."
The software comes with a default module that encrypts and decrypts using the Blowfish algorithm that was created by Bruce Schneier. This software is meant to be a barrier of protection for Java developers who want to market their software. It is not at all foolproof since the software enables the encrypted class files to still run using the regular JVM. It does, however, slow down any reverse engineering that someone may try on the developer's software."
Sunday, January 08, 2006
jcoverage
jcoverage
At jcoverage we are about productivity. Our suite of tools and technologies aim to reduce the 'code - test - diagnose - fix' cycle.
If you are using code coverage tools, you are also writing tests. We believe that you can improve your test development productivity at the same time.
Once you have coded, your tests and coverage analysis should run quickly so you can check outcomes and deliver changes as required from test feedback. It should also be able to easily test units in isolation rather than testing system as a whole.
You can start by downloading jcoverage/gpl, our free code coverage tool. Get started and see how much of your code is being covered by tests.
Once you have seen what our free coverage tool can do for you, why not use the fully supported jcoverage commercial edition.
Where your testing is less than adequate, you can improve your test quality and coverage through the use of our mock object technologies, included in our flagship product jcoverage+.
jcoverage+ includes our standard jcoverage technologies and introduces more rigour and finer granularity to your testing, allowing you to simulate and test for scenarios that otherwise would be impossible to test automatically.
At jcoverage we are about productivity. Our suite of tools and technologies aim to reduce the 'code - test - diagnose - fix' cycle.
If you are using code coverage tools, you are also writing tests. We believe that you can improve your test development productivity at the same time.
Once you have coded, your tests and coverage analysis should run quickly so you can check outcomes and deliver changes as required from test feedback. It should also be able to easily test units in isolation rather than testing system as a whole.
You can start by downloading jcoverage/gpl, our free code coverage tool. Get started and see how much of your code is being covered by tests.
Once you have seen what our free coverage tool can do for you, why not use the fully supported jcoverage commercial edition.
Where your testing is less than adequate, you can improve your test quality and coverage through the use of our mock object technologies, included in our flagship product jcoverage+.
jcoverage+ includes our standard jcoverage technologies and introduces more rigour and finer granularity to your testing, allowing you to simulate and test for scenarios that otherwise would be impossible to test automatically.
Enterprise Java Community: The Power of JAAS: Security System Alternatives
Enterprise Java Community: The Power of JAAS: Security System Alternatives
Purpose
I attended the CIO Forum a several months ago and sat in on a presentation on Identity Management, which is considered by C-level executives one of the hot technologies. From a C-level executive’s perspective, this presentation falls generally under the domain of Identity Management. At the Forum, the speaker briefly discussed RBAC (Role Base Access Control) and anecdotally mentioned that it is a “hard nut to crack.”
This article is an extension of a recent article I published on TheServerSide.com, Exploring J2EE Security for Applications using LDAP. That article identified key interfaces within a J2EE compliant application server that need to be configured in order to build secure applications focusing on RBAC, which is an integral part of Identity Management.
However, the article did not discuss, in detail, alternatives to using LDAP directly for Java Authentication and Authorization Service (JAAS) security, such as a Trust Association, one of the more popular system alternatives. Essentially, the power of JAAS is in its ability to use almost any underlying security system. One of those approaches is to use a Trust Association Interceptor (TAI) instead of direct LDAP access.
Purpose
I attended the CIO Forum a several months ago and sat in on a presentation on Identity Management, which is considered by C-level executives one of the hot technologies. From a C-level executive’s perspective, this presentation falls generally under the domain of Identity Management. At the Forum, the speaker briefly discussed RBAC (Role Base Access Control) and anecdotally mentioned that it is a “hard nut to crack.”
This article is an extension of a recent article I published on TheServerSide.com, Exploring J2EE Security for Applications using LDAP. That article identified key interfaces within a J2EE compliant application server that need to be configured in order to build secure applications focusing on RBAC, which is an integral part of Identity Management.
However, the article did not discuss, in detail, alternatives to using LDAP directly for Java Authentication and Authorization Service (JAAS) security, such as a Trust Association, one of the more popular system alternatives. Essentially, the power of JAAS is in its ability to use almost any underlying security system. One of those approaches is to use a Trust Association Interceptor (TAI) instead of direct LDAP access.
Eclipse BIRT Home
Eclipse BIRT Home: "BIRT is an open source, Eclipse-based reporting system that integrates with your application to produce compelling reports for both web and PDF.
BIRT provides core reporting features such as report layout, data access and scripting. The current released version is 1.0.1. Please try BIRT and tell us what you think by filling bugs reports & enhancement requests through Bugzilla as explained on the community page."
BIRT provides core reporting features such as report layout, data access and scripting. The current released version is 1.0.1. Please try BIRT and tell us what you think by filling bugs reports & enhancement requests through Bugzilla as explained on the community page."
Saturday, January 07, 2006
aisland: Home
aisland: Home: "AIsland's goal is to provide a framework to build and distribute agents.
The framework exposes objects (graphic module, audio module, neural network, fuzzy logic ...)
to an agent developer, who can glue these modules together using a scripting language, initally JavaScript.
Mobile Agents travel between different AIslands. If an Agent requests a module unknown to an AIsland,
the platform will ask the user for permission to load code from another peer. AIslands can persist trust relationships.
The inital version builds on Java and fat clients, facilitating a Java Swing GUI and a BSF/ Rhino engine,
to script against modules sitting on an JMX component bus hosted by an Avalon based micro kernel.
A port to small devices (J2ME - Java phones) is a future option.
An Agent is represented by an XML document and is distributed as a JXTA Codat.
Agents contain script code, which is interpreted by an AIsland (a JXTA peer) in a secure manner.
Host file systems are protected against malicious agents.
Agents and AIslands communicate using JXTA.
Network access through proxies for HTTP (SOAP) and SMTP is supported as well."
The framework exposes objects (graphic module, audio module, neural network, fuzzy logic ...)
to an agent developer, who can glue these modules together using a scripting language, initally JavaScript.
Mobile Agents travel between different AIslands. If an Agent requests a module unknown to an AIsland,
the platform will ask the user for permission to load code from another peer. AIslands can persist trust relationships.
The inital version builds on Java and fat clients, facilitating a Java Swing GUI and a BSF/ Rhino engine,
to script against modules sitting on an JMX component bus hosted by an Avalon based micro kernel.
A port to small devices (J2ME - Java phones) is a future option.
An Agent is represented by an XML document and is distributed as a JXTA Codat.
Agents contain script code, which is interpreted by an AIsland (a JXTA peer) in a secure manner.
Host file systems are protected against malicious agents.
Agents and AIslands communicate using JXTA.
Network access through proxies for HTTP (SOAP) and SMTP is supported as well."
Hive
Hive: "Hive is a Java software platform for creating distributed applications. Using Hive, programmers can easily create systems that connect and use data from all over the Internet. At its heart, Hive is an environment for distributed agents to live, communicating and moving to fulfill applications. We are trying to make the Internet alive."
AJANTA: Home Page
AJANTA: Home Page: "A software agent is a program that works on behalf of a human user. A mobile agent has the added ability to travel autonomously (under its own control) from machine to machine on a network. Ajanta is a mobile agent programming system being developed at the University of Minnesota. It allows agents written in Java to securely migrate from machine to machine on the Internet. The Ajanta project is aimed at building an infrastructure for mobile agent execution that incorporates security and robustness features as an integral part of the design. The system is being implemented using Java."
An introduction to agents
An introduction to agents: "Summary
Agents draw on and integrate many diverse disciplines of computer science, and although agent technology has not yet hit prime time, it is gathering its share of investment money. Find out what all the uproar is about in this month's column, which examines agents -- what they are and what problems they solve. Columnist Todd Sundsted also shows you how to lay the foundation for a simple agent architecture in Java, which you'll develop in upcoming installments of How-To Java. (2,200 words)"
Agents draw on and integrate many diverse disciplines of computer science, and although agent technology has not yet hit prime time, it is gathering its share of investment money. Find out what all the uproar is about in this month's column, which examines agents -- what they are and what problems they solve. Columnist Todd Sundsted also shows you how to lay the foundation for a simple agent architecture in Java, which you'll develop in upcoming installments of How-To Java. (2,200 words)"
Wednesday, January 04, 2006
MindTunnel - A java implementation of an SSHD
MindTunnel - A java implementation of an SSHD: "MindTunnel v0.96
MindTunnel, release 0.96 - Dec 06, 1998
MindTunnel is an entirely FREE(*) SSH (currently v1.5) server program
written in pure Java. It was implemented for fun (or for completeness
of the mindbright ssh-package :-) and is not intended to be a
replacement for 'the real thing'. However, it can be used as a minimal
sshd, supporting only tunneling (i.e. port-forwarding). It has
RSA-authentication as the only means of authentication, the
'authorized_keys' file has changed to be handled in a central place
for all users (hence you don't need to give the users shell-accounts
on the server-machine).
(*) Only restriction is that you can't derive commercial work from it
without our written permission."
MindTunnel, release 0.96 - Dec 06, 1998
MindTunnel is an entirely FREE(*) SSH (currently v1.5) server program
written in pure Java. It was implemented for fun (or for completeness
of the mindbright ssh-package :-) and is not intended to be a
replacement for 'the real thing'. However, it can be used as a minimal
sshd, supporting only tunneling (i.e. port-forwarding). It has
RSA-authentication as the only means of authentication, the
'authorized_keys' file has changed to be handled in a central place
for all users (hence you don't need to give the users shell-accounts
on the server-machine).
(*) Only restriction is that you can't derive commercial work from it
without our written permission."
JTOpen - Java Access Classes for iSeries
SourceForge.net:: "The IBM Toolbox for Java / JTOpen is a library of Java classes supporting the client/server and internet programming models to an iSeries or AS/400 server."
Monday, January 02, 2006
1.3 Proxies mit Java-Pipes
1.3 Proxies mit Java-Pipes: "Proxies mit Java-Pipes"
PipedOutputStream request = new PipedOutputStream(),
out = new PipedOutputStream();
PipedInputStream reply = new PipedInputStream(),
in = new PipedInputStream();
in.connect(request); out.connect(reply);
peer.out = new ObjectOutputStream(request);
this.out = new ObjectOutputStream(out);
peer.in = new ObjectInputStream(reply);
this.in = new ObjectInputStream(in);
PipedOutputStream request = new PipedOutputStream(),
out = new PipedOutputStream();
PipedInputStream reply = new PipedInputStream(),
in = new PipedInputStream();
in.connect(request); out.connect(reply);
peer.out = new ObjectOutputStream(request);
this.out = new ObjectOutputStream(out);
peer.in = new ObjectInputStream(reply);
this.in = new ObjectInputStream(in);
VTSurvey
VTSurvey: "is a web-based tool which enables end users to autonomously create and run online surveys, feedback or registration forms. By providing a forms-based visual editor, the use of VTSurvey requires no programming knowledge or skills in HTML.
VTSurvey's built-in user management system enables it to serve large organizations and facilitates collaborative survey development and administration. For example, at Virginia Tech this software is used to implement survey.vt.edu a web-based service which is currently serving over 3000 Virginia Tech students, faculty and staff with their survey needs. Go and check out the public demo!"
VTSurvey's built-in user management system enables it to serve large organizations and facilitates collaborative survey development and administration. For example, at Virginia Tech this software is used to implement survey.vt.edu a web-based service which is currently serving over 3000 Virginia Tech students, faculty and staff with their survey needs. Go and check out the public demo!"
openFJORD online survey tool
openFJORD: "openFJORD is a web-based tool for flexible survey creation based on an editable library of questions or on user produced questions. It provides the online realization of the survey and its evaluation.
View our Project Homepage.
Click here to download the required external libraries, including JBoss 3.0.4.
Click here for a java api documentation.
Click here for a preview of the web-frontend."
View our Project Homepage.
Click here to download the required external libraries, including JBoss 3.0.4.
Click here for a java api documentation.
Click here for a preview of the web-frontend."
Sunday, January 01, 2006
A Java API to read, write and modify Excel spreadsheets
A Java API to read, write and modify Excel spreadsheets: "Java Excel API - A Java API to read, write and modify Excel spreadsheets
This is the home page of Java Excel API - open source Java API which allows Java developers to read Excel spreadsheets and to generate Excel spreadsheets dynamically. In addition, it contains a mechanism which allows java applications to read in a spreadsheet, modify some cells and write out the new spreadsheet.
This API allows non Windows operating systems to run pure Java applications which can both process and deliver Excel spreadsheets. Because it is Java, this API may be invoked from within a servlet, thus giving access to Excel functionality over internet and intranet web applications.
Features
# Reads data from Excel 95, 97, 2000 workbooks
# Reads and writes formulas (Excel 97 and later only)
# Generates spreadsheets in Excel 2000 format
# Supports font, number and date formatting
# Supports shading and colouring of cells
# Modifies existing worksheets
# Supports image creation
# Preserves macros on copy
# Customizable logging"
This is the home page of Java Excel API - open source Java API which allows Java developers to read Excel spreadsheets and to generate Excel spreadsheets dynamically. In addition, it contains a mechanism which allows java applications to read in a spreadsheet, modify some cells and write out the new spreadsheet.
This API allows non Windows operating systems to run pure Java applications which can both process and deliver Excel spreadsheets. Because it is Java, this API may be invoked from within a servlet, thus giving access to Excel functionality over internet and intranet web applications.
Features
# Reads data from Excel 95, 97, 2000 workbooks
# Reads and writes formulas (Excel 97 and later only)
# Generates spreadsheets in Excel 2000 format
# Supports font, number and date formatting
# Supports shading and colouring of cells
# Modifies existing worksheets
# Supports image creation
# Preserves macros on copy
# Customizable logging"
Phex - What is Phex? / Features
Phex - What is Phex? / Features: "Phex is a file sharing program running on the Gnutella Network. It will run on Windows, Mac OS X, Linux, Solaris, and other operating systems supporting Java 1.4.
* Phex is a FREE of spyware and adware
Phex never containd any kind of spyware, adware or any other kind of bundled software. (Softpedia award)
* Multi-plattform support
Whether you use Windows, MAC OS X, Linux (a gentoo-ebuild is avaible via portage) or Solaris Phex is able to run on them all. All you need is a operation system that offers a Java 1.4 Runtime Environment.
* Multi-source downloads (Swarming)
Often the file you like to download is available on several different hosts. Phex will request different segments of the file from each host in parallel. After successfully downloading a segment Phex will merge it with the other segments of that file. This results in a much higher download speed. If a host is too slow the segment is split during download and given to another host. To make sure you never run out of hosts Phex is able to find new download hosts by itself with the automatic search functionality and features the Download Mesh.
You can choose for each download whether the segments should be chosen according to their availability (rarest first, BitTorrent-Style), their place in the file (earlier segments first, useful for previewing the file) or randomly.
* Advanced configuration options
Phex offers very advanced configuration options. Much more than many other clients can offer. Especially advanced user can configure Phex according to their needs and are able to tune and see the effect of different settings.
* Passive searching and snooping for files
With the passive search functionality Phex is able to constantly monitor the traffic that goes through the network and collect search results that match your passive search term. Also Phex snoops the traffic for new download candidates you need to finish your downloads faster. This type of searching is also useful for longtime monitoring of available files on the network.
* Other features include:
o Multiple searches.
o Ultrapeer and compression technology for reduced bandwidth.
o Integrated chat.
o Browse host support.
o Bitzi metadata lookup.
o MAGMA support.
Last Updated ( Wednesday, 23 November 2005 )"
* Phex is a FREE of spyware and adware
Phex never containd any kind of spyware, adware or any other kind of bundled software. (Softpedia award)
* Multi-plattform support
Whether you use Windows, MAC OS X, Linux (a gentoo-ebuild is avaible via portage) or Solaris Phex is able to run on them all. All you need is a operation system that offers a Java 1.4 Runtime Environment.
* Multi-source downloads (Swarming)
Often the file you like to download is available on several different hosts. Phex will request different segments of the file from each host in parallel. After successfully downloading a segment Phex will merge it with the other segments of that file. This results in a much higher download speed. If a host is too slow the segment is split during download and given to another host. To make sure you never run out of hosts Phex is able to find new download hosts by itself with the automatic search functionality and features the Download Mesh.
You can choose for each download whether the segments should be chosen according to their availability (rarest first, BitTorrent-Style), their place in the file (earlier segments first, useful for previewing the file) or randomly.
* Advanced configuration options
Phex offers very advanced configuration options. Much more than many other clients can offer. Especially advanced user can configure Phex according to their needs and are able to tune and see the effect of different settings.
* Passive searching and snooping for files
With the passive search functionality Phex is able to constantly monitor the traffic that goes through the network and collect search results that match your passive search term. Also Phex snoops the traffic for new download candidates you need to finish your downloads faster. This type of searching is also useful for longtime monitoring of available files on the network.
* Other features include:
o Multiple searches.
o Ultrapeer and compression technology for reduced bandwidth.
o Integrated chat.
o Browse host support.
o Bitzi metadata lookup.
o MAGMA support.
Last Updated ( Wednesday, 23 November 2005 )"
JavaThrottle, a pipe bandwidth limiter
JavaThrottle, a pipe bandwidth limiter: "JavaThrottle is a pipe bandwidth limiting throttle, with a gui to change the throttle on the fly.
(0.6 shown here)
Features
* Works via standard pipes.
* Changing settings never interrupts the stream.
* Shows the number of bytes sent and the current rate.
* Shows a graph of traffic flow through the window (--graph).
* Gives the ability to set the throttle to whatever you like whenever you like.
* Includes a good set of command line flags so you can start it in whatever mode you like.
* Throttle tries to be as smooth as possible at slow speeds and as efficient as possible at high speeds.
* Tested on streams in excess of 100GB and spanning many days."
(0.6 shown here)
Features
* Works via standard pipes.
* Changing settings never interrupts the stream.
* Shows the number of bytes sent and the current rate.
* Shows a graph of traffic flow through the window (--graph).
* Gives the ability to set the throttle to whatever you like whenever you like.
* Includes a good set of command line flags so you can start it in whatever mode you like.
* Throttle tries to be as smooth as possible at slow speeds and as efficient as possible at high speeds.
* Tested on streams in excess of 100GB and spanning many days."
yawiki
yawiki: "'''yawiki''' - yet another wiki
A wiki system is a perfect place for working together and sharing information.
The text syntax of a wiki system is really simple to learn. Getting started with
a wiki system is easy.
This is yet another Java implementation of such a wiki system. Besides the basic wiki features, it covers quite a lot more.
Here is a list of yawiki's basic features:
* versioning of every page
* view the history and restore old versions
* page can be restricted to be edited by users only
* supports different themes
* search engine (jakarta lucene) integrated
* compare different versions of a page
* list last recent updates"
A wiki system is a perfect place for working together and sharing information.
The text syntax of a wiki system is really simple to learn. Getting started with
a wiki system is easy.
This is yet another Java implementation of such a wiki system. Besides the basic wiki features, it covers quite a lot more.
Here is a list of yawiki's basic features:
* versioning of every page
* view the history and restore old versions
* page can be restricted to be edited by users only
* supports different themes
* search engine (jakarta lucene) integrated
* compare different versions of a page
* list last recent updates"
Subscribe to:
Posts (Atom)