`
away888
  • 浏览: 27338 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

Axis2 修改 soap-address-location

阅读更多
初次使用axis2,面对要自定义 address location的路径,和axis2-web, index.jsp 的链接,混弄了1天,幸好顺利解决。

     因为我的项目部署在web容器是jboss(port:8080),而外面的web容器是Apache(port:80)。当外面通过80端口访问我的项目时,必需先通过apache,再到JBOSS.
而axis2会自动生成address location,路径与端口为当前的JBOSS.
出来效果如下
<wsdl:service name="Gate">
<wsdl:port name="GateSoap12" binding="tns:GateSoap12">
<soap12:address location="http://myhost.com:8080/project/services/Gate.GateSoap12/"/>
</wsdl:port>
<wsdl:port name="GateSoap" binding="tns:GateSoap">
<soap:address location="http://myhost.com:8080/project/services/Gate.GateSoap/"/>
</wsdl:port>
</wsdl:service>

为了去掉8080端口,有两种方法,
1.自定义 service.xml,它在project/WEB-INF/services/Gate/META-INF/下面
   只要把这句设置为false值,就可以默认读取同路劲下的Gate.wsdl的文件     <parameter name="modifyUserWSDLPortAddress">false</parameter>
那个WSDL任你自定。

2. 我们可以修改 axis2.xml 位于project/WEB-INF/conf/下面
查找这句 <!--<parameter name="httpFrontendHostUrl">https://someotherhost/context</parameter>-->
你可以随便定义你想要的hostname 和 port.
例如我想要80端口的,就可以这样: <parameter name="httpFrontendHostUrl">http://myhost.com/project</parameter>
这个修改是全局的,你设置<parameter name="modifyUserWSDLPortAddress">true</parameter>时,就可以自动生成的WSDL,包含了http://myhost.com/project的URL了。
同时,axis2-web里面的所有路径都以http://myhost.com/project开头了。

最后,我想要的效果出来了,
<wsdl:service name="Gate">
<wsdl:port name="GateSoap12" binding="tns:GateSoap12">
<soap12:address location="http://myhost.com/project/services/Gate.GateSoap12/"/>
</wsdl:port>
<wsdl:port name="GateSoap" binding="tns:GateSoap">
<soap:address location="http://myhost.com/project/services/Gate.GateSoap/"/>
</wsdl:port>
</wsdl:service>
Thank you.
0
2
分享到:
评论
2 楼 chen_lian 2015-05-22  
发布生成的wsdl address location 中的Gate.GateSoap中把"."号之后的给去掉呢
1 楼 zhonggeneral 2012-12-07  
这个问题我也遇到过,但是这个是apache配置问题,axis框架自身没有问题,apache反向代理没配置好,所以头信息才不一样,不需要修改你的程序。

相关推荐

    Axis2 Webservice端例子

    &lt;soap:address location="http://localhost:8080/axis2/services/HelloWorldService"/&gt; ``` 4. **打包服务**:将接口类、实现类和服务描述文件(WSDL)打包成一个`.aar`文件。Axis2支持通过Ant或Maven脚本来...

    AXIS2简单例子

    &lt;soap:address location="http://localhost:8080/Axis2/services/HelloWorld"/&gt; &lt;soap:binding style="rpc" transport="http://schemas.xmlsoap.org/soap/http"/&gt; &lt;soap:body use="encoded" encoding...

    webservice :spring 3+cxf3.4服务方,AXIS1.4请示方调用

    &lt;wsdl:soap:address location="http://10.64.6.60:8080/sjqz/cxf/businessLinkageService"/&gt; ``` **步骤五:生成客户端代码** 最后,使用`WSDL2Java`工具根据修改后的WSDL文件生成客户端代码: ```bash java -D...

    cxf客户端调用axis服务端流程

    CXF主要用来创建和消费SOAP和RESTful Web服务,而Axis则是Apache组织早期推出的一款Web服务框架,主要用于SOAP服务。本文将深入探讨如何使用CXF客户端调用Axis服务端的流程。 ### 一、了解CXF和Axis **CXF**(CXF:...

    axis webservice简单示例

    &lt;soap:address location="http://example.com/HelloWorld"/&gt; ``` 生成代码后,我们需要部署服务。在服务器端,我们可以创建一个`HelloWorldService`类,继承自`org.apache.axis.server.AxisServer`,并设置...

    SOAP框架跨平台通信.pdf

    &lt;soap:address location="http://example.com/HelloWorld"/&gt; ``` 三、SOAP1.1规范Arrays 在SOAP 1.1中,数组可以通过几种方式表示,包括SOAP数组(SOAP Array)、数组类型(Array Type)和数组元素(Array ...

    使用php搭建webService服务器(代码实例)

    &lt;soap:address location="http://[webservice"/&gt; ``` 通过这个示例,我们可以看到 WSDL 文件的基本结构和元素,包括数据类型、消息、操作、绑定和服务等。 结论 使用 PHP 搭建 WebService 服务器需要了解 ...

    初探WSDL2JAVA工具的使用

    &lt;soap:address location="http://localhost:8080/phone"/&gt; ``` 通过WSDL2JAVA工具,我们可以自动生成以下Java代码: 1. **电话实体类**:`Phone`类包含了电话号码的各个组成部分,并实现了序列化接口。 2. *...

    WebService之WSDL文件讲解

    &lt;soap:address location="http://www.Monson-Haefel.com/jwsbook/BookQuote/"/&gt; ``` - **name** 属性:定义了服务的名称。 - **port** 元素:定义了一个端口。 - **binding** 属性:定义了端口所使用的绑定。 - ...

    Web Service描述语言 WSDL 详解(转)

    &lt;soap:address location="http://example.com/hello"/&gt; &lt;soap:binding style="rpc" transport="http://schemas.xmlsoap.org/soap/http"/&gt; &lt;soap:operation soapAction="urn:sayHello"/&gt; &lt;soap:body ...

    Java6开发WebService入门

    在早期的Web服务开发中,开发者通常会使用CXF、Axis2、XFire等工具来构建基于Java的应用程序。这些工具之所以被广泛采用,主要是因为它们能够提供广泛的兼容性和灵活性,并且适应多种不同的Java版本环境。然而,在...

    wsdl文件结构详细分析

    &lt;soap:address location="http://example.com/hello"/&gt; ``` 在这个例子中,`types`部分没有显示,但通常会包含定义消息部分的XML Schema。`message`定义了请求和响应的消息结构,`portType`定义了操作,`...

Global site tag (gtag.js) - Google Analytics