¼ÓÈëÊÕ²Ø | ÉèΪÊ×Ò³ | »áÔ±ÖÐÐÄ | ÎÒҪͶ¸å Àî´óͬ £¨https://www.lidatong.com.cn/£©- ¿Æ¼¼¡¢½¨Õ¾¡¢¾­Ñé¡¢ÔƼÆËã¡¢5G¡¢´óÊý¾Ý,Õ¾³¤Íø!
µ±Ç°Î»Ö㺠Ê×Ò³ > ×ۺϾ۽¹ > ·þÎñÆ÷ > °²È« > ÕýÎÄ

WebServiceѧϰ֮·һ

·¢²¼Ê±¼ä£º2020-12-16 22:10:26 ËùÊôÀ¸Ä¿£º°²È« À´Ô´£ºÍøÂçÕûÀí
µ¼¶Á£º? ?ÏÐÀ´ÎÞÊ£¬¸ù¾Ý½ÌѧÊÓƵѧÏÂWS£¬×öϼòµ¥µÄ¼Ç¼¡­ ? ÏÖÐеÄ?WSÖ÷ÒªÓÐ?SOAP XML?¡¢axis2¡¢xfire¡¢CXF?µÈ¡­ ? ²»¹ÜÊÇÄÄÖÖ½Ó¿Ú£¬ÄÄÖÖƽ̨»ùÓÚÄÄÖÖÓïÑÔ¿ª·¢µÄWS?¶¼Ñϸñ°´ÕÕwsdl±ê×¼ºÍsoapЭÒé¡£ ? ÒÔϵÄѧϰ?Ö÷Òª¶¼ÊÇ»ùÓÚ×¢½âµÄÐÎʽ¿ª·¢,jdk1.6,¿ª·¢¹¤¾ßecli

?

?ÏÐÀ´ÎÞÊ£¬¸ù¾Ý½ÌѧÊÓƵѧÏÂWS£¬×öϼòµ¥µÄ¼Ç¼¡­

?

ÏÖÐеÄ?WSÖ÷ÒªÓÐ?SOAP XML?¡¢axis2¡¢xfire¡¢CXF?µÈ¡­

?

²»¹ÜÊÇÄÄÖÖ½Ó¿Ú£¬ÄÄÖÖƽ̨»ùÓÚÄÄÖÖÓïÑÔ¿ª·¢µÄWS?¶¼Ñϸñ°´ÕÕwsdl±ê×¼ºÍsoapЭÒé¡£

?

ÒÔϵÄѧϰ?Ö÷Òª¶¼ÊÇ»ùÓÚ×¢½âµÄÐÎʽ¿ª·¢,jdk1.6,¿ª·¢¹¤¾ßeclipse

?

Ò»¡¢µÚÒ»¸ö¼òµ¥µÄʾÀý

Ê×ÏÈ´´½¨Ò»¸öWSÏîÄ¿¡£


´úÂ룺

Java´úÂë??

ÊղشúÂë

  1. //¶¨Òå½Ó¿Ú??
  2. ??
  3. @WebService(targetNamespace="com.trylin.ws.service")??
  4. public?interface?ITest?{??
  5. ????int?add(int?a,int?b);??
  6. ????int?minus(int?b);??
  7. }??
  8. ??
  9. //¶¨ÒåʵÏÖÀà??
  10. @WebService(endpointInterface="com.trylin.ws.service.ITest")??
  11. class?TestImpl?implements?ITest{??
  12. ????int?b)?{??
  13. ????????return?a+b;??
  14. ????}??
  15. ????return?a-b;??
  16. ????}??
  17. }??
  18. ??
  19. //¿ªÆô·þÎñ??

publicstaticvoid?main(String[] args) {

?????? String address =?"http://localhost:8888/WS";

?????? Endpoint.publish(address,?new?TestImpl());

}

?
? ?ÑéÖ¤·þÎñ

´ò¿ªä¯ÀÀÆ÷£¬ÊäÈëhttp://localhost:8888/WS?wsdl? ÏÔʾ·¢²¼·þÎñµÄwsdl



?

´úÂë½âÊÍ

ÉÏÊö´úÂëÖÐʵÏÖÁËÒ»¸ö¼òµ¥µÄWSµÄ·¢²¼¡£

Ê×Ïȶ¨ÒåÒ»¸ö½Ó¿ÚºÍʵÏÖÀà?ITest,TestImpl

È»ºó¼ÓÈë@WebService??×¢½â¡£

targetNamespace?ÊôÐÔ±íʾ·¢²¼ºóÉú³ÉWSDLÎļþµÄÃüÃû¿Õ¼ä(ĬÈÏÖµ£ºµ±Ç°ÀàµÄ°ü·¾¶),¶ÔÓ¦namespace

<import?namespace="http://com.trylin.ws.service/"?location="http://localhost:8888/WS?wsdl=1"/>

ÕâÀïÓиöСϸ½Ú£¬×¢Òâµ½Õâ¸önamespaceÊDz»ÊǾõµÃÓеã±ðŤÄØ,ÏÈÏëÏë°üÃüÃûÔ­Ôò£¬ÏÂÃæÉú³É¿Í»§¶Ëµ÷ÓõÄʱºò£¬¼òµ¥ÔÙ˵Ã÷һϡ£

?

endpointInterface?ÊôÐÔ±íʾʵÏֵĽӿÚ

?

Endpoint.publish(address,?new?TestImpl());

¸ù¾ÝµØÖ·??ºÍʵÏÖÀ࣬½«½Ó¿Ú·¢²¼¡£

·¢²¼ºóµÄWSµØÖ·¾ÍÊÇ?address?£¬¿ÉÒÔÖ±½Ó·ÃÎÊ£¬ÔÚaddressºó¼ÓÈë??wsdl?¿ÉÒԲ鿴½Ó¿Ú·¢²¼ºóµÄwsdl¡£

?

?

¿Í»§¶Ëµ÷ÓÃ

ÉÏÃæ¾ÍËãÊÇ·¢²¼ÁËÒ»¸ö¼òµ¥µÄWS£¬¼òµ¥°É£¬È»ºó¿Í»§¶ËÔõôµ÷ÓÃÄØ£¿

ÕâÀï¾ÍÓõ½ÁËjdk 1.6×Ô´øµÄ?wsimportÃüÁî

´ò¿ªcmdÃüÁî´°¿Ú?£¬ÊäÈë?wsimport,?Èçͼ£º£¨ps:Çë±£Ö¤ÔÚÄãÔËÐеçÄÔµÄjdk»·¾³±äÁ¿ÉèÖÃÕýÈ·£¬Ã»ÓÐjdkÅäÖû·¾³±äÁ¿£¬°Ù¶ÈÏ£©



?¼òµ¥µÄ½éÉܼ¸¸öÖ÷ÒªµÄÃüÁî

-d?Ö¸Ã÷Éú³ÉWS¿Í»§¶ËÎļþ±¾µØ´æ·ÅĿ¼

-verbose?²é¿´Éú³ÉµÄÏêϸÐÅÏ¢(Éú³ÉÈÕÖ¾)

-p?Ö¸¶¨ws¿Í»§¶ËÉú³ÉÎļþµÄ°üÃû(ĬÈÏ°´ÕÕ?@webService¶¨ÒåµÄÃüÃû¿Õ¼ä)

-keep?ÊÇ·ñÉú³ÉÔ´Îļþ(¼Ó?±íʾÉú³ÉµÄÎļþÖÐ?°üº¬javaºÍ?class,²»¼ÓÖ»ÓÐclass)

?

´´½¨±¾µØ¿Í»§¶Ë´æ·ÅĿ¼

D:/webservice/test

(¼ÇµÃ¿ª·þÎñŶÔËÐÐÉÏÃæµÄmain)

ÔÚcmdÖÐ?ÊäÈë?wsimport -d D:webservicetest -keep -verbose?http://localhost:8888/WS?wsdl



?

generating code...???±íʾ´´½¨µÄjavaÎļþ?

compiling code...????±íʾ±àÒëjavaÎļþ

?

ÉÏÃæ²»ÊÇ˵¹ý?wsdlÉϵÄÃüÃû¿Õ¼äÓеãÎÊÌ⣬ÕâÏ¿´ÈÕÖ¾Óп´³öÀ´Â𣿹þ¹þ£¬Ó¦¸ÃÓз¢ÏÖ°É£¬Éú³ÉµÄjavaÔ´ÎļþµÄĿ¼ÊDz»ÊǺÍÎÒÃÇÔÚ·þÎñ¶ËµÄÔ´ÎļþĿ¼¸ÕºÃµßµ¹ÁËÄØ¡£ÎÒÒ²ÊÇ¿´µ½ÕâÀï²Å·¢ÏÖÕâ¸öÎÊÌâµÄ¡£¼òµ¥µÄ˵ÏÂÎÒ¸öÈ˶ÔÕâ¸öÎÊÌâµÄÏë·¨°É¡£

Java¹ØÓÚ°ü£¬Óиö¼òµ¥µÄÃüÃûÔ­Ôò£¬¾ÍÊÇ°´ÕÕÓòÃû·´ÏòÃüÃû£¬±ÈÈç?baidu.com?°üÃû¾Í½Ðcom.baidu¡£ÎÒÃÇÉú³ÉµÄ¿Í»§¶ËÎļþÊǸù¾ÝwsdlÉú³ÉµÄ£¬°üÃûÊǸù¾ÝwsdlÖеÄnamespace¶¨Ò壬ֻ²»¹ý»á½«namespaceÊÓΪһ¸öÓòÃû£¬È»ºó·´ÏòÉú³É¿Í»§¶ËÀàµÄ°üÃû¡£ÎÒÔÚµÚÒ»¸öʾÀýÖеĽӿÚÖж¨ÒåÁË@WebService(targetNamespace="com.trylin.ws.service")?°´ÕÕ·´Ïò£¬Éú³ÉµÄ°üÃû¾ÍÊÇservice.ws.trylin.com???È»ºó¾Í³öÏÖÁËÎÒÃǸղŵĿͻ§¶ËÎļþºÍ·þÎñ¶ËÎļþ°üÃûÏà·´µÄÏÖÏóÁË¡£?

Õâ¸öÖ»ÊÇÎÒ¸öÈ˵ÄÒ»¸öƾ¿Õ²ÂÏ룬ûʲôÒÀ¾Ý¿ÉÑÔ£¬ºÇºÇ¡£

?

OK£¬°´ÕÕÎÒÉÏÃæµÄÀí½â£¬ÎÒ°ÑÃüÃû¿Õ¼ä?·´Ïò¶¨Òå??service.ws.trylin.com

ÖØÐÂÉú³É¿Í»§¶Ë¡£

È»ºóÔÙ´´½¨Ò»¸öеÄclinetÏîÄ¿,°ÑÉú³ÉµÄ¿Í»§¶Ë¸´ÖƵ½ÏîÄ¿ÖУ¬´´½¨¿Í»§¶Ë²âÊÔÀà¡£

?


Java´úÂë?? /**?
  • ?*?@ClassName:?ITestCase?
  • ?*?@Description:??
  • ?*?@author?Try_Lin?
  • ?*?@date?2013-7-15?ÏÂÎç11:45:06?
  • ?*?
  • ?*/??
  • class?ITestCase?{??
  • ??????
  • ?????????*?¸ù¾ÝjavaÌṩµÄwsµ÷ÓÃ?
  • ?????*?@throws?Exception?
  • ?????*/??
  • ????@Test??
  • ????void?testClient1()?throws?Exception{??
  • ????????URL?url?=?new?URL("http://localhost:8888/WS?wsdl");???//wsdl·¾¶??
  • ??????????
  • ????????//¿ÉÒÔ´Ó??²úÉúµÄwsdlÖÐdefinitions?½ÚµãÊôÐÔÖÐ?ÕÒµ½???targetNamespace??ºÍ?serviceName???
  • ????????String?targetNamespace?=?"http://impl.service.ws.trylin.com/";//WSÖ¸ÏòÃüÃû¿Õ¼ä??
  • ????????String?serviceName?=?"TestImplService";//WS·¢²¼·þÎñÃû³Æ??
  • ????????QName?qname?=?new?QName(targetNamespace,?serviceName);??
  • ????????Service?service?=?Service.create(url,qname);??
  • ????????ITest?test?=?service.getPort(ITest.class);??
  • ????????System.out.println(test.add(1,?2));??
  • ????}??
  • ?????????*?¸ù¾ÝwsdlÉú³ÉµÄ¿Í»§¶Ëµ÷ÓõÄ?
  • void?testClient2(){??
  • ????????TestImplService?service?=?new?TestImplService();??
  • ????????ITest?test?=?service.getTestImplPort();??
  • ????????System.out.println(test.add(3,0)">2));??
  • ????}??
  • ??
  • }??
  • ?
    ?Á½ÖÖµ÷Ó÷½Ê½¶¼¿ÉÒÔ£¬Ö»ÊǵڶþÖÖ·½Ê½¿´ÉÏÈ¥¸ü¼Ó¼ò½à¡£

    ? ¿ÉÒÔ¿´ÏÂ?µÚ¶þÖÖ·½Ê½µÄ?TestImplService´úÂë?£¬ÆäʵֻÊǶԵÚÒ»ÖÖ·½Ê½µÄ²¿·Ö·â×°¡£

    Java´úÂë??
  • public?TestImplService()?{??
  • ???????super(TESTIMPLSERVICE_WSDL_LOCATION,85)">new?QName("http://impl.service.ws.trylin.com/",?"TestImplService"));??
  • ???}??
  • ??
  • ???????*??
  • ????*?@return?
  • ????*?????returns?ITest?
  • ????*/??
  • ???@WebEndpoint(name?=?"TestImplPort")??
  • ???public?ITest?getTestImplPort()?{??
  • ???????return?super.getPort("TestImplPort"),?ITest.class);??
  • ???}??
  • ?àÅ??ÕâÑùÒ»¸ö¼òµ¥µÄWS¾ÍʵÏÖÁË

    ?

    WSDLºÍSOAPÏà¹Ø£¬´ýÐø¡­

    ÎÒÒ²ÊÇ¿´½ÌѧÊÓƵ£¬±ß¿´±ß×ÁĥȻºóдÏ£¬·½±ãÒÔºó×Ô¼ºÍü¼ÇµÄʱºò£¬¿ÉÒԲο¼Ï¡£

    Èç¹ûÓдóÉñ¿´µ½ÕâÀ»¹Ï£ÍûÖ¸µãÏ´íÎóµÄµØ·½£¬»òÕßÌṩÏÂѧϰ½¨Òé¡£?

    £¨±à¼­£ºÀî´óͬ£©

    ¡¾ÉùÃ÷¡¿±¾Õ¾ÄÚÈݾùÀ´×ÔÍøÂ磬ÆäÏà¹ØÑÔÂÛ½ö´ú±í×÷Õ߸öÈ˹۵㣬²»´ú±í±¾Õ¾Á¢³¡¡£ÈôÎÞÒâÇÖ·¸µ½ÄúµÄȨÀû£¬Ç뼰ʱÓëÁªÏµÕ¾³¤É¾³ýÏà¹ØÄÚÈÝ!

      ÍƼöÎÄÕÂ
        ÈȵãÔĶÁ