Alfresco java.lang.NoClassDefFoundError:com/ctc/wstx/stax/WstxInputFactory在使用openCMIS时

Alfresco java.lang.NoClassDefFoundError:com/ctc/wstx/stax/WstxInputFactory在使用openCMIS时,alfresco,classnotfoundexception,opencmis,apache-chemistry,Alfresco,Classnotfoundexception,Opencmis,Apache Chemistry,我正在尝试这个从Alfresco获取文档的新程序。 我的是Alfresco版本4.2和最新的openCMIS。下面是我的代码 public class Test { /** * @param args */ public static void main(String[] args) { SessionFactory sessionFactory = SessionFactoryImpl.newInstance(); Map<String, String> p

我正在尝试这个从Alfresco获取文档的新程序。 我的是Alfresco版本4.2和最新的openCMIS。下面是我的代码

public class Test {

/**
 * @param args
 */
public static void main(String[] args) {

    SessionFactory sessionFactory = SessionFactoryImpl.newInstance();
    Map<String, String> parameter = new HashMap<String, String>();

    Session session = null;
    OperationContext operationContext = new OperationContextImpl();
    operationContext.setCacheEnabled(true);


    parameter.put(SessionParameter.USER, "admin");
    parameter.put(SessionParameter.PASSWORD, "admin");
    parameter.put(SessionParameter.ATOMPUB_URL, "http://alfresco-url.com/alfresco/api/-default-/public/cmis/versions/1.0/atom");

    parameter.put(SessionParameter.BINDING_TYPE, BindingType.ATOMPUB.value());
    parameter.put(SessionParameter.LOCALE_ISO3166_COUNTRY, "us");
    parameter.put(SessionParameter.LOCALE_ISO639_LANGUAGE, "en");
    parameter.put(SessionParameter.LOCALE_VARIANT, "");


    Repository soleRepository = (Repository)sessionFactory.getRepositories(parameter).get(0);
    session = soleRepository.createSession();

    session.setDefaultContext(operationContext);

    String cmisObjectId = "workspace://SpacesStore/u456ce2c-5675-3f66-fgh5-d45g567w35";

    CmisObject obj = session.getObject(new ObjectIdImpl(cmisObjectId));

}

}
公共类测试{
/**
*@param args
*/
公共静态void main(字符串[]args){
SessionFactory SessionFactory=SessionFactoryImpl.newInstance();
Map参数=new HashMap();
会话=空;
OperationContext OperationContext=新的OperationContextImpl();
operationContext.setCacheEnabled(true);
parameter.put(SessionParameter.USER,“admin”);
parameter.put(SessionParameter.PASSWORD,“admin”);
parameter.put(SessionParameter.ATOMPUB_URL,“http://alfresco-url.com/alfresco/api/-default-/public/cmis/versions/1.0/atom");
parameter.put(SessionParameter.BINDING_TYPE,BindingType.ATOMPUB.value());
parameter.put(SessionParameter.LOCALE_ISO3166_国家/地区,“美国”);
parameter.put(SessionParameter.LOCALE_ISO639_语言,“en”);
parameter.put(SessionParameter.LOCALE_VARIANT,“”);
Repository soleRepository=(存储库)sessionFactory.getRepositories(参数).get(0);
session=soleRepository.createSession();
session.setDefaultContext(operationContext);
字符串cmisObjectId=”workspace://SpacesStore/u456ce2c-5675-3f66-fgh5-d45g567w35";
CmisObject obj=session.getObject(新objectimpl(cmisObjectId));
}
}
我在最后一行得到下面的异常

SLF4J:无法删除 加载类“org.slf4j.impl.StaticLoggerBinder”。SLF4J:默认为 无操作(NOP)记录器实现SLF4J:请参阅 进一步 细节。线程“main”java.lang.NoClassDefFoundError中出现异常: com/ctc/wstx/stax/WstxInputFactory位于 org.apache.chemistry.opencmis.client.bindings.spi.atompub.AtomPubParser.parse(AtomPubParser.java:98) 在 org.apache.chemistry.opencmis.client.bindings.spi.atompub.AbstractAtomSubservice.parse(AbstractAtomSubservice.java:620) 在 org.apache.chemistry.opencmis.client.bindings.spi.atompub.AbstractAtomSubservice.getRepositoriesInternal(AbstractAtomSubservice.java:809) 在 org.apache.chemistry.opencmis.client.bindings.spi.atompub.repositoryserviceinpl.getRepositoryInfos(repositoryserviceinpl.java:65) 在 org.apache.chemistry.opencmis.client.bindings.impl.repositoryserviceinpl.getRepositoryInfos(repositoryserviceinpl.java:90) 在 org.apache.chemistry.opencmis.client.runtime.SessionFactoryImpl.getRepositories(SessionFactoryImpl.java:135) 在 org.apache.chemistry.opencmis.client.runtime.SessionFactoryImpl.getRepositories(SessionFactoryImpl.java:112) 在com.test.test.main(test.java:55)上,由以下原因引起: java.lang.ClassNotFoundException:com.ctc.wstx.stax.WstxInputFactory 在java.net.URLClassLoader$1.run(URLClassLoader.java:202)处 java.security.AccessController.doPrivileged(本机方法)位于 java.net.URLClassLoader.findClass(URLClassLoader.java:190)位于 loadClass(ClassLoader.java:306)位于 sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)位于 loadClass(ClassLoader.java:247)。。。8个以上

有人能帮我找到需要添加的罐子吗?

你可以在这里找到:


正如Marged所建议的,使用maven会容易得多。

我建议您从中获取jar并将其添加到您的类路径。

只需在google上搜索该包和类,添加“maven”可能有助于缩小范围