kelompok 07 itb-seamolec batch 5

advertisement
TUGAS – KAMIS 01-12-2011
MENCARI ENGINE J2SE, J2EE, J2ME
KELOMPOK 07 ITB-SEAMOLEC BATCH 5
ADE SURYA ISKANDAR
ESHA RAMADIANSYAH
SELLY ARTATY ZEGA
A.
No.
1.
J2SE
Engine
BlueCove
Description
BlueCove adalah Java library untuk Bluetooth (JSR-82 implementation) yang
bertatapmuka dengan Mac OS X, WIDCOMM, BlueSoleil dan Microsoft
Bluetooth stack pada Windows XP SP2 atau Windows Vista dan WIDCOMM
dan Microsoft Bluetooth stack pada Windows Mobil.
BlueCove-GPL merupakan modul tambahan GPL licensed untuk mendukung
BlueCove runtime pada Linux BlueZ. Sedangkan BlueCove JSR-82 Emulator
module is modul tambahan untuk BlueCove yang mensimulasikan Bluetooth
stack.
BlueCove dapat digunakan pada Java Standard Edition (J2SE) 1.1 stsu versi
terbaru lainnya.
BlueCove telah diujicoba pada JVM:















Apache Harmony - Open Source Java SE 5.0M5 on Win XP 32 bit
SUN Java 1.1.8 on Windows XP/X86
SUN Java 2 Platform Standard Edition 1.4.2 on Windows XP/X86
SUN Java 2 Platform Standard Edition 5.0 on Windows XP/X86
SUN Java 2 Platform Standard Edition 6.0 on Windows XP/X86 and
Windows Vista
SUN Sun Java Toolkit for CDC 1.0 on Windows XP/X86 (Need custom
made dlls with __cdecl exports)
WebSphere Everyplace Micro Environment 5.7.2, CDC
1.0/Foundation 1.0/Personal Profile 1.0 on Windows XP/X86
WebSphere Everyplace Micro Environment 6.1.1, CDC
1.0/Foundation 1.0/Personal Profile 1.0 on Windows XP and
Linux/X86
WebSphere Everyplace Micro Environment 5.7.2, CLDC 1.1, MIDP
2.0 on Windows XP/X86
WebSphere Everyplace Micro Environment 6.1.1, CLDC 1.1, MIDP
2.0 on Linux/X86
Mysaifu JVM - An open-source (GPL v.2 license) Java VM on
Windows Mobile 2003 Second Edition.
Java for Mac OS X 10.4 and 10.5, Release 5 on PowerPC and Intel
processors
SUN Java 2 SE 5.0 on Linux Fedora 6 i386 BlueZ 3.7, Fedora 7 i386
BlueZ 3.9, (Also tested on Ubuntu and OpenSUSE, i386 and 64-bit)
GNU libgcj 4.1.2 on Fedora 7 i386 BlueZ 3.9
SableVM on Debian 4.0r3 ARM on Linksys NSLU2
BlueCove menyediakan JSR-82 Java interface untuk Bluetooth Profiles:




SDAP - Service Discovery Application Profile
RFCOMM - Serial Cable Emulation Protocol
L2CAP - Logical Link Control and Adaptation Protocol
OBEX - Generic Object Exchange Profile (GOEP) profile on top of
RFCOMM and TCP
BlueCove examples


BlueCove OBEX Push J2ME application .
MIDlet application Mobile GMaps created by Cristian Streng will
connect to GPS receiver over bluetooth.
BlueCove provides an implementation of the JSR 82. Applications should use
API defined in JSR-82 . You may find many examples on the internet
describing the usage of JSR 82.
We created short (50 lines of code each) examples for you to get started
with JSR-82 application development:




Remote Device Discovery
Services Search
OBEX Put Client
OBEX Put Server
Legal
BlueCove is licensed under Apache License, Version 2.0 . The license allows
linking and distributing commercial software with BlueCove.
BlueCove BlueZ module is licensed under GNU General Public License .
For various technical and legal reasons, BlueCove library is not legally
referred to as an implementation of JSR-82 . In order to legally refer to a
piece of software as a JSR, it must pass the JSR-82 TCK or Sun TCK . Current
BlueCove JSR-82 TCK compatibility status can be found here . Mainly there
are some missing APIs in native stacks to implement full TCK compatibility.
2.
Webcab
3.
Javolution
Java API Components offering refined numerical procedures to either
construct a function of one or two variables from a set of points (i.e.
interpolate), or solve an equation of one variable. The interpolation
procedures provided include Newton polynomials, Lagrange's formula,
Burlisch-Stoer algorithm, Cubic splines (natural and free), Bicubic
interpolation and procedures for find the interpolation functions
coefficients. In order to solve an equation we provide the Van WijngaardenDekker-Brent algorithm, interval bisection method, secant and false
position, Newton-Raphson method and Ridders' method. This suite includes
the following features: 1) Interpolation Module: polynomial interpolation
and extrapolation, coefficients of an interpolating polynomial, interpolation
and extrapolation in two or more dimensions.2) Equation Solver Module:
Interval Method, Secant Method, Brent's Algorithm, Ridders' Method,
Method of Regula Falsi, Method of Regula Falsi, Newton-Raphson Method,
Fail-Safe Newton-Raphson Method.
Javolution real-time goal: To make your application faster and more time
predictable!
That being accomplished through:







High performance and time-deterministic (real-time) util / lang /
text / io / xml base classes.
Context programming in order to achieve true separation of
concerns (logging, performance, etc).
A testing framework addressing not only unit tests but also
performance and regression tests as well.
Straightforward and low-level parallel computing capabilities with
ConcurrentContext.
Struct and Union base classes for direct interfacing with native
applications (e.g. C/C++).
World's fastest and first hard real-time XML
marshalling/unmarshalling facility.
Simple yet flexible configuration management of your application.
10 Alasan menggunakan Javolution
1. Javolution classes are simple to use, even simpler than most JDK
classes. You don't need to guess the capacity of a TextBuilder,
FastTable or a FastMap, their size expand gently without ever
incurring expensive resize/copy or rehash operations (unlike
StringBuilder, ArrayList or HashMap).
2. Developers may achieve true separation of concerns (e.g. logging,
configuration) through Context Programming or by using classes
such as Configurable.
3. Javolution classes are fast, very fast (e.g. Text insertion/deletion in
O[Log(n)] instead of O[n] for standard StringBuffer/StringBuilder).
4. All Javolution classes are hard real-time compliant and have highly
deterministic behavior (in the microsecond range). Furthermore
(unlike the standard library), Javolution is RTSJ safe (no memory
clash or memory leak when used with Java Real-Time extension).
5. Javolution makes it easy for concurrent algorithms to take
advantage of multi-processors systems.
6. Javolution's real-time collection classes (map, list, table and set) can
be used in place of most standard collection classes and provide
numerous additional capabilities.
7. Any Java class can be serialized/deserialized in XML format in any
form you may want, also no need to implement Serializable or for
the platform to support serialization
8. Javolution provides Struct and Union classes for direct
interoperability with C/C++ applications.
9. Javolution runs on most platforms from the simplest J2ME CLDC 1.1
to the latest J2EE 5.0 with parameterized types.
10. Javolution is a pure Java Solution (no native code), small (less than
300 KBytes jar file) and free; permission to use, copy, modify, and
distribute this software is freely granted, provided that copyright
notices are preserved (BSD License).
Tools:
Runtime Environment: Any (J2ME CLDC, J2SE, J2EE, GCJ, Excelsior JET)
Compilers: All (including GNU Compiler for Java)
Build tool: Apache Ant
Collaborative Tool: java.net (code development, comments, issues, bug
reporting).
Style Guide: Coding Standard Addendum.
Preferred Environment: Eclipse (UTF-8 Encoding) and NetBeans
Plug-In: JavoClipse (v1.0.48) - Eclipse plug-in to generate xml formats from
source code.
(questions/comments can be sent directly to the javoclipse mailing
list)
Others: Colapi - Maven Plugin to format/colorize Java code in API
documentation.
4.
Jsch
JSch - Java Secure Channel
JSch is a pure Java implementation of SSH2.
JSch allows you to connect to an sshd server and use port forwarding, X11
forwarding, file transfer, etc., and you can integrate its functionality into
your own Java programs. JSch is licensed under BSD style license.
Why JSch?
Originally, our motivation to develop this stuff is to allow users of our pure
java X servers, WiredX, to enjoy secure X sessions. So, our efforts had mostly
targeted to implement the SSH2 protocol for X11 forwarding. Of course,
however, we are now also interested in adding other functionality like port
forward, file transfer, terminal emulation, etc.
SSH2
Needless to say, SSH provides support for secure remote login, secure file
transfer, and secure TCP/IP and X11 forwarding. It can automatically
encrypt, authenticate, and compress transmitted data. The SSH protocol is
available in two incompatible varieties: SSH1 and SSH2. SSH2 was invented
to avoid the patent issues regarding RSA (RSA patent has expired), and to fix
some data integrity problem that SSH1 has, and for a number of other
technical reasons. SSH2 protocol has been standardized on IETF Secure Shell
working group and drafts related to SSH2 protocol are available on the web.
In developing JSch, we are now referring to following documents:





SSH Protocol Architecture
SSH Transport Layer Protocol
Diffie-Hellman Group Exchange for the SSH Transport Layer Protocol
SSH Connection Protocol
SSH Authentication Protocol
Features
The current JSch has the following features.

















JSch is in pure Java, but it depends on JavaTM Cryptography
Extension (JCE). JSch is know to work with:
o J2SE 1.4.0 or later (no additional libraries required).
o J2SE 1.3 and Sun's JCE reference implementation that can
be obtained at http://java.sun.com/products/jce/.
o J2SE 1.2.2 and later and Bouncycastle's JCE implementation
that can be obtained at http://www.bouncycastle.org/.
SSH2 protocol support.
Key exchange: diffie-hellman-group-exchange-sha1, diffie-hellmangroup1-sha1
Cipher: blowfish-cbc,3des-cbc,aes128-cbc,aes192-cbc,aes256cbc,aes128-ctr,aes192-ctr,aes256-ctr,3desctr,arcfour,arcfour128,arcfour256
MAC: hmac-md5, hmac-sha1, hmac-md5-96, hmac-sha1-96
Host key type: ssh-dss,ssh-rsa
Userauth: password
Userauth: publickey(DSA,RSA)
Userauth: keyboard-interactive
Userauth: gss-api-with-mic
X11 forwarding
xauth spoofing
connection through HTTP proxy.
connection through SOCKS5 proxy.
port forwarding.
stream forwarding.
signal sending. The unofficial patch for sshd of openssh will be
found in this thread.










envrironment variable passing.
remote exec.
generating DSA and RSA key pairs.
changing the passphrase for a private key.
partial authentication
SSH File Transfer Protocol(version 0, 1, 2, 3)
packet compression: zlib, zlib@openssh.com JZlib has been used.
hashed known_hosts file.
NONE Cipher switching. High Performace Enabled SSH/SCP supports
NONE Cipher switching. Refer to ScpToNoneCipher.java.
JSch is licensed under BSD style license.
How To Try
The downloadable archive includes the source code of JSch and some
examples. For example, current archive includes a simple Java program,
which demonstrates X11 forwarding. Please refer to '/examples/README'
file. Here are examples included in the current archive.
Applications using JSch
We have recognized that the following applications have used JSch.









5.
Java Bluetooth
Ant(1.6 or later).
JSch has been used for Ant's sshexec and scp tasks.
Eclipse(3.0).
Our Eclipse-CVSSSH2 plug-in has been included in Eclipse SDK 3.0.
This plug-in will allow you to get ssh2 accesses to remote CVS
repository by JSch.
NetBeans 5.0(and later)
Jakarta Commons VFS
Maven Wagon
Rational Application Devloper for WebSphere Software
HP Storage Essentials
JIRA
Trac WikiOutputStreamPlugin
Publisher’s Description of Java Bluetooth Library for JME and J2SE
Java Bluetooth Library for JME and J2SE is an open source software that will
let you perform Network & Internet::Other tasks. It's free for both
personal and commercial use, thus the perfect choice for those that want an
alternative for Network & Internet::Other programs.
In order to download Java Bluetooth Library for JME and J2SE you just have
to click on the Free Download button above and you'll be able to save the 0
setup on your computer. The latest version was released on 2010-12-15 and
is compatible with WinXP,WinVista,Win7 x64,Win7 x32.
B.
No.
J2EE
Engine
Description
1.
ICEpdf
ICEpdf is an open source Java PDF library ideal for displaying and printing
PDF documents within any Java application. The ICEpdf API is lightweight,
fast, efficient and very easy to use. ICEpdf in 100% Java-based. ICEpdf is
capable of rendering PDFs up to version 1.6 (Acrobat 7.0) and provides the
following features:
















Seamless integration within Java clients, allowing complete control
over the configuration, functionality, and user interface.
A lightweight static and dynamic memory footprint.
Easy deployment without the hassles of Java-to-native integration
issues.
Can act as a stand-alone PDF viewer, or can be embedded as PDF
viewer component in an application.
Supports document editing and saving for Link Annotation edits.
Supports text selection and clipboard functions.
Type 4 Function (PostScript Calculator) for greater flexibility and
accuracy in color sampling.
Supports non-standard image decode attributes.
Supports charactor mapping.
Image masking capabilities.
Support for JBIG2 image compression.
Render PDFs to an image file (PNG, JPEG, or GIF) in a server-side
web application.
Robust, efficient, mature PDF parser.
Supports all PDF embedded font types (Types 0-3, OpenType,
TrueType) using the Font Engine included in ICEpdf Pro1.
Supports Adobe Standard Security for password-protected
documents (40 and 128 bit RC4 or AES).
Supports interactive link annotation actions; uri, launch and
resource.
ICEpdf can be used in a multitude of different ways. As a Java client (applet,
thin client, Swing, Java Web Start) or deployed on a server in headless mode
as a PDF servlet (JSP or JSF). Use ICEfaces in any of the following ways:
Java PDF Client
ICEpdf can easily be integrated into any enterprise-level Java application to
provide PDF viewing and navigation in a manner not possible with the
Adobe Reader® application. This Java PDF Library includes an embeddable
PDF viewer for easy integration within Java client applications. ICEpdf can
also stand alone as an enterprise class Java PDF Viewer application. ICEpdf
Java Viewer provides:






Acrobat-like GUI and features: Zoom in/out, rotate, next/prev page,
fit to window/width/actual size, pan.
Multipage view support; continuous and side-by-side view types.
Utility pane supports Outlines (bookmarks) and document search.
Document Information and Permissions dialogs.
Print, Print Setup.
Keyboard shortcuts, mouse-wheel scrolling, drag-and-drop.
PDF Content Conversion
ICEpdf is the ideal technology for the conversion and extraction of PDF
content. This Java PDF Library can be used to convert rendered PDF pages to
images, SVG documents, and other file formats.
PDF Content Extraction
Use ICEpdf to extract PDF document meta-data, text, and images.
PDF Link Annotations
Configure ICEpdf to support interactive link annotations via a mouse. An
annotation callback gives developers flexibility in which types of
linkannotation actions they wish to support.
1
ICEpdf is available in two versions; ICEpdf, the open source version, and
ICEpdf Pro which includes an advanced Font Engine.
2.
3.
Devil
Display Tag
Display tag library 1.1.1
This documentation is related to the displaytag 1.1.x releases.
The latest available release is 1.1.1
Displaytag 1.1 offers several enhancements over 1.0: the most notable news
are support for partial lists and enhanced decorator APIs, but there is also a
lot more. Be sure to read the migration guide for upgrading an existing
application from displaytag 1.0.
Overview
The display tag library is an open source suite of custom tags that provide
high-level web presentation patterns which will work in an MVC model. The
library provides a significant amount of functionality while still being easy to
use.
What can I do with it?
Actually the display tag library can just... display tables! Give it a list of
objects and it will handle column display, sorting, paging, cropping,
grouping, exporting, smart linking and decoration of a table in a
customizable XHTML style.
The tables in the sample images below were generated from lists using the
<display:table> tag:
4.
TinyMCE
TinyMCE - Javascript WYSIWYG Editor
TinyMCE is a platform independent web based Javascript HTML WYSIWYG
editor control released as Open Source under LGPL by Moxiecode Systems
AB.
5.
Icefaces
C.
No.
1.
J2ME
Engine
Diet 3D
TinyMCE has the ability to convert HTML TEXTAREA fields or other HTML
elements to editor instances. TinyMCE is very easy to integrate into other
Content Management Systems.
ICEfaces is more than a Ajax JSF component library, it's an J2EE Ajax
framework for developing and deploying rich enterprise applications (REAs).
With ICEfaces, enterprise Java developers can easily develop rich enterprise
applications in Java, not JavaScript.
Description
Language :
English
French / Francais
About :
The idea is to provide a FREE Open Source Real Time 3d engine for
phones and mobile devices.
Currently don't expect to play quake on your device, but it can
display spinning logos with lightning (like old-school demo of early
1990s).
Upcoming, Features are : texture mapping, Rubik's cube game
Main Features :
Portable to MANY devices (vs native 3D)
Rendering Modes : Vertex, Wire-frame, Filled, Color, Back-face
Culling, Dynamic Lightning (Fresnel), Triangle Filler, Z-Sort
Requirements :
It is available for different profiles more or less based on MIDP API
(Mobile Internet Device Profile) :



RIM's BlackBerry (.cod)
Dalvik / android (.apk)
MIDP2.0 (.jar + .jad)








MIDP1.0+Nokia (.jar + .jad)
DoJa/Imode (.jar + .jam)
PalmOS4+ + Sun's JVM (converted from MIDP 1.0 .jar)
ExEn (.exn)
CTC (Panasonic, converted from ExEn .exn)
MIDP1.0 (.jar + .jad)
jvm 1.1 and more (j2se, j2ee etc, MS java is also supported)
web applet (IE3+, Java Plugin)
Supported device are too long to mention (today Diet3D has been
tested over 30 devices, see testers)
2.
Kuix
Kuix is an extensible and fully customizable JavaME UI framwork that
enables high end application development.

Wide devices compatibility
From the beginning, maximizing compatibility level has lead the
development of Kuix and it results today in a wide range of
supported devices. Basically, Kuix is compliant with CLDC 1.0 and
MIDP 2.0.

Fast and easy application development
Forms and widgets are organized through an XML approach that
combined with CSS file, allow the programmers to build applications
even faster!

3.
Apime
Open source
Kuix is an open source project licensed under GPL. As a strong
copyleft license, it requires that all derived works to be available
under the same license.
Apime is a framework to offer more funcionality to mobile with Java
enabled (J2ME).
The core is the user interface, with basics components to make applications,
and with possibility to create news adapting to what each developer
requires. The manage is with a mouse pointer moved by keyboard or pen.
Also it includes classes for file manage and customization (skins,
internacionalization, keyboards for differents languages and mobiles)
It is whole compatible with MIDP 1.0, although exists a version for MIDP 2.0
and other for Nokia, to use the fullscreen feature than MIDP 1.0 no offers.
4.
J4Me
For all this it allow make differents kind of applications easier and faster.
J4ME is an open source library to help build J2ME applications. It solves
many of J2ME's shortcomings including:
Who is it for?
J4ME makes development faster and produces better looking applications
so it is for nearly everyone. However it does require MIDP 2.0. Probably all
phones released since 2006 support this.
The J4ME library has been tested on Sun's WTK, IBM's J9, BlackBerry,
Motorola, Sony Ericsson, Nokia, Samsung, and other phones. One customer
has built a list of supported phones, but it is incomplete (add yours today!).
J4ME is like J2ME Polish, but is an open source alternative.
About J4ME
The name "J4ME" is a play on J2ME meaning "Java For Me".
It is licensed under the very liberal Apache 2.0 License (similar to the BSD
License). You are free to modify and use the code as you would like, so long
as you do not build a golf application. Although not required please keep the
project growing by submitting your code fixes and new functionality.
J4ME was developed by Score Out. It is the foundation of
our mobile application, the Score Out Caddie, a GPS yardage guide for
golfers
5.
jMobileCore
toolkit
jMobileCore library is powerful tool for creating J2ME applications.
jMobileCore provides support for developing compact and rich Canvasbased GUI, fast data access, reliable communications and simplifies creation
of multithreading midlet applications.
jMobileCore library is written on Java2 Mobile Edition (MIDP1.0 and
CLDC1.0) and using standard Sun J2ME libraries. Some classes are using
J2ME manufacturer's extensions (from Nokia and Siemens) for better
performance and presentation. No other libraries and/or frameworks are
used.
jMobileCore library is targeted to work on any phone or PDA device which
supports J2ME (MIDP1.0 and CLDC1.0). Today list of supported devices
includes (but not limits) phones:
xx,
The toolkit is designed to help J2ME developer create professionally looking
midlet applications, save his/her time by reusing AWT-like components and
concentration on business specifics instead. Currently existing toolkits
SyncLast MIDP API and Nextel's Open Window Toolkit does not perform
well: SyncLast is limited to GUI interface only and class structure is not AWTlike (require significant time for learning). Nextel OWT is "resource hungry",
slow and it's development stopped at September 2001
Major features of the jMobileCore library:
-based) support including "core" part (standard GUI controls:
Label, TextField, TextPane, TextArea, List, Menu, SoftButton etc.) and
"extensions": non-standard but useful phone-oriented graphic controls
(PropertyLabel, SplashScreen, DateField, TimeField, CurrencyField,
PhoneNumberField etc.)
binary), records, tables, keys and indexes on the top of RMS
binary(over HTTP) data transfer
ocesses support: classes which allows simple conversion of user
tasks (classes) to asynchronously working threads
Download