Thread Pool in java

Threads are a very important Part of Java, but creating large numbers of threads can degrade the performance of application.By thread pools, which allow you to maintain fixed number of threads running assigned tasks to each of the threads.
Suppose A thing may have to visit tens of thousands of pages, and you will not create tens of thousands of thread because it is an additional problem. For overcome this problem we need a thread pool. Thread pool give some fixed number of thread and these thread will do task. Once a thread finish one task, then it is assigned to new task. We will not create a new thread always. This is way thread pool will work. Developer has to implement this feature.
In Java:
• A thread pool implementation is provided in the form of the ThreadPoolExecutor class, introduced in Java 1.5;
• you can put in different implementations of BlockingQueue to specify different queue behavior such as queue bounds or priority ordering

Implementation of Thread pool

This can be done by like this

 
   public class ThreadPool extends java.lang.Object implements ThreadPoolInt 

This class is generic implementation of thread pool which have following input
1) Size of the pool to be constructed
2) Name of the class which implements Runnable (which has a visible default constructor)

It constructs a thread pool with active threads that are waiting for activation. Once the threads have finished their task they will come back and wait for assigning a new task.

Benefits of Thread Pooling
• It saves the machine work of creating a new thread.
• Single thread can recycle again and again.
• The size of thread pool is given in starting .We can expand on the designs presented in this chapter to include a method to support growing the size of the pool at runtime if you need this kind of dynamic tuning.
• Response time can be quick.

Risks of using thread pools
The disadvantage of thread pool is that. Suppose if an task is rejected because the thread pool is empty. There will be high rejection rate.Or if task on wait state then waiting time would be too long. Sometime there is problem of deadlock also.

References
http://www.japisoft.com/jservices/javadoc/jason/service/pool/ThreadPool.html
http://java.sun.com/developer/Books/javaprogramming/threads/chap13.pdf

What is Jquery

jQuery is a lightweight JavaScript library that emphasizes interaction between JavaScript and HTML. jQuery is an amazing JavaScript library that makes it easy to create wonderful web effects in just a few lines of code. jQuery is a new type of Javascript library. It is not a huge, bloated framework promising the best in AJAX – nor is it just a set of needlessly complex enhancements – jQuery is designed to change the way that you write Javascript.
jQuery is a Javascript library that takes this motto to heart: Writing Javascript code should be fun. jQuery achieves this goal by taking common, repetitive, tasks, stripping out all the unnecessary markup, and leaving them short, smart and understandable.
Quick Facts

• jQuery supports CSS 1-3 and basic XPath.
• jQuery is about 19kb in size.
• jQuery works in Firefox 1.0+, Internet Explorer 5.5+, Safari 1.3+, and Opera 8.5+.
• jQuery and Prototype can be used together!
• jQuery owns a strong and very flexible mechanism for adding in methods and functionality, bundled as plugins

jQuery contains the following features:

• DOM element selections using the cross-browser open source selector engine Sizzle, a spin-off out of jQuery project[3]
• DOM traversal and modification (including support for CSS 1-3 and basic XPath)
• Events
• CSS manipulation
• Effects and animations
• Ajax
• Extensibility
• Utilities – such as browser version and the each function.
The $ function• One of the critical concepts in any jQuery code is the so called ‘$’ function. ‘$’ is actually an ‘alias’ for the ‘jQuery’ namespace.
• Example 1: jQuery provides a function for trimming strings. This function can be used as:

 
•	str = "    foo     ";
•	jQuery.trim(str); // returns "foo"
•	Or, it can also be used as:
•	str = "    foo     ";
•	$.trim(str);

• These are equivalent. Usage of ‘$’ instead of ‘jQuery’ is an ad-hoc convention, and is considered easier[who?].
• Example 2: To select all the paragraphs that have the class ‘foo’ and add another class called ‘bar’ to all of them:
• $(“p.foo”).addClass(“bar”);
• Example 3: To execute a function ‘myfunc’ immediately after the page is loaded (called the ready handler in jQuery lingo):
• $(document).ready(function() {
• myfunc();
• });
• This is typically used in a context like this:
• $(document).ready(function() {
• // Stripe all the tables in the document using the oddStripe and evenStripe CSS classes.
• $(‘tr:nth-child(odd)’).addClass(“oddStripe”);
• $(‘tr:nth-child(even)’).addClass(“evenStripe”);
• });

For detailed information ,check this.-



http://
www.jquery.com/

Jetspeed 2.2.0 release

Jetspeed 2.2.0

The Jetspeed 2.2.0 release is a major release of the Jetspeed-2 portal and is the first release of Jetspeed that is fully compliant with the Java Portlet Specification 2.0. With this new version of Jetspeed.

Jetspeed 2

See Latest jetspeed in action demo
Use the username admin connects using the password j2

New Features in Version 2.2.0

  • Portlet API 2.0 Support and Compliance
  • Passes Java Portlet 2.0 Test Compatibility Kit test suite
  • Inter-Portlet Communication via Events
  • New High Speed Preferences Database Storage
  • New Extensible Security Model with LDAP Synchronization
  • Improved Documentation including 5 New Guides (Users Guide, Admin Guide, Developers Guide, Build Guide, Deploy Guide)
  • New Improved Administrative Portlets
  • New Skins
  • New Maven-2 Custom Build
  • Updated Tutorial for New Maven-2 Custom Build
  • Enterprise (EAR) Deployments for Websphere 6.1
  • Multi-facted Authentication with Captcha and Personal Questions
  • Integrated with latest Pluto 2.0.0
  • Improved Single Signon Architecture (SSO)

Apache Portals Applications

Portals Team also co-releasing a new sub-project at Apache Portals: Apache Portals Applications.

Portal Applications

It has few portlet applications, that can be used out-of box.

Gems

A collection portlets that are beyond categorization into applications and are completely portable to the Portlet API (1.0 or 2.0) .

Demo

A portlet application dedicated to demonstrating different portal technologies like Portals Bridges .

RSS

A portlet application dedicated to RSS-based portlet development.

Database Browser

A portlet application dedicated to the development and database portlet development including scrollable lists and data entry forms.

Web Content

A portlet application dedicated to the development of Web Content rewriting and IFrame based web content.

Logging

Utilities used to setup and deploy logging for portlet and simple web applications.