Alfresco java.lang.NoClassDefFoundError:com/ctc/wstx/stax/WstxInputFactory在使用openCMIS时
我正在尝试这个从Alfresco获取文档的新程序。 我的是Alfresco版本4.2和最新的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
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”可能有助于缩小范围