首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 更多程式語言 >> 程式設計綜合問答

Axis2 部署異常:ArrayIndexOutOfBoundsException 重新打包 AAR 解決

     編輯:程式設計綜合問答

異常堆疊

java.lang.ArrayIndexOutOfBoundsException: 1
    at org.apache.axis2.description.java2wsdl.DefaultSchemaGenerator.processMethods(...)
    at org.apache.axis2.deployment.ServiceBuilder.populateService(...)
    ...

原因

DefaultSchemaGenerator 生成 WSDL 時處理方法參數數組越界,通常因 **AAR 包內類文件損壞、版本不一致、或編譯輸出不完整** 導致元數據解析異常。

解決方案

  1. 清理並重新編譯項目:mvn clean compile 或 IDE Build → Rebuild Project。
  2. 重新打包 AAR:
    # Maven 項目
    mvn clean package -DskipTests
    # 手動打包
    jar cvf MyService.aar -C target/classes . -C lib .
  3. 檢查 services.xml:確保 <serviceClass> 指向正確類,無拼寫錯誤。
  4. Axis2 版本一致性:編譯、運行、部署環境 Axis2 版本完全一致(如 1.7.9)。

驗證

重新部署新 AAR 到 Axis2 repository/services,觀察日誌無 ArrayIndexOutOfBoundsException,服務正常暴露 WSDL。

**核心:重新打包 AAR 解決 90% 此類部署異常**,源於類文件與元數據不同步。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved