WebServices使用HTTPProxy用户和密码的ant WSDLToJava

时间:2013-08-14 14:47:01

标签: java axis2 wsdl2java ws-client

使用ant构建文件从WSDL文件生成java类。由于在防火墙后面,某项任务正在抱怨未知的主机异常。

查看文档,我设置了代理主机名和代理端口,但不清楚如何操作 设置代理用户名和密码.PFB来自我的ant任务的snipper。我也试过

wsdl.home = http://ups1.custhelp.com/cgi-bin/ups1.cfg/services/soap?wsdl axis2.home = D:/softs/axis2-1.6.2

       <target name = "defProxy">
<setproxy proxyhost="proxy.njc.ups.com" proxyport="8080" 
     proxyuser="xxxx" proxypassword="xxxx" />

      <target name="axis2WSDLToJava">
<java classname="org.apache.axis2.wsdl.WSDL2Java" fork="true">
<classpath refid="axis2.classpath"/>
        <arg value="http-proxy-host"/>
        <arg value="proxy.njc.ups.com"/>
        <arg value="http-proxy-port"/>
        <arg value="8080"/>
        <arg value="-uri"/>
        <arg value="${wsdl.home}"/>
        <arg value="-ns2p"/>
        <arg value="urn:wsdl.ws.rightnow.com/v1=com.rightnow.ws.wsdl,urn:objects.ws.rightnow.com/v1=com.rightnow.ws.objects,urn:messages.ws.rightnow.com/v1=com.rightnow.ws.messages,urn:common.ws.rightnow.com/v1=com.rightnow.ws.common"/>
        <arg value="-o"/>
        <arg file="${build.src.dir}"/>
        <arg value="--noBuildXML"/>
        <arg value="-Ejavaversion"/>
        <arg value="1.6"/>
        <arg value="-Eproxy-user"/>
        <arg value="XXXX"/>
        <arg value="-Eproxy-password"/>
        <arg value="xxxx"/>

        <arg value="-u"/>
        <arg value="-uw"/>
        <arg value="-or"/>

我需要从WSDL生成java类。请帮忙

1 个答案:

答案 0 :(得分:0)

您可以在java task中使用<sysproperty>元素。

由于您使用的是http网址,因此可以使用http.proxyHosthttp.proxyPort。有关更多信息,请参阅proxies的Java指南。

示例:

<java classname="org.apache.axis2.wsdl.WSDL2Java" fork="true">
    <classpath refid="axis2.classpath"/>
    <sysproperty key="http.proxyHost" value="proxy.njc.ups.com" />
    <sysproperty key="http.proxyPort" value="8080" />
    ...
</java>