2

WSO2ESB 内の Web サービスと通信するために、開発者スタジオで Eclipse Helios を使用して Java クライアント コードを実行しようとしています。コードを実行すると、次のエラーが発生します。

Exception in thread "main" java.lang.NoClassDefFoundError: org/wso2/securevault/SecretResolverFactory
    at org.apache.axis2.deployment.AxisConfigBuilder.populateConfig(AxisConfigBuilder.java:92)
    at org.apache.axis2.deployment.DeploymentEngine.populateAxisConfiguration(DeploymentEngine.java:854)
    at org.apache.axis2.deployment.FileSystemConfigurator.getAxisConfiguration(FileSystemConfigurator.java:116)
    at org.apache.axis2.context.ConfigurationContextFactory.createConfigurationContext(ConfigurationContextFactory.java:64)
    at org.apache.axis2.context.ConfigurationContextFactory.createConfigurationContextFromFileSystem(ConfigurationContextFactory.java:210)
    at org.apache.axis2.client.ServiceClient.configureServiceClient(ServiceClient.java:151)
    at org.apache.axis2.client.ServiceClient.<init>(ServiceClient.java:144)
    at org.wso2.cs.helloservices.ProxyWSOneStub.<init>(ProxyWSOneStub.java:91)
    at org.wso2.cs.helloservices.ProxyWSOneStub.<init>(ProxyWSOneStub.java:77)
    at org.wso2.cs.helloservices.ProxyWSOneStub.<init>(ProxyWSOneStub.java:126)
    at org.wso2.cs.helloservices.ProxyWSOneStub.<init>(ProxyWSOneStub.java:118)
    at org.wso2.cs.helloservices.ClientSizeResponseSynchronous.ClientSizeResponseSynchronous(ClientSizeResponseSynchronous.java:22)
    at org.wso2.cs.helloservices.MainSizeResponseSynchronous.main(MainSizeResponseSynchronous.java:38)
Caused by: java.lang.ClassNotFoundException: org.wso2.securevault.SecretResolverFactory
    at java.net.URLClassLoader$1.run(URLClassLoader.java:202)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:247)
    ... 13 more

この問題を解決するための解決策はありますか?

ありがとう。

4

1 に答える 1

1

必要な依存関係をクラスパスに追加するには、以下の手順に従います。

  • 「ESB_HOME/bin」ディレクトリに移動します。

  • コマンド「ant」を発行すると、ESB でカスタム開発を行う際にクラスパスに含めるすべてのライブラリが「ESB_HOME/repository/lib」ディレクトリにコピーされます。(最初にantがインストールされていることを確認してください)

  • 「ESB_HOME/repository/lib」jar ディレクトリをクラスパスに追加します。

  • クライアントを実行します。

お役に立てれば。

よろしく、 プラバース

于 2013-05-20T19:04:07.120 に答える