2013-02-15 79 views
1

我有下面的代碼的Java的XMLBeans拋出NoSuchMethod錯誤

static { 
     wsAuthenticate = WsAuthenticate.Factory.newInstance(); 
    ... 
    } 

這包含.xsb文件的jar文件調用

public static final SchemaType type = (SchemaType) 
     XmlBeans.typeSystemForClassLoader(WsAuthenticate.class.getClassLoader(), 
      "schemaorg_apache_xmlbeans.system.sDE164C7F4147229ECE15396F7FA5432D") 
     .resolveHandle("wsauthenticate751ftype"); 

。 我用以下jar文件

  • xBean1.0.3.jar
  • xmlBeans2.3.0.jar
  • xmlSchema1.4.7.jar

但我現在面臨以下情況例外:

java.lang.NoSuchMethodError: org.apache.xmlbeans.XmlBeans.typeSystemForClassLoader(Ljava/lang/ClassLoader;Ljava/lang/String;)Lorg/apache/xmlbeans/SchemaTypeSystem; 
    at com.travis.webservices.WsAuthenticate.<clinit>(WsAuthenticate.java:19) 
    at com.travis.webservices.WsAuthenticate$Factory.newInstance(WsAuthenticate.java:119) 
    at com.mmi.api.ticketvala.TicketWalaMain.<clinit>(TicketWalaMain.java:64) 
Exception in thread "main" 

at : 

    XmlBeans.typeSystemForClassLoader(WsAuthenticate.class.getClassLoader(),  "schemaorg_apache_xmlbeans.system.sDE164C7F4147229ECE15396F7FA5432D").resolveHandle("wsauthenticate751ftype"); 

可能是什麼原因以及如何解決它?

回答

0

這個typeSystemForClassLoader方法是在版本(2.1.0)中引入的。請參閱javadoc檢查以前的版本,您可以看到此方法丟失。

<dependency> 
    <groupId>xmlbeans</groupId> 
    <artifactId>xbean</artifactId> 
    <version>2.1.0</version> 
</dependency> 
0

讀取.xlsx文件

org.apache.poi.POIXMLException: java.lang.reflect.InvocationTargetException 
Caused By :java.lang.NoSuchMethodError: org.apache.xmlbeans.XmlBeans.typeSystemForClassLoadern 

然後我「已經刪除我的舊的xmlbeans-2.0.jar,並把最新的xmlbeans-2.3.0.jar包含此方法時,我也越來越相同的異常,它現在正在解決