0

我是 Java 和 Web 服务的新手,并且axis2. 我最近使用一些教程创建了一个 Web 服务。当我第一次按照教程 eclipse 让我创建一个客户端时。但是当我尝试创建一个新项目和一个新的 Web 服务客户端时,它会提供NoSuchMethodError. 看起来像这样:

为 WSDL 生成代码时发生异常:java.lang.NoSuchMethodError: javax.wsdl.Operation.getExtensionAttributes()Ljava/util/Map; java.lang.reflect.InvocationTargetException at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) at java.lang.reflect。 Method.invoke(Unknown Source) at org.eclipse.jst.ws.axis2.consumption.core.utils.WSDL2JavaGenerator.getAxisService(WSDL2JavaGenerator.java:379) at org.eclipse.jst.ws.axis2.consumption.core.command .Axis2ClientCodegenCommand.execute(Axis2ClientCodegenCommand.java:94) 在 org.eclipse.wst.command.internal.env.core.fragment.CommandFragmentEngine.runCommand(CommandFragmentEngine.java:419) 在 org.eclipse。javax.wsdl.Operation.getExtensionAttributes()Ljava/util/Map; 在 org.apache.axis2.description.WSDL11ToAxisServiceBuilder.populateOperations(WSDL11ToAxisServiceBuilder.java:1427) 在 org.apache.axis2.description.WSDL11ToAxisServiceBuilder.populatePortType(WSDL11ToAxisServiceBuilder.java:606) 在 org.apache.axis2.description.WSDL11ToAxisServiceBuilder.populateEndpoints (WSDL11ToAxisServiceBuilder.java:483) 在 org.apache.axis2.description.WSDL11ToAxisServiceBuilder.populateService(WSDL11ToAxisServiceBuilder.java:373) ... 56 更多

我正在使用axis2-1.6.1,它说java合规级别是6 我用谷歌搜索了它,但找不到解决这个问题的相关解决方案。任何帮助表示赞赏。

4

3 回答 3

1

我遇到了同样的问题,并通过查看我的WEB-INF/lib解决了它。我的WEB-INF
中 有两个AXIS2 jar 文件。 如果将两个不同版本的 axis2 的 jar 文件复制到WEB-INF ,也会发生这种情况。

希望它有效:-)

于 2016-03-15T12:30:12.543 回答
0

请按照以下说明进行操作。

  1. 确保您的 Web 服务在服务器中可用。请通过查看您的 Web 服务的 WSDL 来检查它。
  2. 之后按照其中一篇文章的说明进行操作,

web-service-client-using-eclipse-axis2
BottomUpAxis2WebService

它对我有用。确保您的代码生成插件已为 Eclipse 正确安装。

于 2012-08-14T04:43:07.777 回答
0

问题是Eclipse“没有找到任何东西”。

这是一个例子;这里的解决方案是:

  1. 确保项目中包含所有必要的 .jar 库

  2. 在进行部署时在类加载中选择“首先搜索本地类”

尝试发布 ODI Web 服务时 AXIS2 出错

于 2012-05-06T01:07:47.813 回答