Intoduction to JAR,EAR and WAR files in java

JAR is java arcihve file.It contain all class file,image,sound and other files which will needed in whole application. Computer users can create or extract JAR files using the jar command that comes with the JDK. They can also use zip tools. The JavaTM Archive (JAR) file format enables you to bundle multiple files into a single archive file. jar was designed mainly to facilitate the packaging of java applets or applications into a single archive.

jar cf jar-file input-file(s)

The options and arguments used in this command are:
• Use c option  to create a JAR file.
• jar-file is the name of your  JAR file. You can use any filename for a JAR file. By convention, JAR filenames are given a .jar extension,it is mandatory any way.

The command for viewing the contents of a JAR file is:

jar tf jar-file
An Example
Let’s use the Jar tool to list the contents of the vinay.jar file we created in the previous section:
jar tf vinay.jar
EAR -An Enterprise Archive file represents a J2EE application that can be deployed in a Web Sphere application server. EAR files are standard Java archive files and have the file extension .ear. EAR file contain ejb, web or application client module. ear file is complete j2ee application file that contain all(jar +war)
WAR -Web Archive (WAR) file is a Java archive file used to store jsp,servlets,classes,meta data information,images and
Sound and tag libararies etc. Its standard file extension is .war. WAR files are used to package Web modules. A WAR file is for a Web application deployed to a servlet/jsp engine.

In shot we can say
EAR = WAR(Web module) + JAR(can be EJB module or application client module)

for more information check this one -http://java.sun.com/docs/books/tutorial/deployment/jar/build.html

Introduction to JSR-227

JSR-227 defines a standard way for tools to implement the interactions between user interfaces and services, doing this in a way that will work for any user interface and any service technology. MVC is application design pattern in this.Primary supported by Sun+oracle. JSR 227 defines an
abstraction mechanism. We are accessing data from JavaBeans, EJB, JDO or POJO in order to reterive our view. In the world of MVC applications the View and Controller layers need to interact with the Model layer. Until this JSR came along, the developer had to learn the specific API for the technology that implemented its Model layer in order to build his View and Controller layers.
With JSR 227 there is a single standard API that works with any implementation of a Model layer – regardless of the implementing technology which can be EJB, SDO, XML, JavaBeans, etc – as well as with any implementation of View layer, such as JSP, JSF, Struts, Swing or any new technology that might pop up. This will be beneficial for two group one is Developer who design UI interface. The other group is providers of business services. For example I might be a business service provider with an innovative way to implement business service. Now all I need to do is provide a data control implementation to my business service – any tool that supports JSR-227 will be able to use my business services in a transparent way.

JSR-227 influence the future of application development :-
JSR-227 as an enabling standard for Service Oriented Architecture (SOA). The concept of SOA is that you can pick up services from anywhere and use them in your application. What JSR-227 will enable you to do is ignore the specific implementation of the service and easily bind user interfaces to this service. This helps create the needed separation between service developers and application developers.

More information you can find on
:-
1.www.oracle.com
2. http://web1.jcp.org/en/jsr/detail?id=227(JSR 227 home page)

References
http://www.oracle.com/technology/tech/java/newsletter/articles/jsr227_interview.html

pimp it

Ldap configuration in Jetspeed 2.2.0

Ldap configuration in Jetspeed 2 (JS2) is very easy. Its only two required steps to configure Ldap in JS2.

1) Enable Ldap module
First you need to create “spring-filter-key.properties” under jetspeed/WEB-INF/conf and add the following lines

#Turn on LDAP Security
spring.filter.key = portal.ldap

Spring-filter-key. properties can be used to enable or disable different module of jetspeed.

2) Define Ldap Connection propetries

Jetspeed store all its Configuration settings in jetspeed.properties.

Following are default jetspeed ldap settings
jetspeedldap
First four points are self explanatory.

ldap.context.factory
Jetspeed uses ldap to communicate to ldap server. I think it would not be advisable to changes context factory until its rally required.

ldap.user.filter =

You can define you own object class for users

ldap.search.scope

Ldap search scope refer to searching objects in ldap sub tree. I would suggest not-to change this value

ldap.user.searchBase
ldap.role.searchBase
ldap.group.searchBase
You can define tree location where all you users reside. Once you define user search base of user, Jetspeed will only look for user and there relation under that node.
Search base can be  defined for groups and roles too.

ldap user entryPrefix

In ldap there are different user classes to create user and they have there own different respective schema, So you can choose you can define your own uid prefix