JAX-WS @WebParam自定義參數名稱無效


在使用myeclipse 自動對service方法類進行創建webservice服務時,默認創建參數命名都是arg0-9

這樣就導致生成的xml配置文件命名不規范,需要對參數名稱進行修改;

 

myeclipse 創建webservice可以查看這個:

 

第一步:導入jar包

   cxf-2.3.0.jar --這個自己網絡找一個。

第二步:

   添加接口類,如

@WebService
public interface ITestServiceDelegate {
    public String SendSmsCode(
            @WebParam(name="user") User user, 
            @WebParam(name="name") String name
        );
}
@WebService(
  targetNamespace = "http://service.com/",
  serviceName = "TestServiceService",
  portName = "service/TestServicePort",
  wsdlLocation = "WEB-INF/wsdl/TestServiceService.wsdl") public class TestServiceDelegate implements ITestServiceDelegate { public String SendSmsCode( @WebParam(name="user") User user, @WebParam(name="name") String name ) {return ""; }
}

第三步:修配置文件

WEB-INF/wsdl/TestServiceService.wsdl  -- 這個在不生效的時候,可以添加;--正常情況下不需要指定的

<portType name="TestServiceDelegate">
    <operation name="DoQuery" parameterOrder="user name">
      <input message="tns:DoQuery"/>
      <output message="tns:DoQueryResponse"/>
    </operation>
</portType>

 

WEB-INF/wsdl/TestServiceService_schema1.xsd

把里面的arg0修改給user,arg1修改為arg1

 

如果沒生效:可以先refresh 和clean 一下項目;

 

然后就OK了,如有問題,可以留言

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM