Java 有没有办法强制Axis1生成文档文本WSDL和SOAP?

Java 有没有办法强制Axis1生成文档文本WSDL和SOAP?,java,soap,wsdl,axis,Java,Soap,Wsdl,Axis,我使用ApacheAxis1来服务web服务,它自动将Java对象转换为wsdl定义和soap响应。然而,在默认情况下,Axis似乎默认为rpc编码的数据服务。有没有办法强迫它转而提供包装的文档文字数据 到目前为止,文档对我帮助不大。我的服务声明如下所示: <service name="myservice" provider="java:RPC" use="literal" style="wrapped"> <parameter name="wsdlTargetNames

我使用ApacheAxis1来服务web服务,它自动将Java对象转换为wsdl定义和soap响应。然而,在默认情况下,Axis似乎默认为rpc编码的数据服务。有没有办法强迫它转而提供包装的文档文字数据

到目前为止,文档对我帮助不大。我的服务声明如下所示:

<service name="myservice" provider="java:RPC" use="literal" style="wrapped">

  <parameter name="wsdlTargetNamespace" value="http://www.acme.com/"/>
  <parameter name="className" value="com.acme.MyService" />

  <operation name="doSomething" returnQName="acme:Response">
    <documentation>Does something.</documentation>
    <fault name="MyException" type="acme:MyException" class="com.acme.MyException" />
  </operation>
</service>
这使得异常消失,这并不是一件好事,因为现在什么都没有发生。在进行这些更改后,我没有收到来自我的服务的任何XML响应。除此之外,即使这样做有效,在我的所有对象中添加奇怪的静态方法也很糟糕


我遗漏了什么吗?要从Axis 1中获得正确的包装文档文字支持,我真正需要做什么?

以下是Axis 1.x文档中可能有用的相关部分:

以下是轴1.x文档中可能有用的相关部分:

public static void registerTypeMapping(Call call) {
  final String WSDL_TARGET_NAMESPACE = "http://www.acme.com/";
  final QName QNAME = new QName(WSDL_TARGET_NAMESPACE);
  call.registerTypeMapping(Reponse.class, QNAME, 
      new BeanSerializerFactory(Response.class, QNAME), 
      new BeanDeserializerFactory(Response.class, QNAME));
}