Hi All,

    I am getting NoSuchMethodError at Session session = repository.login(new SimpleCredentials("username", "password".toCharArray())); when running my below application. I have added below jar files to my application.Below is the sample application downloaded from the location http://jackrabbit.apache.org/first-hops.html
I am new to the Jackrabbit. Please guide me to run the application successfully.  
Thanks in advance.
 
JAR FILES ADDED TO APPLICATION:  jackrabbit-jcr-commons-2.0.0.jar,jackrabbit-api-2.0.0.jar, jackrabbit-core-2.0.0.jar, jackrabbit-jca-2.0.0.jar, jcr-1.0.jar, lucene-core-3.0.1.jar.
 
ERROR :

Exception in thread "main" java.lang.NoSuchMethodError: org.apache.lucene.analysis.standard.StandardAnalyzer.<init>([Ljava/lang/String;)V

at org.apache.jackrabbit.core.query.lucene.JackrabbitAnalyzer.<init>(

JackrabbitAnalyzer.java:41
)

at org.apache.jackrabbit.core.query.lucene.SearchIndex.<init>(

SearchIndex.java:205)

at sun.reflect.NativeConstructorAccessorImpl.newInstance0(

Native Method)

at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source)

at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)

at java.lang.reflect.Constructor.newInstance(Unknown Source)

at java.lang.Class.newInstance0(Unknown Source)

at java.lang.Class.newInstance(Unknown Source)

at org.apache.jackrabbit.core.config.BeanConfig.newInstance(

BeanConfig.java:186)

at org.apache.jackrabbit.core.config.RepositoryConfigurationParser$1.getQueryHandler(

RepositoryConfigurationParser.java:627)

at org.apache.jackrabbit.core.config.RepositoryConfig.getQueryHandler(

RepositoryConfig.java:930)

at org.apache.jackrabbit.core.SearchManager.<init>(

SearchManager.java:173)

at org.apache.jackrabbit.core.RepositoryImpl.getSystemSearchManager(

RepositoryImpl.java:698)

at org.apache.jackrabbit.core.RepositoryImpl.access$400(

RepositoryImpl.java:125)

at org.apache.jackrabbit.core.RepositoryImpl$WorkspaceInfo.getSearchManager(

RepositoryImpl.java:1868)

at org.apache.jackrabbit.core.RepositoryImpl$WorkspaceInfo.doPostInitialize(

RepositoryImpl.java:2077)

at org.apache.jackrabbit.core.RepositoryImpl$WorkspaceInfo.initialize(

RepositoryImpl.java:1996)

at org.apache.jackrabbit.core.RepositoryImpl.initStartupWorkspaces(

RepositoryImpl.java:535)

at org.apache.jackrabbit.core.RepositoryImpl.<init>(

RepositoryImpl.java:366)

at org.apache.jackrabbit.core.RepositoryImpl.create(

RepositoryImpl.java:673)

at org.apache.jackrabbit.core.TransientRepository$2.getRepository(

TransientRepository.java:231)

at org.apache.jackrabbit.core.TransientRepository.startRepository(

TransientRepository.java:259)

at org.apache.jackrabbit.core.TransientRepository.login(

TransientRepository.java:355)

at org.apache.jackrabbit.commons.AbstractRepository.login(

AbstractRepository.java:123)

at FirstHop.main(

FirstHop.java:20)
APPLICATION CODE:
 

import

javax.jcr.Repository;

import javax.jcr.Session;

import

javax.jcr.SimpleCredentials;

import

javax.jcr.Node;

import

org.apache.jackrabbit.core.TransientRepository;

/**

* Second hop example. Stores, retrieves, and removes example content.

*/

public

class SecondHop {

public static void main(String[] args) throws Exception {

Repository repository =

new TransientRepository();

Session session = repository.login(

new SimpleCredentials("username", "password".toCharArray()));

try {

Node root = session.getRootNode();

// Store content

Node hello = root.addNode(

"hello");

Node world = hello.addNode(

"world");

world.setProperty(

"message", "Hello, World!");

session.save();

// Retrieve content

Node node = root.getNode(

"hello/world");

System.

out.println(node.getPath());

System.

out.println(node.getProperty("message").getString());

// Remove content

root.getNode(

"hello").remove();

session.save();

String name = repository.getDescriptor(Repository.

REP_VENDOR_URL_DESC);

System.

out.println("name "+name);

}

finally {

session.logout();

}

}

}

 

Thanks,

Jenni