<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    隨筆 - 312, 文章 - 14, 評(píng)論 - 1393, 引用 - 0
    數(shù)據(jù)加載中……

    WebService大講堂之Axis2(3):使用services.xml文件發(fā)布WebService

    本文為原創(chuàng),如需轉(zhuǎn)載,請(qǐng)注明作者和出處,謝謝!

    上一篇:WebService大講堂之Axis2(2):復(fù)合類型數(shù)據(jù)的傳遞

        用Axis2實(shí)現(xiàn)Web Service,雖然可以將POJO類放在axis2\WEB-INF\pojo目錄中直接發(fā)布成Web Service,這樣做不需要進(jìn)行任何配置,但這些POJO類不能在任何包中。這似乎有些不方便,為此,Axis2也允許將帶包的POJO類發(fā)布成Web Service。
        先實(shí)現(xiàn)一個(gè)
    POJO類,代碼如下:

    package service;

    public class MyService
    {
        
    public String getGreeting(String name)
        {
            
    return "您好 " + name;
        }
        
    public void update(String data)
        {
            System.out.println(
    "<" + data + ">已經(jīng)更新");
        }
    }

    這個(gè)類有兩個(gè)方法,這兩個(gè)方法都需要發(fā)布成Web Service方法。這種方式和直接放在pojo目錄中的POJO類不同。要想將MyService類發(fā)布成Web Service,需要一個(gè)services.xml文件,這個(gè)文件需要放在META-INF目錄中,該文件的內(nèi)容如下:

    <service name="myService">
        
    <description>
            Web Service例子
        
    </description>
        
    <parameter name="ServiceClass">
            service.MyService  
        
    </parameter>
        
    <messageReceivers>
            
    <messageReceiver mep="http://www.w3.org/2004/08/wsdl/in-out"
                class
    ="org.apache.axis2.rpc.receivers.RPCMessageReceiver" />
            
    <messageReceiver mep="http://www.w3.org/2004/08/wsdl/in-only"
                class
    ="org.apache.axis2.rpc.receivers.RPCInOnlyMessageReceiver" />
        
    </messageReceivers>
    </service>

    其中<service>元素用于發(fā)布Web Service,一個(gè)<service>元素只能發(fā)布一個(gè)WebService類,name屬性表示WebService名,如下面的URL可以獲得這個(gè)WebServiceWSDL內(nèi)容:

    http://localhost:8080/axis2/services/myService?wsdl

    其中name屬性名就是上面URL"?""/"之間的部分。

    <description>元素表示當(dāng)前Web Service的描述,<parameter>元素用于設(shè)置WebService的參數(shù),在這里用于設(shè)置WebService對(duì)應(yīng)的類名。在這里最值得注意的是<messageReceivers>元素,該元素用于設(shè)置處理WebService方法的處理器。例如,getGreeting方法有一個(gè)返回值,因此,需要使用可處理輸入輸出的RPCMessageReceiver類,而update方法沒有返回值,因此,需要使用只能處理輸入的RPCInOnlyMessageReceiver類。

    使用這種方式發(fā)布WebService,必須打包成.aar文件,..aar文件實(shí)際上就是改變了擴(kuò)展名的.jar文件。在現(xiàn)在建立了兩個(gè)文件:MyService.javaservices.xml。將MyService.java編譯,生成MyService.class。services.xmlMyService.class文件的位置如下:

    D:\ws\service\MyService.class

    D:\ws\META-INF\services.xml

       
    windows控制臺(tái)中進(jìn)入ws目錄,并輸入如下的命令生成.aar文件(實(shí)際上,.jar文件也可以發(fā)布webservice,但axis2官方文檔中建議使用.aar文件發(fā)布webservice):

    jar cvf ws.aar .

       
    最后將ws.aar文件復(fù)制到<Tomcat安裝目錄>\webapps\axis2\WEB-INF\services目錄中,啟動(dòng)Tomcat后,就可以調(diào)用這個(gè)WebService了。調(diào)用的方法和《WebService大講堂之Axis2(1):用POJO實(shí)現(xiàn)0配置的WebService》所講的方法類似。

    另外services.xml文件中也可以直接指定WebService類的方法,如可以用下面的配置代碼來發(fā)布WebService


    <service name="myService">
        
    <description>
            Web Service例子
        
    </description>
        
    <parameter name="ServiceClass">
            service.MyService  
        
    </parameter>
        
    <operation name="getGreeting">
            
    <messageReceiver class="org.apache.axis2.rpc.receivers.RPCMessageReceiver" />
        
    </operation>
        
    <operation name="update">
            
    <messageReceiver
                
    class="org.apache.axis2.rpc.receivers.RPCInOnlyMessageReceiver" />
        
    </operation>
    </service>

    上面的配置代碼前面的部分和以前的services.xml文件的內(nèi)容相同,但后面使用了<operation>元素來指定每一個(gè)WebService方法,并單獨(dú)指定了處理每一個(gè)方法的處理器。對(duì)于客戶端來說,調(diào)用使用這兩個(gè)services.xml文件發(fā)布的WebService并沒有太大我區(qū)別,只是使用第二個(gè)services.xml文件發(fā)布WebServices后,在使用wsdl2java命令或使用C#delphi等生成客戶端的stub時(shí),update方法的String類型被封裝在了update類中,在傳遞update方法的參數(shù)時(shí)需要建立update類的對(duì)象實(shí)例。而使用第一個(gè)services.xml文件發(fā)布的WebService在生成stub時(shí)直接可以為update方法傳遞String類型的參數(shù)。從這一點(diǎn)可以看出,這兩種方法生成的WSDL有一定的區(qū)別。但實(shí)際上,如果客戶端程序使用第一個(gè)services.xml文件發(fā)布的WebService生成stub類時(shí)(這時(shí)update方法的參數(shù)是String),在服務(wù)端又改為第二個(gè)services.xml文件來發(fā)布WebService,這時(shí)客戶端并不需要再重新生成stub類,而可以直接調(diào)用update方法。也就是說,服務(wù)端使用什么樣的方式發(fā)布WebService,對(duì)客戶端并沒有影響。

    如果想發(fā)布多個(gè)WebService,可以使用<serviceGroup>元素,如再建立一個(gè)MyService1類,代碼如下:

    package service
    public class MyService1
    {
        
    public String getName()  
        { 
            
    return "bill";
        }
    }

    services.xml文件中可以使用如下的配置代碼來配置MyServiceMyService1類:


    <serviceGroup>
        <service name="myService">
           
    <description>
                Web Service例子
           
    </description>
           
    <parameter name="ServiceClass">
                service.MyService  
           
    </parameter>
           
    <messageReceivers>
               
    <messageReceiver mep="http://www.w3.org/2004/08/wsdl/in-out"
                    class
    ="org.apache.axis2.rpc.receivers.RPCMessageReceiver" />
               
    <messageReceiver mep="http://www.w3.org/2004/08/wsdl/in-only"
                    class
    ="org.apache.axis2.rpc.receivers.RPCInOnlyMessageReceiver" />
           
    </messageReceivers>
        </service>
        <service name="myService1">
           
    <description>
                Web Service例子
          
    </description>
           
    <parameter name="ServiceClass">
                service.MyService1  
           
    </parameter>
            
    <messageReceivers>
              
    <messageReceiver mep="http://www.w3.org/2004/08/wsdl/in-out"
                    class
    ="org.apache.axis2.rpc.receivers.RPCMessageReceiver" />
              
    <messageReceiver mep="http://www.w3.org/2004/08/wsdl/in-only"
                    class
    ="org.apache.axis2.rpc.receivers.RPCInOnlyMessageReceiver" />
           
    </messageReceivers>
        </service>
    </serviceGroup>

    下一篇:WebService大講堂之Axis2(4):二進(jìn)制文件傳輸




    Android開發(fā)完全講義(第2版)(本書版權(quán)已輸出到臺(tái)灣)

    http://product.dangdang.com/product.aspx?product_id=22741502



    Android高薪之路:Android程序員面試寶典 http://book.360buy.com/10970314.html


    新浪微博:http://t.sina.com.cn/androidguy   昵稱:李寧_Lining

    posted on 2009-01-21 18:08 銀河使者 閱讀(56714) 評(píng)論(59)  編輯  收藏 所屬分類: java 、 原創(chuàng) 、webservice

    評(píng)論

    # re: WebService大講堂之Axis2(3):使用services.xml文件發(fā)布WebService  回復(fù)  更多評(píng)論   

    如果service有個(gè)有返回值但不需要傳入?yún)?shù)的方法,<messageReceivers>應(yīng)該怎樣配置?使用RPCMessageReceiver的話,在c#客戶端中生成的方法無法返回正確的返回值。
    例如:
    service方法:PeopleInfo getPeopleInfo (){.....}
    c#客戶端生成方法的返回值是 getPeopleInfoReponse
    2009-02-13 17:20 | yapituy

    # re: WebService大講堂之Axis2(3):使用services.xml文件發(fā)布WebService  回復(fù)  更多評(píng)論   

    不需要參數(shù)就是參數(shù)為0,用

        <operation name="getPeopleInfo " mep="http://www.w3.org/2006/01/wsdl/in-out">
            <messageReceiver class="org.apache.axis2.rpc.receivers.RPCMessageReceiver"/>
        </operation>
    2009-02-13 17:50 | 銀河使者

    # re: WebService大講堂之Axis2(3):使用services.xml文件發(fā)布WebService  回復(fù)  更多評(píng)論   

    試了,不行的。在對(duì)象瀏覽器中查看生成的對(duì)應(yīng)方法是這樣的
    public WindowsFormsApplication1.PeopleManage.getPeopleInfoReponse getPeopleInfo()

    RPCInOnlyMessageReceiver應(yīng)該是方法沒有返回值的情況下使用吧。而這個(gè)方法是有返回值的
    2009-02-15 22:35 | yapituy

    # re: WebService大講堂之Axis2(3):使用services.xml文件發(fā)布WebService  回復(fù)  更多評(píng)論   

    問一下,怎么才能生成service.xml文件呢,不會(huì)全手寫吧
    2009-02-23 17:15 | zuzong

    # re: WebService大講堂之Axis2(3):使用services.xml文件發(fā)布WebService  回復(fù)  更多評(píng)論   

    我一般是手寫的,MyEclipse或jbuilder也許能自動(dòng)生成services.xml,但我沒用過。
    2009-02-23 19:06 | 銀河使者

    # re: WebService大講堂之Axis2(3):使用services.xml文件發(fā)布WebService  回復(fù)  更多評(píng)論   

    將ws.aar文件復(fù)制到<Tomcat安裝目錄>\webapps\axis2\WEB-INF\services目錄中,啟動(dòng)Tomcat后Tomcat報(bào)錯(cuò) 請(qǐng)指教
    2009-03-26 17:55 | sekirai

    # re: WebService大講堂之Axis2(3):使用services.xml文件發(fā)布WebService  回復(fù)  更多評(píng)論   

    @sekirai
    報(bào)什么錯(cuò),把錯(cuò)誤信息貼出來。
    2009-03-26 19:46 | 銀河使者

    # re: WebService大講堂之Axis2(3):使用services.xml文件發(fā)布WebService  回復(fù)  更多評(píng)論   

    我寫了個(gè)測(cè)試程序,在IE中輸入
    http://192.168.0.171:8083/ppts/services/MyService?wsdl
    能看到xml文件,內(nèi)容也都正確,但是輸入http://192.168.0.171:8083/ppts/services/MyService就出錯(cuò)
    org.apache.axis2.AxisFault: The endpoint reference (EPR) for the Operation not found is /ppts/services/MyService and the WSA Action = null。不知可否指點(diǎn)下
    2009-04-22 11:48 | liufeng

    # re: WebService大講堂之Axis2(3):使用services.xml文件發(fā)布WebService  回復(fù)  更多評(píng)論   

    輸入http://192.168.0.171:8083/ppts/services/MyService?wsdl是為了生成wsdl文檔 。而輸入http://192.168.0.171:8083/ppts/services/MyService,后面必須要加調(diào)用的方法才可以,如你的webservice里有一個(gè)方法叫g(shù)etName,沒有參數(shù),則可以調(diào)用http://192.168.0.171:8083/ppts/services/MyService/getName,則會(huì)調(diào)用getName方法。在axis2生成的客戶端stub類中只寫了http://192.168.0.171:8083/ppts/services/MyService,是因?yàn)樵诤竺娴恼Z句中處理了,使用了SOAP消息提交的getName請(qǐng)求。
    2009-04-22 12:14 | 銀河使者

    # re: WebService大講堂之Axis2(3):使用services.xml文件發(fā)布WebService  回復(fù)  更多評(píng)論   

    @銀河使者
    哦,謝謝
    2009-04-22 12:26 | liufeng

    # re: WebService大講堂之Axis2(3):使用services.xml文件發(fā)布WebService  回復(fù)  更多評(píng)論   

    將ws.aar文件復(fù)制到<Tomcat安裝目錄>\webapps\axis2\WEB-INF\services目錄中,啟動(dòng)Tomcat后Tomcat報(bào)錯(cuò)
    Error: org.apache.axis2.deployment.DeploymentException: com.ctc.wstx.exc.WstxIOException: Invalid UTF-8 middle byte 0xfd (at char #66, byte #-1) at org.apache.axis2.deployment.repository.util.ArchiveReader.processServiceGroup(ArchiveReader.java:151) at org.apache.axis2.deployment.ServiceDeployer.deploy(ServiceDeployer.java:81) at org.apache.axis2.deployment.repository.util.DeploymentFileData.deploy(DeploymentFileData.java:136) at org.apache.axis2.deployment.DeploymentEngine.doDeploy(DeploymentEngine.java:597) at org.apache.axis2.deployment.repository.util.WSInfoList.update(WSInfoList.java:144) at org.apache.axis2.deployment.RepositoryListener.update(RepositoryListener.java:330) at org.apache.axis2.deployment.RepositoryListener.checkServices(RepositoryListener.java:227) at org.apache.axis2.deployment.RepositoryListener.startListener(RepositoryListener.java:324) at org.apache.axis2.deployment.scheduler.SchedulerTask.checkRepository(SchedulerTask.java:64) at org.apache.axis2.deployment.scheduler.SchedulerTask.run(SchedulerTask.java:71) at org.apache.axis2.deployment.scheduler.Scheduler$SchedulerTimerTask.run(Scheduler.java:83) at java.util.TimerThread.mainLoop(Unknown Source) at java.util.TimerThread.run(Unknown Source) Caused by: org.apache.axiom.om.OMException: com.ctc.wstx.exc.WstxIOException: Invalid UTF-8 middle byte 0xfd (at char #66, byte #-1) at org.apache.axiom.om.impl.builder.StAXOMBuilder.next(StAXOMBuilder.java:249) at org.apache.axiom.om.impl.llom.OMDocumentImpl.getOMDocumentElement(OMDocumentImpl.java:132) at org.apache.axiom.om.impl.builder.StAXOMBuilder.getDocumentElement(StAXOMBuilder.java:411) at org.apache.axis2.util.XMLUtils.toOM(XMLUtils.java:602) at org.apache.axis2.util.XMLUtils.toOM(XMLUtils.java:581) at org.apache.axis2.deployment.DescriptionBuilder.buildOM(DescriptionBuilder.java:97) at org.apache.axis2.deployment.repository.util.ArchiveReader.buildServiceGroup(ArchiveReader.java:77) at org.apache.axis2.deployment.repository.util.ArchiveReader.processServiceGroup(ArchiveReader.java:144) ... 12 more Caused by: com.ctc.wstx.exc.WstxIOException: Invalid UTF-8 middle byte 0xfd (at char #66, byte #-1) at com.ctc.wstx.sr.StreamScanner.throwFromIOE(StreamScanner.java:683) at com.ctc.wstx.sr.BasicStreamReader.next(BasicStreamReader.java:1086) at org.apache.axiom.om.impl.builder.StAXOMBuilder.parserNext(StAXOMBuilder.java:506) at org.apache.axiom.om.impl.builder.StAXOMBuilder.next(StAXOMBuilder.java:161) ... 19 more Caused by: java.io.CharConversionException: Invalid UTF-8 middle byte 0xfd (at char #66, byte #-1) at com.ctc.wstx.io.UTF8Reader.reportInvalidOther(UTF8Reader.java:313) at com.ctc.wstx.io.UTF8Reader.read(UTF8Reader.java:204) at com.ctc.wstx.io.ReaderSource.readInto(ReaderSource.java:84) at com.ctc.wstx.io.BranchingReaderSource.readInto(BranchingReaderSource.java:57) at com.ctc.wstx.sr.StreamScanner.loadMore(StreamScanner.java:967) at com.ctc.wstx.sr.StreamScanner.getNext(StreamScanner.java:738) at com.ctc.wstx.sr.BasicStreamReader.nextFromProlog(BasicStreamReader.java:1995) at com.ctc.wstx.sr.BasicStreamReader.next(BasicStreamReader.java:1069) ... 21 more
    2009-05-09 10:25 | 亦凡

    # re: WebService大講堂之Axis2(3):使用services.xml文件發(fā)布WebService  回復(fù)  更多評(píng)論   

    請(qǐng)問這個(gè)是為啥呢?
    2009-05-09 10:25 | 亦凡

    # re: WebService大講堂之Axis2(3):使用services.xml文件發(fā)布WebService  回復(fù)  更多評(píng)論   

    @亦凡
    你用的是jdk的哪個(gè)版本,tomcat和開發(fā)webservice是用的同一個(gè)jdk版本嗎?
    2009-05-10 08:43 | 銀河使者

    # re: WebService大講堂之Axis2(3):使用services.xml文件發(fā)布WebService  回復(fù)  更多評(píng)論   

    錯(cuò)誤已經(jīng)找到了,是services.xml中的中文,我去掉中文就可以了,但是在servicelist列表中只能看到axis2自帶的vertion服務(wù),不能看到Myservice,這是為啥呢?但是Myservice可以正常使用
    2009-05-11 14:26 | 亦凡

    # re: WebService大講堂之Axis2(3):使用services.xml文件發(fā)布WebService  回復(fù)  更多評(píng)論   

    要想在services.xml中加中文,需要將編碼設(shè)為UTF-8或GBK。你怎么部署的?再刷新一下,或重啟tomcat,將tomcat的work目錄清空看看
    2009-05-11 15:12 | 銀河使者

    # re: WebService大講堂之Axis2(3):使用services.xml文件發(fā)布WebService  回復(fù)  更多評(píng)論   

    能告訴我一下,在linux下怎么配置嗎? 我在linux下配置了一天也沒配置出來,在win下挺好用的.
    2009-05-15 17:32 | 曼聯(lián)

    # re: WebService大講堂之Axis2(3):使用services.xml文件發(fā)布WebService[未登錄]  回復(fù)  更多評(píng)論   

    您好,不知道我是不是理解錯(cuò)了,下面這段
    “使用這種方式發(fā)布WebService,必須打包成.aar文件,..aar文件實(shí)際上就是改變了擴(kuò)展名的.jar文件。在現(xiàn)在建立了兩個(gè)文件:MyService.java和services.xml。將MyService.java編譯,生成MyService.class。services.xml和MyService.class文件的位置如下:

    D:\ws\service\MyService.class

    D:\ws\META-INF\services.xml


    我的做法是在D盤下建立WS目錄,然后在WS中分別創(chuàng)建service和META-INF目錄,并將相應(yīng)的文件放到里面,然后在windows控制臺(tái)中進(jìn)入WS目錄,輸入
    jar cvf ws.aar,結(jié)果抱錯(cuò)“'c' 標(biāo)志需要指定輸入文件名!”這是怎么回事?謝謝
    2009-05-20 15:56 | 菜鳥

    # re: WebService大講堂之Axis2(3):使用services.xml文件發(fā)布WebService  回復(fù)  更多評(píng)論   

    @菜鳥
    你看一看jar命令應(yīng)該如何用
    2009-05-20 16:32 | 銀河使者

    # re: WebService大講堂之Axis2(3):使用services.xml文件發(fā)布WebService  回復(fù)  更多評(píng)論   

    輸入jar -help,看看幫助
    我后面還一個(gè)“.”呢,你沒輸入
    2009-05-20 16:33 | 銀河使者

    # re: WebService大講堂之Axis2(3):使用services.xml文件發(fā)布WebService[未登錄]  回復(fù)  更多評(píng)論   

    謝謝您的幫助,后面的我還沒看,前三章,我覺得寫的非常清楚,十分感謝!
    2009-05-21 10:24 | 菜鳥

    # re: WebService大講堂之Axis2(3):使用services.xml文件發(fā)布WebService  回復(fù)  更多評(píng)論   

    這個(gè)對(duì)應(yīng)的客戶端怎么寫???我是小菜,什么時(shí)候用axiom這個(gè)模塊?用這個(gè)模塊的話 是不是方法的形參和返回參數(shù)都是OMElement類型的?
    2009-06-09 19:38 | 我好菜

    # re: WebService大講堂之Axis2(3):使用services.xml文件發(fā)布WebService  回復(fù)  更多評(píng)論   

    博主的文章太棒了~
    WebService中多個(gè)方法是需要,可能有輸入?yún)?shù),可能有輸出參數(shù),可能有返回值,也可能沒有返回值,那么messageReceiver應(yīng)該怎么配置?需要配置多種嗎?還是要為每個(gè)方法都配置一個(gè)messageReceiver?文章中的事例:
    <service name="myService">
    <description>
    Web Service例子
    </description>
    <parameter name="ServiceClass">
    service.MyService
    </parameter>
    <messageReceivers>
    <messageReceiver mep="http://www.w3.org/2004/08/wsdl/in-out"
    class="org.apache.axis2.rpc.receivers.RPCMessageReceiver" />
    <messageReceiver mep="http://www.w3.org/2004/08/wsdl/in-only"
    class="org.apache.axis2.rpc.receivers.RPCInOnlyMessageReceiver" />
    </messageReceivers>
    </service>
    這種配置什么情況會(huì)用到嗎?
    2009-06-20 12:03 | 入門菜

    # re: WebService大講堂之Axis2(3):使用services.xml文件發(fā)布WebService  回復(fù)  更多評(píng)論   

    @菜鳥
    你試試這個(gè)
    E:\ws>"C:\Program Files\Java\jdk1.6.0_12\bin\jar.exe" cvf ws.aar *.*
    2009-06-25 15:24 | 分享愛的空間

    # re: WebService大講堂之Axis2(3):使用services.xml文件發(fā)布WebService  回復(fù)  更多評(píng)論   

    博主您好!請(qǐng)教一個(gè)問題,我修改了wsdl中的命名空間后,調(diào)用服務(wù)時(shí)服務(wù)端接收到的參數(shù)都為null,這是什么原因?qū)е碌模?
    service.xml如下:
    <service name="Hello" >
    <description>test</description>
    <messageReceivers>
    <messageReceiver mep="http://www.w3.org/2004/08/wsdl/in-only" class="org.apache.axis2.rpc.receivers.RPCInOnlyMessageReceiver" />
    <messageReceiver mep="http://www.w3.org/2004/08/wsdl/in-out" class="org.apache.axis2.rpc.receivers.RPCMessageReceiver"/>
    </messageReceivers>
    <parameter name="ServiceClass">com.test.Hello</parameter>
    <parameter name="useOriginalwsdl">true</parameter>
    <parameter name="modifyUserWSDLPortAddress">true</parameter>
    </service>

    wsdl中的命名空間為:
    targetNamespace="http://com.test.hello"
    修改為:
    targetNamespace="http://hello/test/com"

    修改后服務(wù)端無法接收到客戶端傳遞的參數(shù)。
    2009-07-08 00:11 | weoln

    # re: WebService大講堂之Axis2(3):使用services.xml文件發(fā)布WebService  回復(fù)  更多評(píng)論   

    修改命名空間后,客戶端的調(diào)用代碼需要重新生成stub。
    2009-07-08 08:04 | 銀河使者

    # re: WebService大講堂之Axis2(3):使用services.xml文件發(fā)布WebService  回復(fù)  更多評(píng)論   

    客戶端我使用的是RPC或者AXIOM的方式調(diào)用,沒有生成stub。因?yàn)轫?xiàng)目中有大量的服務(wù)調(diào)用,如果有stub的方式生成大量的代碼比較難維護(hù)。不知道修改命名空間后,采用RPC或者AXIOM的方式能否正常調(diào)用服務(wù)?

    RPC調(diào)用代碼如下:

    RPCServiceClient serviceClient = new RPCServiceClient();
    Options options = serviceClient.getOptions();
    EndpointReference targetEPR = new EndpointReference("http://localhost:8080/axis2/services/Hello");

    options.setTo(targetEPR);
    QName op = new QName("http://hello/test/com" , "hello");
    Object[] Args = new Object[] { "zhangsan" };
    Class[] returnTypes = new Class[] { String.class };
    System.out.println("ss");
    Object[] response = serviceClient.invokeBlocking(op, Args, returnTypes);

    System.out.println("re:"+response[0]);

    AXION方式如下:
    EndpointReference targetEPR = new EndpointReference("http://localhost:8080/axis2/services/Hello");

    Options options = new Options();
    options.setTo(targetEPR);
    options.setTransportInProtocol(Constants.TRANSPORT_HTTP);

    ServiceClient serviceClient = new ServiceClient();
    serviceClient.setOptions(options);

    OMFactory fac = OMAbstractFactory.getOMFactory();
    OMNamespace omNs = fac.createOMNamespace("http://hello/test/com", "ns");
    OMElement method = fac.createOMElement("hello", omNs);//方法名
    OMElement value = fac.createOMElement("name", omNs);//參數(shù)名
    value.addChild(fac.createOMText(value, "zhangsan"));
    method.addChild(value);

    OMElement result = serviceClient.sendReceive(method);
    String response = result.getFirstElement().getText();
    System.out.println(response);

    期待回復(fù),非常感謝!
    2009-07-12 10:04 | weoln

    # re: WebService大講堂之Axis2(3):使用services.xml文件發(fā)布WebService  回復(fù)  更多評(píng)論   

    @銀河使者
    你好,我使用adb方式重新生成了客戶端的調(diào)用代碼,但是服務(wù)端還是不能接收到參數(shù)。
    2009-07-12 10:21 | weoln

    # re: WebService大講堂之Axis2(3):使用services.xml文件發(fā)布WebService  回復(fù)  更多評(píng)論   

    你好,我照著你說的做法已經(jīng)可以部署上去,進(jìn)入控制太可以看到這個(gè)service的兩個(gè)方法,但是當(dāng)我在流瀏覽器里請(qǐng)求一個(gè)方法的時(shí)候報(bào)錯(cuò):
    [ERROR] The ServiceClass object does not implement the required method in the following form: OMElement getGreeting(OMElement e)
    org.apache.axis2.AxisFault: The ServiceClass object does not implement the required method in the following form: OMElement getGreeting(OMElement e)
    at org.apache.axis2.receivers.RawXMLINOutMessageReceiver.invokeBusinessLogic(RawXMLINOutMessageReceiver.java:93)
    at org.apache.axis2.receivers.AbstractInOutSyncMessageReceiver.invokeBusinessLogic(AbstractInOutSyncMessageReceiver.java:42)
    at org.apache.axis2.receivers.AbstractMessageReceiver.receive(AbstractMessageReceiver.java:114)
    at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:173)
    at org.apache.axis2.transport.http.util.RESTUtil.invokeAxisEngine(RESTUtil.java:135)
    at org.apache.axis2.transport.http.util.RESTUtil.processURLRequest(RESTUtil.java:130)
    at org.apache.axis2.transport.http.AxisServlet$RestRequestProcessor.processURLRequest(AxisServlet.java:838)
    at org.apache.axis2.transport.http.AxisServlet.doGet(AxisServlet.java:262)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:627)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:729)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:269)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:172)
    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
    at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117)
    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:108)
    at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:174)
    at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:875)
    at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:665)
    at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:528)
    at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:81)
    at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:689)
    at java.lang.Thread.run(Thread.java:619)

    這是為什么???謝謝了!等待中.....
    2009-08-09 19:01 | Denys

    # re: WebService大講堂之Axis2(3):使用services.xml文件發(fā)布WebService  回復(fù)  更多評(píng)論   

    @銀河使者
    你好,我按照你的步驟做了一下實(shí)驗(yàn),用的是jdk1.6、Tomcat6.0和Axis2 1.5,結(jié)果報(bào)錯(cuò)了,內(nèi)容如下:
    Error: org.apache.axis2.deployment.DeploymentException:
    The services.xml file cannot be found for the service: D:\Program Files\Apache Software Foundation\Tomcat 6.0\webapps\axis2\WEB-INF\services\MyService.aar
    at org.apache.axis2.deployment.repository.util.ArchiveReader.processServiceGroup(ArchiveReader.java:151)
    at org.apache.axis2.deployment.ServiceDeployer.deploy(ServiceDeployer.java:81)
    at org.apache.axis2.deployment.repository.util.DeploymentFileData.deploy(DeploymentFileData.java:136)
    at org.apache.axis2.deployment.DeploymentEngine.doDeploy(DeploymentEngine.java:663)
    at org.apache.axis2.deployment.repository.util.WSInfoList.update(WSInfoList.java:144)
    at org.apache.axis2.deployment.RepositoryListener.update(RepositoryListener.java:338)
    at org.apache.axis2.deployment.RepositoryListener.checkServices(RepositoryListener.java:241)
    at org.apache.axis2.deployment.DeploymentEngine.loadServices(DeploymentEngine.java:131)
    at org.apache.axis2.deployment.WarBasedAxisConfigurator.loadServices(WarBasedAxisConfigurator.java:284)
    at org.apache.axis2.context.ConfigurationContextFactory.createConfigurationContext(ConfigurationContextFactory.java:95)
    at org.apache.axis2.transport.http.AxisServlet.initConfigContext(AxisServlet.java:525)
    at org.apache.axis2.transport.http.AxisServlet.init(AxisServlet.java:443)
    at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1161)
    at org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:981)
    at org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:4044)
    at org.apache.catalina.core.StandardContext.start(StandardContext.java:4350)
    at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:761)
    at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:741)
    at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:525)
    at org.apache.catalina.startup.HostConfig.deployWAR(HostConfig.java:825)
    at org.apache.catalina.startup.HostConfig.deployWARs(HostConfig.java:714)
    at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:490)
    at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1138)
    at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:311)
    at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:120)
    at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1023)
    at org.apache.catalina.core.StandardHost.start(StandardHost.java:719)
    at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1015)
    at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:443)
    at org.apache.catalina.core.StandardService.start(StandardService.java:448)
    at org.apache.catalina.core.StandardServer.start(StandardServer.java:710)
    at org.apache.catalina.startup.Catalina.start(Catalina.java:552)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
    at java.lang.reflect.Method.invoke(Unknown Source)
    at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288)
    at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413) Caused by: org.apache.axis2.deployment.
    DeploymentException: The services.xml file cannot be found for the service: D:\Program Files\Apache Software Foundation\Tomcat 6.0\webapps\axis2\WEB-INF\services\MyService.aar
    at org.apache.axis2.deployment.repository.util.ArchiveReader.processServiceGroup(ArchiveReader.java:148) ... 37 more

    是什么原因啊?期待回復(fù)中,謝謝!
    2009-08-26 13:31 | @fqx666

    # re: WebService大講堂之Axis2(3):使用services.xml文件發(fā)布WebService  回復(fù)  更多評(píng)論   

    你的services.xml 文件里有中文注釋吧!是編碼不對(duì),將其保存成utf-8或GB2312,注意xml文件頭要與保存的編碼格式一致。
    2009-08-26 19:09 | 銀河使者

    # re: WebService大講堂之Axis2(3):使用services.xml文件發(fā)布WebService  回復(fù)  更多評(píng)論   

    @銀河使者
    你好,我查看了一下,Services.xml里面沒有中文注釋,保存格式已經(jīng)是utf8了,但還是報(bào)上面的錯(cuò)。
    我的Services.xml內(nèi)容如下:
    <service name="MyService" scope="application">
    <Description>
    Web Service
    </Description>
    <parameter name="ServiceClass" locked="false">
    Server.MyService
    </parameter>

    <operation name="getGreeting">
    <messageReceiver class="org.apache.axis2.rpc.receivers.RPCMessageReceiver" />
    </operation>
    <operation name="update">
    <messageReceiver
    class="org.apache.axis2.rpc.receivers.RPCInOnlyMessageReceiver" />
    </operation>

    </service>

    服務(wù)器端代碼如下:
    package Server;

    public class MyService {
    public String getGrString(String name)
    {
    return "您好,"+name;
    }

    public void update(String data)
    {
    System.out.println("<"+data+">已經(jīng)更新!");
    }
    }


    MyService.aar內(nèi)文件路徑如下:
    \MyService\META_INF\services.xml
    \MyService\Server\MyService.class

    麻煩您再幫我看看,是哪里的問題,謝謝了!
    2009-08-27 14:34 | fqx666

    # re: WebService大講堂之Axis2(3):使用services.xml文件發(fā)布WebService  回復(fù)  更多評(píng)論   

    你的META-INF目錄中間用的是下劃線,還是減號(hào),應(yīng)該是減號(hào)。
    還有就是看看文件中是否有一些不可視的字符或全角字符,建議把文件的內(nèi)容重新寫一遍,不要復(fù)制。
    2009-08-27 15:14 | 銀河使者

    # re: WebService大講堂之Axis2(3):使用services.xml文件發(fā)布WebService[未登錄]  回復(fù)  更多評(píng)論   

    你好,我按照你說的步驟到把
    ws.aar復(fù)制到<Tomcat安裝目錄>\webapps\axis2\WEB-INF\services目錄下然后http://localhost:8080/axis2/services/listServices回車 頁面中出現(xiàn) Faulty Services
    D:\install\Tomcat 5.5\webapps\axis2\WEB-INF\services\ws.aar
    點(diǎn)擊D:\install\Tomcat 5.5\webapps\axis2\WEB-INF\services\ws.aar
    出現(xiàn):
    This Web axisService has deployment faults
    Error: org.apache.axis2.deployment.DeploymentException: The services.xml file cannot be found for the service: D:\install\Tomcat 5.5\webapps\axis2\WEB-INF\services\ws.aar at org.apache.axis2.deployment.repository.util.ArchiveReader.processServiceGroup(ArchiveReader.java:151) at org.apache.axis2.deployment.ServiceDeployer.deploy(ServiceDeployer.java:81) at org.apache.axis2.deployment.repository.util.DeploymentFileData.deploy(DeploymentFileData.java:136) at org.apache.axis2.deployment.DeploymentEngine.doDeploy(DeploymentEngine.java:663) at (部分內(nèi)容)
    為什么呢?
    2009-09-22 11:18 | lh

    # re: WebService大講堂之Axis2(3):使用services.xml文件發(fā)布WebService  回復(fù)  更多評(píng)論   

    services.xml文件可能放的位置不對(duì)
    2009-09-22 11:39 | 銀河使者

    # re: WebService大講堂之Axis2(3):使用services.xml文件發(fā)布WebService[未登錄]  回復(fù)  更多評(píng)論   

    太謝謝你了
    果然是這方面的原因
    services.xml我寫成了service.xml
    2009-09-22 15:01 | lh

    # re: WebService大講堂之Axis2(3):使用services.xml文件發(fā)布WebService  回復(fù)  更多評(píng)論   

    @fqx666
    你有可能是用winrar壓縮再改后綴名的吧,那樣不行。
    2009-09-29 11:46 | wangh

    # re: WebService大講堂之Axis2(3):使用services.xml文件發(fā)布WebService  回復(fù)  更多評(píng)論   

    @@fqx666
    你有可能是用winrar壓縮再改后綴名的吧,那樣不行。
    2009-09-29 11:47 | 移動(dòng)工廠

    # re: WebService大講堂之Axis2(3):使用services.xml文件發(fā)布WebService  回復(fù)  更多評(píng)論   

    SERVICE的CLASS文件和META-INF中的SERVICES.XML一定要打包嗎?
    我的項(xiàng)目要求動(dòng)態(tài)的生成WEB SERVICE(比如傳入JAVA代碼然后編譯部署)
    這個(gè)生成WEB SERVICE的WEB SERVICE該怎么寫呢?
    2009-10-07 21:21 | smaxpp

    # re: WebService大講堂之Axis2(3):使用services.xml文件發(fā)布WebService  回復(fù)  更多評(píng)論   

    我調(diào)用MyService的update方法時(shí)出現(xiàn)這個(gè)錯(cuò)誤:

    Exception in thread "main" org.apache.axis2.AxisFault: The input stream for an incoming message is null.
    at org.apache.axis2.transport.TransportUtils.createSOAPMessage(TransportUtils.java:72)
    at org.apache.axis2.description.OutInAxisOperationClient.handleResponse(OutInAxisOperation.java:353)
    at org.apache.axis2.description.OutInAxisOperationClient.send(OutInAxisOperation.java:416)
    at org.apache.axis2.description.OutInAxisOperationClient.executeImpl(OutInAxisOperation.java:228)
    at org.apache.axis2.client.OperationClient.execute(OperationClient.java:163)
    at client.MyServiceStub.update(MyServiceStub.java:198)
    at client.MyServiceClient.main(MyServiceClient.java:14)

    但我看服務(wù)器端的響應(yīng)是正取的,請(qǐng)問是什么引起這個(gè)錯(cuò)誤呢?
    2009-10-11 10:56 | Russ

    # re: WebService大講堂之Axis2(3):使用services.xml文件發(fā)布WebService  回復(fù)  更多評(píng)論   

    AXIS1中可以通過WSDD來取消部署的,AXIS2要怎么取消部署呢?
    還有AXIS2中還有沒有SERVER-CONFIG?
    2009-10-16 14:38 | SMAXPP

    # re: WebService大講堂之Axis2(3):使用services.xml文件發(fā)布WebService  回復(fù)  更多評(píng)論   

    您好,為什么我照你的方式總是不成功,services.xml放到META-INF目錄中,我把Myservice類放到了tomcat6.0\webapps\axis2\WEB-INF\classes\service\Myservice.class,但總是顯示MyseRequested resource not found!
    2009-11-11 10:49 | summermore

    # re: WebService大講堂之Axis2(3):使用services.xml文件發(fā)布WebService  回復(fù)  更多評(píng)論   

    我的services.xml的內(nèi)容是
    <service name="MyService">
    <description>
    Web Service
    </description>
    <parameter name="ServiceClass">
    service.MyService
    </parameter>
    <messageReceivers>
    <messageReceiver mep="http://www.w3.org/2004/08/wsdl/in-out"
    class="org.apache.axis2.rpc.receivers.RPCMessageReceiver" />
    <messageReceiver mep="http://www.w3.org/2004/08/wsdl/in-only"
    class="org.apache.axis2.rpc.receivers.RPCInOnlyMessageReceiver" />
    </messageReceivers>
    </service>
    2009-11-11 10:52 | summermore

    # re: WebService大講堂之Axis2(3):使用services.xml文件發(fā)布WebService  回復(fù)  更多評(píng)論   

    請(qǐng)問博主,
    發(fā)布后,測(cè)試服務(wù)時(shí),報(bào)
    org.apache.axis2.AxisFault: Mapping qname not fond for the package: cn.com.webxml

    是什么原因?
    2009-11-17 14:20 | 大器未成

    # re: WebService大講堂之Axis2(3):使用services.xml文件發(fā)布WebService  回復(fù)  更多評(píng)論   

    我配置好以后 可以調(diào)用 但是方法的參數(shù)名自動(dòng)變成arg0了 這個(gè)是因?yàn)槭裁窗?
    <xs:element name="getGreeting">
    ?
    <xs:complexType>
    ?
    <xs:sequence>
    <xs:element minOccurs="0" name="args0" nillable="true" type="xs:string"/>
    </xs:sequence>
    </xs:complexType>

    2009-11-19 16:53 | skybusy2000

    # re: WebService大講堂之Axis2(3):使用services.xml文件發(fā)布WebService  回復(fù)  更多評(píng)論   

    敬愛的博主:
    This Web axisService has deployment faults
    Error: org.apache.axis2.deployment.DeploymentException: The services.xml file cannot be found for the service: D:\Tomcat 6.0\webapps\axis2\WEB-INF\services\ws.aar
    請(qǐng)問是什么問題??謝謝
    services.xml
    <service name="myService">
    <description>
    Web Service
    </description>
    <parameter name="ServiceClass">
    service.MyService
    </parameter>
    <operation name="getGreeting">
    <messageReceiver class="org.apache.axis2.rpc.receivers.RPCMessageReceiver" />
    </operation>
    <operation name="update">
    <messageReceiver
    class="org.apache.axis2.rpc.receivers.RPCInOnlyMessageReceiver" />
    </operation>
    </service>
    2010-01-18 22:05 | jaff

    # re: WebService大講堂之Axis2(3):使用services.xml文件發(fā)布WebService  回復(fù)  更多評(píng)論   

    @jaff
    感謝博主,原來我自己xml文件沒有打包到aar文件里
    2010-01-18 22:19 | jaff

    # re: WebService大講堂之Axis2(3):使用services.xml文件發(fā)布WebService  回復(fù)  更多評(píng)論   

    為什么我用這種方法發(fā)布時(shí),參數(shù)的名字還是變了,兩個(gè)參數(shù)都變成args0
    - <xs:element name="update">
    - <xs:complexType>
    - <xs:sequence>
    <xs:element minOccurs="0" name="args0" nillable="true" type="xs:string" />
    </xs:sequence>
    </xs:complexType>
    </xs:element>
    - <xs:element name="getGreeting">
    - <xs:complexType>
    - <xs:sequence>
    <xs:element minOccurs="0" name="args0" nillable="true" type="xs:string" />
    </xs:sequence>
    </xs:complexType>
    </xs:element>
    2010-01-26 14:26 | Annie

    # re: WebService大講堂之Axis2(3):使用services.xml文件發(fā)布WebService  回復(fù)  更多評(píng)論   

    @yapituy
    sadf
    2010-03-04 13:29 | dfsdf

    # re: WebService大講堂之Axis2(3):使用services.xml文件發(fā)布WebService  回復(fù)  更多評(píng)論   

    樓主,你好。
    我想請(qǐng)問下,我用ComplexTypeService類中寫了一個(gè)方法來調(diào)用
    import ws.service.MyService;
    public class ComplexTypeService{
    public void goUpdate(String data) {
    MyService my = new MyService() ;
    my.update(data);
    }
    }
    我這樣部署到pojo中后,啟動(dòng)tomcat顯示Faulty Services,我用RPC調(diào)用
    RPCServiceClient serviceClient = new RPCServiceClient();
    Options options = serviceClient.getOptions();
    EndpointReference targetEPR = new EndpointReference(
    "http://localhost:8082/axis2/services/ComplexTypeService");
    options.setTo(targetEPR);
    QName opAddEntry = new QName("http://ws.apache.org/axis2", "goUpdate");
    serviceClient.invokeBlocking(opAddEntry, new Object[]{"測(cè)試"});

    它給出一個(gè)錯(cuò)誤:[ERROR] ws/service/MyService
    java.lang.NoClassDefFoundError: ws/service/MyService這個(gè)是為什么呢?
    2010-03-11 13:56 | 牛肉干

    # re: WebService大講堂之Axis2(3):使用services.xml文件發(fā)布WebService  回復(fù)  更多評(píng)論   

    你好:我的.aar已部署成功。我寫了個(gè)rpc客戶端:

    EndpointReference targetEPR = new EndpointReference(
    "http://localhost:8080/axis2/services/tst/service/MyService");
    options.setTo(targetEPR);
    報(bào)錯(cuò):org.apache.axis2.AxisFault: The service cannot be found for the endpoint reference (EPR) 127.0.0.1/axis2/services/tst/service/MyService
    at rg.apache.axis2.util.Utils.getInboundFaultFromMessageContext(Utils.java:435)
    后來又改成:targetEPR = new EndpointReference(
    "http://localhost:8080/axis2/services/tst");
    還報(bào)錯(cuò):The service cannot be found for the endpoint reference (EPR) 127.0.0.1/axis2/services/tst
    我的.aar 名為tst.aar
    請(qǐng)高人指點(diǎn),關(guān)注中......
    2010-04-11 00:49 | dog2walker

    # re: WebService大講堂之Axis2(3):使用services.xml文件發(fā)布WebService  回復(fù)  更多評(píng)論   

    我的環(huán)境:?jiǎn)?dòng)的是bin/axis2server.bat
    tst.aar放在E:\axis2-1.5.1\repository\services下
    2010-04-11 01:02 | dog2walker

    # re: WebService大講堂之Axis2(3):使用services.xml文件發(fā)布WebService[未登錄]  回復(fù)  更多評(píng)論   

    將相關(guān)類(找不到的那個(gè)類)放到axis2/WEB-INF/classes下
    2010-06-03 17:46 | johnny

    # re: WebService大講堂之Axis2(3):使用services.xml文件發(fā)布WebService[未登錄]  回復(fù)  更多評(píng)論   

    請(qǐng)問 services.xml not found 的問題解決了嗎?
    2011-08-01 15:41 | frank

    # re: WebService大講堂之Axis2(3):使用services.xml文件發(fā)布WebService[未登錄]  回復(fù)  更多評(píng)論   

    我也碰到過樓上services.xml not found的問題,其實(shí)大家的services.xml文件是建的對(duì)的,主要是jar目錄結(jié)構(gòu)的問題,這在作者的文章里面也介紹過,各位可能用的都是Eclipse的except功能,這樣打出的包會(huì)有一層WebContent目錄在里面,請(qǐng)檢查各位的jar包結(jié)構(gòu),jar包:META-INF/services.xml
    2011-10-19 16:15 | zt

    # re: WebService大講堂之Axis2(3):使用services.xml文件發(fā)布WebService  回復(fù)  更多評(píng)論   

    我的.aar文件生成非常了,但在部署到Tomcat6.0中時(shí)報(bào)Error: org.apache.axis2.deployment.DeploymentException: bad parameter arguments. name cannot be null,請(qǐng)問是為什么?
    2012-01-09 17:12 | wangwenyu

    # re: WebService大講堂之Axis2(3):使用services.xml文件發(fā)布WebService  回復(fù)  更多評(píng)論   

    為什么wsdl生成的getGreeting方法的參數(shù)是args0而不是name呢?怎么修改啊
    2012-04-12 13:02 | sh

    # re: WebService大講堂之Axis2(3):使用services.xml文件發(fā)布WebService  回復(fù)  更多評(píng)論   

    我剛開始也有這個(gè)問題,后來發(fā)現(xiàn)是順序的問題,得把a(bǔ)ar包放到services之后,這個(gè)webservice才能正常訪問的
    2012-09-07 16:36 | 冬天

    # re: WebService大講堂之Axis2(3):使用services.xml文件發(fā)布WebService[未登錄]  回復(fù)  更多評(píng)論   

    Caused by: org.apache.axis2.deployment.DeploymentException: The following error
    occurred during schema generation: service.MyService

    請(qǐng)問下,這個(gè)錯(cuò)誤是怎么導(dǎo)致的?
    2013-11-06 16:40 | Alex

    # re: WebService大講堂之Axis2(3):使用services.xml文件發(fā)布WebService  回復(fù)  更多評(píng)論   

    親愛的樓主
    Exception in thread "main" org.apache.axis2.AxisFault: com.ctc.wstx.exc.WstxEOFException: Unexpected EOF in prolog
    at [row,col {unknown-source}]: [1,0]
    at org.apache.axis2.AxisFault.makeFault(AxisFault.java:430)
    at org.apache.axis2.transport.TransportUtils.createSOAPMessage(TransportUtils.java:123)
    at org.apache.axis2.transport.TransportUtils.createSOAPMessage(TransportUtils.java:67)
    at org.apache.axis2.description.OutInAxisOperationClient.handleResponse(OutInAxisOperation.java:354)
    at org.apache.axis2.description.OutInAxisOperationClient.send(OutInAxisOperation.java:421)
    at org.apache.axis2.description.OutInAxisOperationClient.executeImpl(OutInAxisOperation.java:229)
    at org.apache.axis2.client.OperationClient.execute(OperationClient.java:165)
    at org.apache.axis2.client.ServiceClient.sendReceive(ServiceClient.java:555)
    at org.apache.axis2.client.ServiceClient.sendReceive(ServiceClient.java:531)
    at org.apache.axis2.rpc.client.RPCServiceClient.invokeBlocking(RPCServiceClient.java:102)
    at cn.edu.xidian.saas_customization_app.service.Test.main(Test.java:28)
    能解釋下這個(gè)錯(cuò)誤不
    2015-05-25 22:36 | hekui1002
    主站蜘蛛池模板: 亚洲av成人中文无码专区| 欧美大尺寸SUV免费| 亚洲AV无码乱码精品国产| 亚洲国产成人精品电影| 久久国产精品免费专区| 国产亚洲一区二区三区在线不卡| 亚洲AV成人精品日韩一区| 国产精品免费观看久久| 亚洲免费观看在线视频| 91福利免费视频| 久久久久亚洲AV片无码下载蜜桃| 91免费国产视频| 亚洲综合伊人久久大杳蕉| 丁香六月婷婷精品免费观看| 又粗又大又猛又爽免费视频 | a级亚洲片精品久久久久久久| 日韩色日韩视频亚洲网站| 永久黄网站色视频免费观看| 亚洲欧美中文日韩视频| 成人最新午夜免费视频| 亚洲日韩精品国产一区二区三区| 青青在线久青草免费观看| 亚洲国产精品综合久久网各| 久久精品国产免费观看三人同眠| 亚洲人成在线电影| 十八禁无码免费网站| 久久久无码精品亚洲日韩按摩| 精品无码人妻一区二区免费蜜桃 | 亚洲人成www在线播放| 亚洲第一成年免费网站| 在线亚洲午夜片AV大片| 成人性生交视频免费观看| 亚洲精品蜜夜内射| 国产一级一片免费播放i| 免费国产高清毛不卡片基地| 亚洲国产精品嫩草影院久久| 一个人看的免费视频www在线高清动漫 | 国产精品免费视频一区| 国产精品亚洲а∨无码播放麻豆| 国产一区二区三区免费在线观看 | 在线观着免费观看国产黄|