0

Apache Tomcat、Apache Axis2 のインストール、Web プロジェクトの作成、サービスへの変換、Tomcat へのデプロイ、クライアント プロジェクトの作成、サービスのスタブでクライアントの作成、最後にサービスへのアクセス。

以上が、Android Eclipse で Web サービスを利用するためのすべての手順だと思います。
ここで、Web プロジェクトを Tomcat サーバーにデプロイするステップまで完了しました。サービスについては正常に表示されましたが、サーバー オプションは SYNCHRONIZED と表示されました。それは以下に与えられます

サーバ

localhost の Tomcat v6.0 サーバー [開始済み、同期済み]

AndBack[同期]。


一方、クライアント プロジェクトを作成すると、実行時に次のように表示されます。

Sorry! The application has stopped unexpectedly. Please try again. Force close

以下のログキャットを参照してください。

ログキャット

04-25 16:46:51.153: E/dalvikvm(273): Could not find class 'org.ksoap2.serialization.SoapObject', referenced from method org.test.Frontend.AndFrontActivity.onCreate
04-25 16:46:51.153: W/dalvikvm(273): VFY: unable to resolve new-instance 25 (Lorg/ksoap2/serialization/SoapObject;) in Lorg/test/Frontend/AndFrontActivity;
04-25 16:46:51.153: D/dalvikvm(273): VFY: replacing opcode 0x22 at 0x0010
04-25 16:46:51.164: D/dalvikvm(273): VFY: dead code 0x0012-0081 in Lorg/test/Frontend/AndFrontActivity;.onCreate (Landroid/os/Bundle;)V
04-25 16:46:51.243: D/AndroidRuntime(273): Shutting down VM
04-25 16:46:51.243: W/dalvikvm(273): threadid=1: thread exiting with uncaught exception (group=0x4001d800)
04-25 16:46:51.273: E/AndroidRuntime(273): FATAL EXCEPTION: main
04-25 16:46:51.273: E/AndroidRuntime(273): java.lang.NoClassDefFoundError: org.ksoap2.serialization.SoapObject
04-25 16:46:51.273: E/AndroidRuntime(273):  at org.test.Frontend.AndFrontActivity.onCreate(AndFrontActivity.java:28)
04-25 16:46:51.273: E/AndroidRuntime(273):  at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047)
04-25 16:46:51.273: E/AndroidRuntime(273):  at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2627)
04-25 16:46:51.273: E/AndroidRuntime(273):  at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2679)
04-25 16:46:51.273: E/AndroidRuntime(273):  at android.app.ActivityThread.access$2300(ActivityThread.java:125)
04-25 16:46:51.273: E/AndroidRuntime(273):  at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2033)
04-25 16:46:51.273: E/AndroidRuntime(273):  at android.os.Handler.dispatchMessage(Handler.java:99)
04-25 16:46:51.273: E/AndroidRuntime(273):  at android.os.Looper.loop(Looper.java:123)
04-25 16:46:51.273: E/AndroidRuntime(273):  at android.app.ActivityThread.main(ActivityThread.java:4627)
04-25 16:46:51.273: E/AndroidRuntime(273):  at java.lang.reflect.Method.invokeNative(Native Method)
04-25 16:46:51.273: E/AndroidRuntime(273):  at java.lang.reflect.Method.invoke(Method.java:521)
04-25 16:46:51.273: E/AndroidRuntime(273):  at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:868)
04-25 16:46:51.273: E/AndroidRuntime(273):  at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:626)
04-25 16:46:51.273: E/AndroidRuntime(273):  at dalvik.system.NativeStart.main(Native Method)
4

1 に答える 1

1

次のような外部jarが判明します

ksoap2-android-assembly-2.6.2-jar-with-dependencies.jar

/libs フォルダーの下に配置して、Eclipse ADT が自動的に jar をアプリケーションのビルドパスに追加するようにします。結局、それはビルドパスが定義されていないクラスのエラーでした..これもあなたに役立つことを願っています!

ここそこか

于 2012-08-30T18:49:03.907 に答える