jasperreports example
Sponsored Links
Sponsored Links
Secleted [ 0 ] software to compare
Results 1 - 15 of about 3256
JasperReports 2.0.0
JasperReports is a Java reporting library. more>>
JasperReports is a powerful open source Java reporting tool that has the ability to deliver rich content onto the screen, to the printer or into PDF, HTML, XLS, CSV and XML files.
It is entirely written in Java and can be used in a variety of Java enabled applications, including J2EE or Web applications, to generate dynamic content.
JasperReports is main purpose is to help creating page oriented, ready to print documents in a simple and flexible manner.
Main features:
- Report Design
- Header Sections
- Footer Sections
- Columns
- Groups
- Calculations
- Text format
- Images
Enhancements:
- This version introduces support for external style templates, a new report section for better control over empty reports, an enhanced XLS exporter, and various bugfixes and improvements.
<<lessIt is entirely written in Java and can be used in a variety of Java enabled applications, including J2EE or Web applications, to generate dynamic content.
JasperReports is main purpose is to help creating page oriented, ready to print documents in a simple and flexible manner.
Main features:
- Report Design
- Header Sections
- Footer Sections
- Columns
- Groups
- Calculations
- Text format
- Images
Enhancements:
- This version introduces support for external style templates, a new report section for better control over empty reports, an enhanced XLS exporter, and various bugfixes and improvements.
Download (1.3MB)
Added: 2007-08-14 License: LGPL (GNU Lesser General Public License) Price:
640 downloads
Java::Import::Examples 0.03
Java::Import::Examples is an example of how to use Java::Import to call into Java classes. more>>
Java::Import::Examples is an example of how to use Java::Import to call into Java classes.
Making RMI calls from Perl
One nice thing about Java is the extremely straight forward manner in which it allows you to make calls to remote objects residing on distant servers. Many people use this ability as a point of integration between their system and a posible third party or legacy system. Unfortunatly, for the most part the ability to make calls to these remote objects is something that only other Java applications can do without making a big fuss about it. However, we can now do this from Perl.
Assume that I have a RMI server from which I can get data from in the form of simple Java Beans. One method of doing this is to use the GCJ::Cni library and natively compile and wrap a set of Java Classes which can then be used from my Perl script. However, there is an easier way.
Lets begin by descriping the Java interfaces that well be working with. We first have the Remote Interface that we will be interacting with:
import java.rmi.*;
public interface RemoteInterface extends Remote {
public SomeBean getMessage(String seedMessage) throws RemoteException;
}
And we also have the bean we will be asking for:
import java.io.*;
public class SomeBean implements Serializable {
private String value;
public SomeBean() {}
public void setValue ( String _value ) { ... }
public String getValue ( ) { ... }
}
As far as any Perl client program is concerned this is all we need to know about.
Now all there is left to do is write a client:
use Java::Import qw(
java.rmi.Naming
);
my $remote_interface = java::rmi::Naming->lookup(jstring("//localhost/Home"));
my $bean = $remote_interface->getMessage(jstring("Hi there"));
print $bean->getValue(), "n";
Thats all there is. Notice that all we had to tell Java::Import about was java.rmi.Naming, this is because it was the only class we used by name in our Perl code, every other Java class (the objects held by $bean and $remote_interface) was returned by some other method call originating from java.rmi.Naming.
In order to run this example we have to make sure everything is in its place. We start by compiling the client code. Assuming that we have been given a Stub class file (RemoteObject_Stub.class) we can do the following:
gcj -C SomeBean.java RemoteInterface.java
fastjar -cvf client.jar SomeBean.class RemoteInterface.class RemoteObject_Stub.class
Making sure our server is reachable we can then run the client code:
CLASSPATH=client.jar perl client.pl
Thats it, you should then see the message returned by your server.
<<lessMaking RMI calls from Perl
One nice thing about Java is the extremely straight forward manner in which it allows you to make calls to remote objects residing on distant servers. Many people use this ability as a point of integration between their system and a posible third party or legacy system. Unfortunatly, for the most part the ability to make calls to these remote objects is something that only other Java applications can do without making a big fuss about it. However, we can now do this from Perl.
Assume that I have a RMI server from which I can get data from in the form of simple Java Beans. One method of doing this is to use the GCJ::Cni library and natively compile and wrap a set of Java Classes which can then be used from my Perl script. However, there is an easier way.
Lets begin by descriping the Java interfaces that well be working with. We first have the Remote Interface that we will be interacting with:
import java.rmi.*;
public interface RemoteInterface extends Remote {
public SomeBean getMessage(String seedMessage) throws RemoteException;
}
And we also have the bean we will be asking for:
import java.io.*;
public class SomeBean implements Serializable {
private String value;
public SomeBean() {}
public void setValue ( String _value ) { ... }
public String getValue ( ) { ... }
}
As far as any Perl client program is concerned this is all we need to know about.
Now all there is left to do is write a client:
use Java::Import qw(
java.rmi.Naming
);
my $remote_interface = java::rmi::Naming->lookup(jstring("//localhost/Home"));
my $bean = $remote_interface->getMessage(jstring("Hi there"));
print $bean->getValue(), "n";
Thats all there is. Notice that all we had to tell Java::Import about was java.rmi.Naming, this is because it was the only class we used by name in our Perl code, every other Java class (the objects held by $bean and $remote_interface) was returned by some other method call originating from java.rmi.Naming.
In order to run this example we have to make sure everything is in its place. We start by compiling the client code. Assuming that we have been given a Stub class file (RemoteObject_Stub.class) we can do the following:
gcj -C SomeBean.java RemoteInterface.java
fastjar -cvf client.jar SomeBean.class RemoteInterface.class RemoteObject_Stub.class
Making sure our server is reachable we can then run the client code:
CLASSPATH=client.jar perl client.pl
Thats it, you should then see the message returned by your server.
Download (0.028MB)
Added: 2007-06-01 License: Perl Artistic License Price:
876 downloads
GNUstep examples 1.1.0
GNUstep examples is a collection of programs that are meant to show programmers how to use GNUstep. more>>
GNUstep examples is a collection of programs that are meant to show programmers how to use GNUstep.
GNUstep examples includes a calculator, a currency converter, finger, fractal, puzzle, hostaddress, and ink (a simple editor).
Enhancements:
- Minor feature enhancements
<<lessGNUstep examples includes a calculator, a currency converter, finger, fractal, puzzle, hostaddress, and ink (a simple editor).
Enhancements:
- Minor feature enhancements
Download (0.23MB)
Added: 2006-09-13 License: GPL (GNU General Public License) Price:
1140 downloads
DTLS Client/Server Example 0.2
DTLS Client/Server Example contains a simple DTLS client and DTLS server. more>>
DTLS Client/Server Example contains a simple DTLS client and DTLS server to show how to send UDP data over an encrypted channel using OpenSSL DTLSv1 support.
LIST OF FILES:
Directory: common - Contains callback functions and error reporting functions common to client and server
sslmgr.h
sslmgr.c
Directory: dtls_server
dtls_server.c - DTLS server part
Directory: dtls_client
dtls_client.c - DTLS client part
<<lessLIST OF FILES:
Directory: common - Contains callback functions and error reporting functions common to client and server
sslmgr.h
sslmgr.c
Directory: dtls_server
dtls_server.c - DTLS server part
Directory: dtls_client
dtls_client.c - DTLS client part
Download (0.010MB)
Added: 2006-11-03 License: Free For Educational Use Price:
1092 downloads
Learn HTML By Example 1.03
Learn HTML By Example is a sweet little JavaScript / HTML program. more>>
Learn HTML By Example is a sweet little JavaScript / HTML program that allows you to see the HTML you input into on side displayed as a web page on the other.
To install the program, just download it from Web Design Factory, and upload it to your web site.
Main features:
- Easy installation. Just upload to your web site and youre done!
- Immediate feedback on testing HTML and CSS code
- Several examples of commonly used HTML and CSS elements
- No page refreshing required
- Easy to expand by adding new examples
<<lessTo install the program, just download it from Web Design Factory, and upload it to your web site.
Main features:
- Easy installation. Just upload to your web site and youre done!
- Immediate feedback on testing HTML and CSS code
- Several examples of commonly used HTML and CSS elements
- No page refreshing required
- Easy to expand by adding new examples
Download (0.008MB)
Added: 2005-12-19 License: Freeware Price:
1406 downloads
iReport Designer for JasperReports 2.0.0
iReport is a visual reporting tool based on JasperReports and written in pure Java. more>>
iReport project is a powerful, intuitive and easy to use visual report builder/designer for JasperReports written in 100% pure java.
This tool allows users to visually edit complex reports with charts, images, subreports,.... iReport is integrated with JFreeChart, one of the most diffused OpenSource chart library for java.
The data to print can be retrieved through several ways including multiple JDBC connections, TableModels, JavaBeans, XML, etc...
Enhancements:
- Full support for JasperReports 1.3.4.
- A new XML field mapping tool.
- A new document structure outline.
- Improved refactoring capabilities.
- An improved report query dialog.
- An improved UI with sortable tables.
- Several bugfixes.
<<lessThis tool allows users to visually edit complex reports with charts, images, subreports,.... iReport is integrated with JFreeChart, one of the most diffused OpenSource chart library for java.
The data to print can be retrieved through several ways including multiple JDBC connections, TableModels, JavaBeans, XML, etc...
Enhancements:
- Full support for JasperReports 1.3.4.
- A new XML field mapping tool.
- A new document structure outline.
- Improved refactoring capabilities.
- An improved report query dialog.
- An improved UI with sortable tables.
- Several bugfixes.
Download (33.2MB)
Added: 2007-06-21 License: GPL (GNU General Public License) Price:
669 downloads
DBIx::Simple::Examples 1.30
DBIx::Simple provides a simplified interface to DBI, Perls powerful database module. more>>
[COPRIGHT=1]
EXAMPLES
General
#!/usr/bin/perl -w
use strict;
use DBIx::Simple;
# Instant database with DBD::SQLite
my $db = DBIx::Simple->connect(dbi:SQLite:dbname=file.dat)
or die DBIx::Simple->error;
# Connecting to a MySQL database
my $db = DBIx::Simple->connect(
DBI:mysql:database=test, # DBI source specification
test, test, # Username and password
{ RaiseError => 1 } # Additional options
);
# Using an existing database handle
my $db = DBIx::Simple->connect($dbh);
# Abstracted example: $db->query($query, @variables)->what_you_want;
$db->commit or die $db->error;
Simple Queries
$db->query(DELETE FROM foo WHERE id = ?, $id) or die $db->error;
for (1..100) {
$db->query(
INSERT INTO randomvalues VALUES (?, ?),
int rand(10),
int rand(10)
) or die $db->error;
}
$db->query(
INSERT INTO sometable VALUES (??),
$first, $second, $third, $fourth, $fifth, $sixth
);
# (??) is expanded to (?, ?, ?, ?, ?, ?) automatically
Single row queries
my ($two) = $db->query(SELECT 1 + 1)->list;
my ($three, $four) = $db->query(SELECT 3, 2 + 2)->list;
my ($name, $email) = $db->query(
SELECT name, email FROM people WHERE email = ? LIMIT 1,
$mail
)->list;
Or, more efficiently:
$db->query(SELECT 1 + 1)->into(my $two);
$db->query(SELECT 3, 2 + 2)->into(my ($three, $four));
$db->query(
SELECT name, email FROM people WHERE email = ? LIMIT 1,
$mail
)->into(my ($name, $email));
<<lessEXAMPLES
General
#!/usr/bin/perl -w
use strict;
use DBIx::Simple;
# Instant database with DBD::SQLite
my $db = DBIx::Simple->connect(dbi:SQLite:dbname=file.dat)
or die DBIx::Simple->error;
# Connecting to a MySQL database
my $db = DBIx::Simple->connect(
DBI:mysql:database=test, # DBI source specification
test, test, # Username and password
{ RaiseError => 1 } # Additional options
);
# Using an existing database handle
my $db = DBIx::Simple->connect($dbh);
# Abstracted example: $db->query($query, @variables)->what_you_want;
$db->commit or die $db->error;
Simple Queries
$db->query(DELETE FROM foo WHERE id = ?, $id) or die $db->error;
for (1..100) {
$db->query(
INSERT INTO randomvalues VALUES (?, ?),
int rand(10),
int rand(10)
) or die $db->error;
}
$db->query(
INSERT INTO sometable VALUES (??),
$first, $second, $third, $fourth, $fifth, $sixth
);
# (??) is expanded to (?, ?, ?, ?, ?, ?) automatically
Single row queries
my ($two) = $db->query(SELECT 1 + 1)->list;
my ($three, $four) = $db->query(SELECT 3, 2 + 2)->list;
my ($name, $email) = $db->query(
SELECT name, email FROM people WHERE email = ? LIMIT 1,
)->list;
Or, more efficiently:
$db->query(SELECT 1 + 1)->into(my $two);
$db->query(SELECT 3, 2 + 2)->into(my ($three, $four));
$db->query(
SELECT name, email FROM people WHERE email = ? LIMIT 1,
)->into(my ($name, $email));
Download (0.015MB)
Added: 2007-05-10 License: Public Domain Price:
897 downloads
SWTJasperViewer 1.1.1
SWTJasperViewer is a JasperReports viewer component for SWT/JFace based applications and Eclipse plug-ins. more>>
SWTJasperViewer is a JasperReports viewer component for SWT/JFace based applications and Eclipse plug-ins. The component is designed with reusability in mind so it can suit as many projects as possible.
SWTJasperViewer is developed as part of the JasperAssistant report designer where its used for report preview.
SWTJasperViewer component is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 2.1 of the License, or (at your option) any later version.
Main features:
- "What you see is what you get" visual report designer.
- Complete integration with Eclipse IDE environment.
- An integrated report compiler.
- Report preview support
- Report Export wizard
- Support for compiled report files (*.jasper)
- Drag-and-drop interface.
- Unlimited Undo/Redo support.
- Cut/Copy/Paste support.
- Properties View.
- Outline View.
- Problems/Tasks View.
- Intuitive Context Menus.
- A dedicated toolbar for text objects.
- Zoom support.
- A customizable palette.
- A comprehensive set of align and resize actions.
- Intuitive Expression Editor.
- Integrated user documentation.
- Field Wizard.
- Grid and Snap To Grid support.
- Rulers, Guides and Snap to Guides support.
- Extensible shortcuts support.
- Full support for JasperReports data sources.
<<lessSWTJasperViewer is developed as part of the JasperAssistant report designer where its used for report preview.
SWTJasperViewer component is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 2.1 of the License, or (at your option) any later version.
Main features:
- "What you see is what you get" visual report designer.
- Complete integration with Eclipse IDE environment.
- An integrated report compiler.
- Report preview support
- Report Export wizard
- Support for compiled report files (*.jasper)
- Drag-and-drop interface.
- Unlimited Undo/Redo support.
- Cut/Copy/Paste support.
- Properties View.
- Outline View.
- Problems/Tasks View.
- Intuitive Context Menus.
- A dedicated toolbar for text objects.
- Zoom support.
- A customizable palette.
- A comprehensive set of align and resize actions.
- Intuitive Expression Editor.
- Integrated user documentation.
- Field Wizard.
- Grid and Snap To Grid support.
- Rulers, Guides and Snap to Guides support.
- Extensible shortcuts support.
- Full support for JasperReports data sources.
Download (MB)
Added: 2007-07-06 License: LGPL (GNU Lesser General Public License) Price:
845 downloads
GCJ::Cni::Examples 0.03
GCJ::Cni::Examples is a Perl module with examples of how to use GCJs CNI interface to write Perl Modules in Java. more>>
GCJ::Cni::Examples is a Perl module with examples of how to use GCJs CNI interface to write Perl Modules in Java.
EXAMPLES
Writing Treaded modules in Java
One benefit of using GCJ is that it takes advantage of POSIX threading. This is nice since Perls threading model is, shall we say, less than ideal. Now, you could theoretically write a module in C or C++ and and use the standard POSIX library to do your threaded work for you, however, why not take advantage of the nice Threading interface that Java provides to you by default. This may also come in handy if you have a massively threaded Java library that youd like to call from Perl.
For this example assume that I want to do matrix multiplication, albeit in a very crazy manner. Therefore, I will write a Java class, Matrix, and a method, multiply, which will take another matrix to perform the operation between. Heres the crazy part, for each cell in the resulting matrix I will spawn a new thread, as an internal class, and give it a row and a column from which they will derive the result. I know this is a little wierd but the point is that Ill be spawning a lot of new threads. To multiply two 10x10 matrices we will have to spawn 100 threads (one thread per cell in the resulting 10x10 matrix). Imagine doing this in Perl, then imagine doing it in Java; natively compiled Java. Much faster and a lot less headaches.
The Java Interface/pseudocode is as follows:
public class Matrix {
public Matrix ( int numRows, int numCols ) {
...Constructor stuff...
}
public void set ( int row, int col, int val ) {
...set an element...
}
public int get ( int row, int col ) {
...get an element...
}
public Matrix multiply ( Matrix times ) {
...set it up...
for ( int i = 0; i < rows; i++ ) {
for ( int j = 0; j < times.getCols(); j++ ) {
//GO NUTS!!!!
ArrayMultiplier multiplier = new ArrayMultiplier(this, times, result, i, j);
multiplier.start();
...etc...
}
}
...wait for the threads to exit and return the new matrix...
}
public int getRows ( ) {
...get number of rows...
}
public int getCols ( ) {
...get number of columns...
}
public void print ( ) {
...print the matrix to stdout...
}
private class ArrayMultiplier extends Thread {
public ArrayMultiplier ( Matrix a, Matrix b, Matrix result, int row, int col ) {
...Construct this bad boy...
}
public void run ( ) {
int sum = 0;
for ( int i = 0; i < a.getCols(); i++ ) {
sum += (a.get(row, i) * b.get(i, col));
}
result.set(row, col, sum);
}
}
}
Now, we want to call this class from Perl. My perferred manner is through SWIG so thats what were going to use. However, you do not need to use SWIG, you can use whatever method you prefer when wrapping C++ classes. We begin by creating a C++ header file from our above class. This is done by using GCJs gcjh utility. First we need to class compile Matrix.java
gcj -C Matrix.java
Then we go ahead and create the header file:
gcjh Matrix
Easy enough. We can then extract the interface we want to have available in Perl from the generated header file and from it create a i file to be used as input to SWIG. I usually start by copying my header file to the same named file but with an i extension instead. I then remove all of the grimy C++ gruff, private methods and variables, slap a module directive on it and call it done. It wont always be this easy though. When youre done an interface file for the above class should look something like this:
%module Matrix;
typedef int jint;
class Matrix
{
public:
Matrix (jint, jint);
virtual void set (jint, jint, jint);
virtual jint get (jint, jint);
virtual ::Matrix *multiply (::Matrix *);
virtual jint getRows ();
virtual jint getCols ();
virtual void print ();
};
We then put SWIG to work and generate our C++ wrapper for Perl:
swig -perl -c++ Matrix.i
After the above command we now will see two new files in our current directory, Matrix.pm and Matrix_wrap.cxx; these correspond the module directive we gave in Matrix.i.
At this point all we have left to do is compile, and use.
gcj -c Matrix.java
gcc -c -I -include Matrix.h Matrix_wrap.cxx
gcc -shared -lgcj -lstdc++ Matrix.o Matrix_wrap.o -oMatrix.so
A simple Perl file using this module might look something like:
sub populate_matrix {
my $matrix = shift;
for ( my $i = 0; $i < $matrix->getRows(); $i++ ) {
for ( my $j = 0; $j < $matrix->getCols(); $j++ ) {
$matrix->set($i, $j, $i * $j);
}
}
}
use GCJ::Cni;
use Matrix;
GCJ::Cni::JvCreateJavaVM(undef);
GCJ::Cni::JvAttachCurrentThread(undef, undef);
my $matrix = new Matrix::Matrix(10, 10);
populate_matrix($matrix);
my $matrix2 = new Matrix::Matrix(10, 10);
populate_matrix($matrix2);
$matrix3 = $matrix->multiply($matrix2);
$matrix3->print();
GCJ::Cni::JvDetachCurrentThread();
Ill leave it up to the reader to write a Perl module that does the same thing, that is, spawns 100 threads. In my own personal fiddling I found that just spawning that many threads (never mind doing any kind of work) was over 3 time slower in Perl. In this situation we at least get to use our favorite language, Perl, and offload some of the heavy hitting to a language more suited for it.
Where this really comes in handy is when you have an existing multi-threaded Java library that you would like to expose to Perl. You could theoretically natively compile various components of your library and then generate Perl bindings to access it. In this way, you get a little extra speed and efficiency as well as code reuse and binding.
<<lessEXAMPLES
Writing Treaded modules in Java
One benefit of using GCJ is that it takes advantage of POSIX threading. This is nice since Perls threading model is, shall we say, less than ideal. Now, you could theoretically write a module in C or C++ and and use the standard POSIX library to do your threaded work for you, however, why not take advantage of the nice Threading interface that Java provides to you by default. This may also come in handy if you have a massively threaded Java library that youd like to call from Perl.
For this example assume that I want to do matrix multiplication, albeit in a very crazy manner. Therefore, I will write a Java class, Matrix, and a method, multiply, which will take another matrix to perform the operation between. Heres the crazy part, for each cell in the resulting matrix I will spawn a new thread, as an internal class, and give it a row and a column from which they will derive the result. I know this is a little wierd but the point is that Ill be spawning a lot of new threads. To multiply two 10x10 matrices we will have to spawn 100 threads (one thread per cell in the resulting 10x10 matrix). Imagine doing this in Perl, then imagine doing it in Java; natively compiled Java. Much faster and a lot less headaches.
The Java Interface/pseudocode is as follows:
public class Matrix {
public Matrix ( int numRows, int numCols ) {
...Constructor stuff...
}
public void set ( int row, int col, int val ) {
...set an element...
}
public int get ( int row, int col ) {
...get an element...
}
public Matrix multiply ( Matrix times ) {
...set it up...
for ( int i = 0; i < rows; i++ ) {
for ( int j = 0; j < times.getCols(); j++ ) {
//GO NUTS!!!!
ArrayMultiplier multiplier = new ArrayMultiplier(this, times, result, i, j);
multiplier.start();
...etc...
}
}
...wait for the threads to exit and return the new matrix...
}
public int getRows ( ) {
...get number of rows...
}
public int getCols ( ) {
...get number of columns...
}
public void print ( ) {
...print the matrix to stdout...
}
private class ArrayMultiplier extends Thread {
public ArrayMultiplier ( Matrix a, Matrix b, Matrix result, int row, int col ) {
...Construct this bad boy...
}
public void run ( ) {
int sum = 0;
for ( int i = 0; i < a.getCols(); i++ ) {
sum += (a.get(row, i) * b.get(i, col));
}
result.set(row, col, sum);
}
}
}
Now, we want to call this class from Perl. My perferred manner is through SWIG so thats what were going to use. However, you do not need to use SWIG, you can use whatever method you prefer when wrapping C++ classes. We begin by creating a C++ header file from our above class. This is done by using GCJs gcjh utility. First we need to class compile Matrix.java
gcj -C Matrix.java
Then we go ahead and create the header file:
gcjh Matrix
Easy enough. We can then extract the interface we want to have available in Perl from the generated header file and from it create a i file to be used as input to SWIG. I usually start by copying my header file to the same named file but with an i extension instead. I then remove all of the grimy C++ gruff, private methods and variables, slap a module directive on it and call it done. It wont always be this easy though. When youre done an interface file for the above class should look something like this:
%module Matrix;
typedef int jint;
class Matrix
{
public:
Matrix (jint, jint);
virtual void set (jint, jint, jint);
virtual jint get (jint, jint);
virtual ::Matrix *multiply (::Matrix *);
virtual jint getRows ();
virtual jint getCols ();
virtual void print ();
};
We then put SWIG to work and generate our C++ wrapper for Perl:
swig -perl -c++ Matrix.i
After the above command we now will see two new files in our current directory, Matrix.pm and Matrix_wrap.cxx; these correspond the module directive we gave in Matrix.i.
At this point all we have left to do is compile, and use.
gcj -c Matrix.java
gcc -c -I -include Matrix.h Matrix_wrap.cxx
gcc -shared -lgcj -lstdc++ Matrix.o Matrix_wrap.o -oMatrix.so
A simple Perl file using this module might look something like:
sub populate_matrix {
my $matrix = shift;
for ( my $i = 0; $i < $matrix->getRows(); $i++ ) {
for ( my $j = 0; $j < $matrix->getCols(); $j++ ) {
$matrix->set($i, $j, $i * $j);
}
}
}
use GCJ::Cni;
use Matrix;
GCJ::Cni::JvCreateJavaVM(undef);
GCJ::Cni::JvAttachCurrentThread(undef, undef);
my $matrix = new Matrix::Matrix(10, 10);
populate_matrix($matrix);
my $matrix2 = new Matrix::Matrix(10, 10);
populate_matrix($matrix2);
$matrix3 = $matrix->multiply($matrix2);
$matrix3->print();
GCJ::Cni::JvDetachCurrentThread();
Ill leave it up to the reader to write a Perl module that does the same thing, that is, spawns 100 threads. In my own personal fiddling I found that just spawning that many threads (never mind doing any kind of work) was over 3 time slower in Perl. In this situation we at least get to use our favorite language, Perl, and offload some of the heavy hitting to a language more suited for it.
Where this really comes in handy is when you have an existing multi-threaded Java library that you would like to expose to Perl. You could theoretically natively compile various components of your library and then generate Perl bindings to access it. In this way, you get a little extra speed and efficiency as well as code reuse and binding.
Download (0.020MB)
Added: 2007-06-04 License: Perl Artistic License Price:
877 downloads
dANN 0.1-alpha-RC2 (Examples)
dANN project is a library to help create artificial neural networks within other programs. more>>
dANN library can help create artificial neural networks within other programs. It is currently written in Java, C++, and C#. However, C++ and C# versions can only be obtained through the SVN at the moment.
Also, the C++ and C# versions are not properly documented and cleaned up, although they work. The Java version of the library is well documented and packaged in binary and source form.
The intent is to provide a powerful interface for programs to include artificial neural network technology into their code. It will also act as a testing ground for research and development of new AI concepts.
Enhancements:
- This release was updated to work with the new library layout.
<<lessAlso, the C++ and C# versions are not properly documented and cleaned up, although they work. The Java version of the library is well documented and packaged in binary and source form.
The intent is to provide a powerful interface for programs to include artificial neural network technology into their code. It will also act as a testing ground for research and development of new AI concepts.
Enhancements:
- This release was updated to work with the new library layout.
Download (0.006MB)
Added: 2006-06-03 License: GPL (GNU General Public License) Price:
1239 downloads
WWW::Mechanize::Examples 1.30
WWW::Mechanize::Examples is a Perl module with sample programs that use WWW::Mechanize. more>>
SYNOPSIS
Plenty of people have learned WWW::Mechanize, and now, you can too!
Following are user-supplied samples of WWW::Mechanize in action.
You can also look at the t/*.t files in the distribution.
Please note that these examples are not intended to do any specific task. For all I know, theyre no longer functional because the sites they hit have changed. Theyre here to give examples of how people have used WWW::Mechanize.
Note that the examples are in reverse order of my having received them, so the freshest examples are always at the top.
Starbucks Density Calculator, by Nat Torkington
Heres a pair of scripts from Nat Torkington, editor for OReilly Media and co-author of the Perl Cookbook.
Rael [Dornfest] discovered that you can easily find out how many Starbucks there are in an area by searching for "Starbucks". So I wrote a silly scraper for some old census data and came up with some Starbucks density figures. Theres no meaning to these numbers thanks to errors from using old census data coupled with false positives in Yahoo search (e.g., "Dodie Starbuck-Your Style Desgn" in Portland OR). But it was fun to waste a night on.
Here are the top twenty cities in descending order of population, with the amount of territory each Starbucks has. E.g., A New York NY Starbucks covers 1.7 square miles of ground.
New York, NY 1.7
Los Angeles, CA 1.2
Chicago, IL 1.0
Houston, TX 4.6
Philadelphia, PA 6.8
San Diego, CA 2.7
Detroit, MI 19.9
Dallas, TX 2.7
Phoenix, AZ 4.1
San Antonio, TX 12.3
San Jose, CA 1.1
Baltimore, MD 3.9
Indianapolis, IN 12.1
San Francisco, CA 0.5
Jacksonville, FL 39.9
Columbus, OH 7.3
Milwaukee, WI 5.1
Memphis, TN 15.1
Washington, DC 1.4
Boston, MA 0.5
Download (0.10MB)
Added: 2007-07-20 License: Perl Artistic License Price:
828 downloads

BitNami JasperServer Stack for Linux 3.0.0
part of the JasperSoft business intelligence suite, built by the developers more>> JasperServer is part of the JasperSoft business intelligence suite, built by the developers of JasperReports, the leading open source reporting engine. It provides a Web and Web services based environment for reporting, data analysis (OLAP), and data integration.
JasperServer is a high-performance report server and business intelligence platform designed for developers and businesses. Deploy JasperServer when:
-Users need to create their own ad hoc queries, reports, charts,
-crosstabs, and dashboards It becomes necessary to securely store, schedule, distribute, share, drill-down, or interact with reports.
The BitNami JasperServer Stack is an installer that greatly simplifies the installation of JasperServer and runtime dependencies. It includes ready-to-run versions of Apache-Tomcat, MySQL and Java. JasperServer Stack is distributed for free under the Apache 2.0 license. Please see the appendix for the specific licenses of all Open Source components included.
FEATURES
- Easy to Install
BitNami Stacks are built with one goal in mind: to make it as easy as possible to install open source software. Our installers completely automate the process of installing and configuring all of the software included in each Stack, so you can have everything up and running in just a few clicks.
- Independent
BitNami Stacks are completely self-contained, and therefore do not interfere with any software already installed on your system. For example, you can upgrade your systems MySQL or Apache Tomcat without fear of breaking your BitNami Stack.
- Integrated
By the time you click the finish button on the installer, the whole stack will be integrated, configured and ready to go.
- Relocatable
BitNami Stacks can be installed in any directory. This allows you to have multiple instances of the same stack, without them interfering with each other.<<less
Download (123.25MB)
Added: 2009-04-28 License: Freeware Price: Free
182 downloads
Apache2::ASP::Server 1.15
Apache2::ASP::Server is an utility object for Apache2::ASP programming. more>>
Apache2::ASP::Server is an utility object for Apache2::ASP programming.
The global $Server object is used in ASP programming for utility tasks such as string sanitation, finding files, sending email and registering subroutines to be performed asynchronously.
URLEncode( $str )
Returns a URL-Encoded version of the string provided.
For example, "test@test.com" becomes "test%40test.com" with URLEncode().
HTMLEncode( $str )
Returns an HTML-Encoded version of the string provided.
For example, "< b>Hello< /b>" becomes "Hello" with HTMLEncode().
HTMLDecode( $str )
Returns an HTML-Decoded version of the string provided.
For example, "Hello" becomes "Hello" with HTMLDecode().
MapPath( $path )
Given a relative path MapPath() returns the absolute path to the file on disk.
For example, /index.asp might return /usr/local/dstack/www/index.asp.
Mail( %args )
A wrapper around the sendmail() function from Mail::Sendmail.
RegisterCleanup( $sub )
A wrapper around the function cleanup_register( $sub ) function provided by mod_perl2.
Pass in a subref that should be executed after the current request has completed.
For example:
< %
$Server->RegisterCleanup(sub { do_something_later() });
# Do more stuff here:
$Response->Write("Hello!");
% >
<<lessThe global $Server object is used in ASP programming for utility tasks such as string sanitation, finding files, sending email and registering subroutines to be performed asynchronously.
URLEncode( $str )
Returns a URL-Encoded version of the string provided.
For example, "test@test.com" becomes "test%40test.com" with URLEncode().
HTMLEncode( $str )
Returns an HTML-Encoded version of the string provided.
For example, "< b>Hello< /b>" becomes "Hello" with HTMLEncode().
HTMLDecode( $str )
Returns an HTML-Decoded version of the string provided.
For example, "Hello" becomes "Hello" with HTMLDecode().
MapPath( $path )
Given a relative path MapPath() returns the absolute path to the file on disk.
For example, /index.asp might return /usr/local/dstack/www/index.asp.
Mail( %args )
A wrapper around the sendmail() function from Mail::Sendmail.
RegisterCleanup( $sub )
A wrapper around the function cleanup_register( $sub ) function provided by mod_perl2.
Pass in a subref that should be executed after the current request has completed.
For example:
< %
$Server->RegisterCleanup(sub { do_something_later() });
# Do more stuff here:
$Response->Write("Hello!");
% >
Download (0.060MB)
Added: 2007-07-12 License: Perl Artistic License Price:
836 downloads
Catalyst::Example::InstantCRUD 0.0.18
Catalyst::Example::InstantCRUD is a CRUD scaffolding for Catalyst. more>>
Catalyst::Example::InstantCRUD is a CRUD scaffolding for Catalyst.
SYNOPSIS
instantcrud.pl -name=My::App -dsn=dbi:Pg:dbname=CE -user=zby -password=pass
The instantcrud.pl executable creates a skeleton CRUD application in current directory. The parameters are: name of the application and database connection details.
The script will create CRUD interface (CReate, Update, Delete) with paging and sort for all tables defined in the accessed database. The Create and Update forms let you manipulate also on relations (even many to many). It includes some basic authentication code.
I am waiting for suggestions what else basic functionality would be nice to have in the generated application.
When the code is generated you can run the application:
$ My-App/script/my_app_server.pl
You can connect to your server at http://zby.aster.net.pl:3000
To access the CRUD interface to the tables you need to add /tablename (in lowercase) to the address: http://localhost:3000/tablename (Note that if the table name has a underscore, that underscore should be deleted in the address so table foo_bar is available at http://localhost:3000/foobar, this is due to some conversions made by the underlying libraries).
The generated application will use DBIx::Class for model classes and Template::Toolkit for View.
CUSTOMISATION AND EXTENDING
The first place for customisations are the Template Toolkit templates and the CSS file. The CSS file used by the application is root/static/pagingandsort.css. The templates are generated in directories named after the controllers in the root directory.
To customize the forms used for creation and modification of records you can modify the interface_config.dat file generated in the application main directory. For now its content is a dump of a perl structure. I hope it is enough self explanatory for some simple modifications. The most basic one should be deleting some field, by deleting its hash from the list, and changing the order of fields.
The generated controller is a subclass of Catalyst::Example::Controller::InstantCRUD. You can use the standard OO technique of overriding the documented methods to customize and extend it.
<<lessSYNOPSIS
instantcrud.pl -name=My::App -dsn=dbi:Pg:dbname=CE -user=zby -password=pass
The instantcrud.pl executable creates a skeleton CRUD application in current directory. The parameters are: name of the application and database connection details.
The script will create CRUD interface (CReate, Update, Delete) with paging and sort for all tables defined in the accessed database. The Create and Update forms let you manipulate also on relations (even many to many). It includes some basic authentication code.
I am waiting for suggestions what else basic functionality would be nice to have in the generated application.
When the code is generated you can run the application:
$ My-App/script/my_app_server.pl
You can connect to your server at http://zby.aster.net.pl:3000
To access the CRUD interface to the tables you need to add /tablename (in lowercase) to the address: http://localhost:3000/tablename (Note that if the table name has a underscore, that underscore should be deleted in the address so table foo_bar is available at http://localhost:3000/foobar, this is due to some conversions made by the underlying libraries).
The generated application will use DBIx::Class for model classes and Template::Toolkit for View.
CUSTOMISATION AND EXTENDING
The first place for customisations are the Template Toolkit templates and the CSS file. The CSS file used by the application is root/static/pagingandsort.css. The templates are generated in directories named after the controllers in the root directory.
To customize the forms used for creation and modification of records you can modify the interface_config.dat file generated in the application main directory. For now its content is a dump of a perl structure. I hope it is enough self explanatory for some simple modifications. The most basic one should be deleting some field, by deleting its hash from the list, and changing the order of fields.
The generated controller is a subclass of Catalyst::Example::Controller::InstantCRUD. You can use the standard OO technique of overriding the documented methods to customize and extend it.
Download (0.032MB)
Added: 2007-01-18 License: Perl Artistic License Price:
1009 downloads
php_writeexcel 0.3.0
php_writeexcel is a port of John McNamaras excellent Spreadsheet::WriteExcel Perl package to PHP. more>>
php_writeexcel is a port of John McNamaras excellent Spreadsheet::WriteExcel Perl package to PHP. It allows you to generate Microsoft Excel documents on your PHP enabled Web server without any other tools.
Ive included six example PHP scripts which are also taken out of the
Spreadsheet::WriteExcel package and ported to PHP:
- example-simple.php
- example-merge2.php
- example-stocks.php
- example-textwrap.php
- example-demo.php
- example-bigfile.php
All you have to do is to tar xzvf the package to a directory accessible via a web server. Then fetch any of the example scripts with your favourite web browser and Excel should come into place and show you a sheet.
Basically all features of Spreadsheet::WriteExcel are supported and thanks to a lot of people (see CHANGELOG) who contributed code and bug fixes, most things seem to work. However, please remember that its still in beta stage, so there are probably some bugs left.
Spreadsheet::WriteExcel uses the Parse::RecDescent package for formula support. Andreas Brodowski has imported and changed the PEAR::Spreadsheet Parser.php file, so formulas are supported since version 0.2.2.
Spreadsheet::WriteExcel uses the OLE::Storage_Lite package for supporting Excel files bigger than approx. 7 MB. I have ported this package already and called it php_ole. But I really dont know how reliable it is, so use it with care!
Enhancements:
- PHP5 compatibility has been added.
- Several bugs have been fixed.
<<lessIve included six example PHP scripts which are also taken out of the
Spreadsheet::WriteExcel package and ported to PHP:
- example-simple.php
- example-merge2.php
- example-stocks.php
- example-textwrap.php
- example-demo.php
- example-bigfile.php
All you have to do is to tar xzvf the package to a directory accessible via a web server. Then fetch any of the example scripts with your favourite web browser and Excel should come into place and show you a sheet.
Basically all features of Spreadsheet::WriteExcel are supported and thanks to a lot of people (see CHANGELOG) who contributed code and bug fixes, most things seem to work. However, please remember that its still in beta stage, so there are probably some bugs left.
Spreadsheet::WriteExcel uses the Parse::RecDescent package for formula support. Andreas Brodowski has imported and changed the PEAR::Spreadsheet Parser.php file, so formulas are supported since version 0.2.2.
Spreadsheet::WriteExcel uses the OLE::Storage_Lite package for supporting Excel files bigger than approx. 7 MB. I have ported this package already and called it php_ole. But I really dont know how reliable it is, so use it with care!
Enhancements:
- PHP5 compatibility has been added.
- Several bugs have been fixed.
Download (0.070MB)
Added: 2005-11-02 License: LGPL (GNU Lesser General Public License) Price:
1458 downloads
Secleted [ 0 ] software to compare
Copyright Notice:
Software piracy is theft, Using crack, password, serial numbers, registration codes, key generators is illegal and prevent future software development. The above jasperreports example search only lists software in full, demo and trial versions for free download. Download links are directly from our mirror sites or publisher sites, torrent files or links from rapidshare.com, yousendit.com or megaupload.com are not allowed