`

webservice简单运用_笔记

 
阅读更多

1、导入cxf的jar包;

2、在项目的web.xml中配置cxf如下:

    <!-- CXF -->
    <servlet>   
        <servlet-name>CXFService</servlet-name>
        <servlet-class>org.apache.cxf.transport.servlet.CXFServlet</servlet-class>
    </servlet>
    <servlet-mapping>   
        <servlet-name>CXFService</servlet-name>   
        <url-pattern>/cxfService/*</url-pattern>
    </servlet-mapping>

3、编写代码

    3-1:接口HelloWorldService

        public interface HelloWorldService {

            void sayHello(String str);
        }

    3-2:实现类HelloWorldServiceImpl

        import javax.jws.WebService;

        import cn.ce.smap.webservice.HelloWorldService;
        @WebService
        public class HelloWorldServiceImpl implements HelloWorldService {

            @Override
            public void sayHello(String str) {
                System.out.println(str + ",你好!");
            }

        }
    3-3:测试类HelloWorldServiceTest
        import org.apache.cxf.endpoint.Client;
        import org.apache.cxf.jaxws.endpoint.dynamic.JaxWsDynamicClientFactory;
        import org.apache.cxf.transport.http.HTTPConduit;
        import org.apache.cxf.transports.http.configuration.HTTPClientPolicy;

        public class HelloWorldServiceTest {

            public static void main(String[] args) throws Exception {
                 String WSDL_URL_QC = "http://localhost:8080/smaDev/cxfService/HelloService?wsdl";
                JaxWsDynamicClientFactory wcf = JaxWsDynamicClientFactory.newInstance();
                Client client = wcf.createClient(WSDL_URL_QC);
                // 设置超时单位为毫秒
                HTTPConduit http = (HTTPConduit) client.getConduit();
                HTTPClientPolicy httpClientPolicy = new HTTPClientPolicy();
                httpClientPolicy.setConnectionTimeout(60000);// 连接超时600s
                // httpClientPolicy.setAllowChunking(false);//取消块编码
                httpClientPolicy.setReceiveTimeout(6000000);// 响应超时600s
                http.setClient(httpClientPolicy);
                Object[] results = client.invoke("sayHello", "test");
                System.out.println(results.length);
            }
        }

    3-4:配置service.xml

    <?xml version="1.0" encoding="UTF-8"?>
    <beans xmlns="http://www.springframework.org/schema/beans"
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xmlns:jaxws="http://cxf.apache.org/jaxws"
        xmlns:http-conf="http://cxf.apache.org/transports/http/configuration"
        xmlns:aop="http://www.springframework.org/schema/aop"
        xmlns:tx="http://www.springframework.org/schema/tx"
        xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd
                       http://www.springframework.org/schema/lang http://www.springframework.org/schema/lang/spring-lang-2.0.xsd
                       http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-2.0.xsd
                       http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-2.0.xsd
                       http://cxf.apache.org/jaxws
                       http://cxf.apache.org/schemas/jaxws.xsd
                       http://cxf.apache.org/transports/http/configuration
                          http://cxf.apache.org/schemas/configuration/http-conf.xsd"
        default-autowire="byName" default-lazy-init="false">
        <import resource="classpath:META-INF/cxf/cxf.xml"/>
        <import resource="classpath:META-INF/cxf/cxf-extension-soap.xml"/>
        <import resource="classpath:META-INF/cxf/cxf-servlet.xml"/>
    
        <bean name="helloWorldService" class="cn.test.HelloWorldService"/>
        <jaxws:endpoint id="HelloService" implementor="#helloWorldService"

             address="/helloWorldService" />
        <http-conf:conduit name="*.http-conduit">     
            <http-conf:client ConnectionTimeout="10000" ReceiveTimeout="1800000"/>    
        </http-conf:conduit>   
    </beans>

 

最后运行测试类就可以了。

 

分享到:
评论

相关推荐

    webservice_symbolbdm_webservice_

    【标题】"webservice_symbolbdm_webservice_" 涉及到的是一个使用Java语言实现的Web服务(WebService)项目,其主要目的是实现客户端与服务器之间的通信。在Web服务的世界里,这种通信机制允许不同系统间的数据交换...

    wsdl.rar_WEBservice-Sqlserver_java webservice_webservice sgip_w

    【标签】"webservice-sqlserver java_webservice webservice__sgip wsdl_webservice_ wsdl.rar"进一步揭示了技术栈。"sqlserver"表明数据库管理是通过SQL Server完成的,这通常涉及到使用JDBC(Java Database ...

    hnsy-webservice_use_example-master.zip

    【描述】"webservice C#运用" 描述了该压缩包的主要内容,即展示了C#编程语言与Web服务的交互。Web服务是一种基于互联网的软件组件,允许不同系统间的应用程序共享数据和功能。在C#中,我们通常使用.NET框架提供的...

    CPP-webservice.zip_HTTP WEB SERVER_Webservice GET POST_http get_

    C++ 编写的有关HTTP协议的web server支持HTTP协议中GET,POST,PUT等方法,是很好学习HTTP协议,做web server很好的源码

    webservice_server_client.zip

    首先,我们来看JAX-WS,它是Java平台标准版(Java SE)和企业版(Java EE)的一部分,为开发和部署Web服务提供了一种简单且强大的方式。使用JAX-WS,你可以创建一个服务端点(SEI,Service Endpoint Interface),这...

    Flash2WebService.rar_flash_flash webservice

    标题中的"Flash2WebService.rar_flash_flash webservice"表明这是一个关于使用Flash与Java Web Service交互的教程或资源包。描述进一步证实了这一点,提到"FLASH连接JAVA WEBSERVICE",这通常涉及利用ActionScript...

    WebService.rar_distantude_webservice

    WebService 使用案例,学习用

    Delphi-develop-WebService.rar_delphi WebService_delphi webservi

    6. **调用Web Service**:在Delphi中,调用Web Service就像调用本地方法一样简单,因为生成的客户端代理类封装了所有网络通信细节。 7. **调试Web Service**:Delphi提供了强大的调试工具,如Internet Debugging ...

    Delphi-Invoke-Java-WebService.rar_delphi webservice_delphi的invok

    Java WebService通常使用SOAP(Simple Object Access Protocol)或REST(Representational State Transfer)协议来实现。SOAP是一种XML格式的消息传递协议,适合复杂的数据交换;REST则更轻量级,通常用于简单的...

    Webservice入门教程_用JDK开发Webservice示例代码

    Webservice是一种基于网络的、开放式的信息交换标准,它允许不同系统之间进行数据交换,实现应用程序之间的互操作性。本教程将带你入门Webservice的开发,特别聚焦于使用JDK(Java Development Kit)来构建...

    WebService入门教程_Schema学习示例代码

    【WebService入门教程_Schema学习示例代码】 在IT行业中,WebService是一种基于标准的、平台无关的、可互...通过深入学习和实践,你将能够熟练地运用Schema来设计和验证XML数据,进一步提升你的WebService开发技能。

    xfire-HelloWorld.rar_webservice_webservice FPGA _xfire hellowor

    标题中的“xfire-HelloWorld.rar_webservice_webservice FPGA_xfire hellowor”提到了几个关键元素:xfire、webservice、FPGA以及一个简单的示例应用“HelloWorld”。这表明我们将探讨的是如何使用xfire这个框架来...

    WebService_資料

    WebService_資料WebService_資料WebService_資料WebService_資料WebService_資料WebService_資料WebService_資料WebService_資料WebService_資料WebService_資料WebService_資料WebService_資料WebService_資料

    WebService_JAX_WS.txt

    WebService的上课知识点整理。由上课老师编写的每一个知识点与整合的概要。非常好的整体复习方案, 需要的赶紧下载

    XSLT+ CSS + JQuery + WebService 实现网站_dotnet整站程序.rar

    在“XSLT+ CSS + JQuery + WebService 实现网站_dotnet整站程序”项目中,这些技术的整合运用为开发高效、动态和响应式的网站提供了强大的支持。XSLT处理XML数据,CSS负责美化界面,JQuery增强了用户交互,而...

    webservice_linux_c++.7z

    linux c++ webservice调用gsoap实现, make soap && make ./server 4567 ./client 2 3 具体细节参考:https://www.cnblogs.com/scue/p/3402360.html

    SayHelloClient2.rar_SayHello webservice_java webservice_service

    标签中的“java_webservice”和“service_webservice”强调了这是基于Java的Web服务实现,而“web_service_”和“webservice”则指代Web服务本身。标签“sayhello__webservice”可能是对Web服务功能的简要概括。 在...

    [其他类别]XSLT+ CSS + JQuery + WebService 实现网站_fldd.zip源码ASP.NET网站源码

    [其他类别]XSLT+ CSS + JQuery + WebService 实现网站_fldd.zip源码ASP.NET网站源码[其他类别]XSLT+ CSS + JQuery + WebService 实现网站_fldd.zip源码ASP.NET网站源码[其他类别]XSLT+ CSS + JQuery + WebService ...

    WebService_Retrofit_GitAPI

    WebService_Retrofit_GitAPI 使用Webservice Retrofit和GitHub API进行应用和使用。 可以通过用户名在GitHub上搜索用户存储库的应用程序,并在ListView中显示用户存储库。

Global site tag (gtag.js) - Google Analytics