जावा वेबसर्विस क्लाइंट (सबसे अच्छा तरीका)


82

मेरे पास एक तीसरी पार्टी डब्ल्यूएसडीएल है, मुझे एक वेब सेवा क्लाइंट के लिए जावा में कोड लिखने की आवश्यकता है ताकि तीसरी पार्टी डब्ल्यूएसडीएल में संचालन शुरू किया जा सके। अभी, मैंने एक्सिस से WSDL2JAVA टूल का उपयोग करके क्लाइंट स्टब उत्पन्न किया है और डेटा बाइंडिंग के लिए XMLbeans का उपयोग किया है।

  1. इस JAVA को करने के लिए सबसे अच्छा तरीका क्या है?
  2. मैं SAAJ के बारे में पढ़ता हूं, ऐसा लगता है कि दृष्टिकोण के अधिक दानेदार स्तर होंगे?
  3. क्या कोड उत्पन्न करने के लिए WSDL2Java उपकरण का उपयोग करने के अलावा कोई अन्य तरीका है। शायद wsimportदूसरे विकल्प में। पक्ष और विपक्ष क्या होते हैं?
  4. क्या कोई इन विषयों पर कुछ अच्छे ट्यूटोरियल के लिए लिंक भेज सकता है?
  5. WSDL2Java का उपयोग करते हुए कोड जनरेट करते समय हमें किन विकल्पों का उपयोग करने की आवश्यकता है?

मैंने शुरू में कुछ बुनियादी चीजों का इस्तेमाल किया। अब मेरे पास ये विकल्प हैं

C:\axis2-1.5.1\bin>wsdl2java -uri  mywsdlurl  -o client -p somepackage -d xmlbeans -s -t -ssi

जवाबों:


163

इस JAVA को करने के लिए सबसे अच्छा तरीका क्या है?

मैं व्यक्तिगत रूप से एक्सिस 2 का उपयोग नहीं करूंगा , यहां तक ​​कि केवल क्लाइंट साइड डेवलपमेंट के लिए भी। यही कारण है कि मैं इससे दूर रहता हूं:

  1. मुझे इसकी वास्तुकला पसंद नहीं है और इसके काउंटर उत्पादक परिनियोजन मॉडल से नफरत है।
  2. मुझे यह कम गुणवत्ता वाला प्रोजेक्ट लगता है।
  3. मुझे इसका प्रदर्शन पसंद नहीं है ( JAX-WS RI के खिलाफ इस बेंचमार्क को देखें )।
  4. यह हमेशा निर्भरता की स्थापना के लिए एक बुरा सपना है (मैं मावेन का उपयोग करता हूं और मुझे हमेशा निर्भरता के गजलों से लड़ना पड़ता है) (# 2 देखें)
  5. एक्सिस ने बड़ा समय चूसा और एक्सिस 2 बेहतर नहीं है। नहीं, यह व्यक्तिगत राय नहीं है, सर्वसम्मति है।
  6. मैं एक बार पीड़ित हुआ, फिर कभी नहीं।

एक्सिस के आसपास अभी भी एकमात्र कारण आईएमओ है क्योंकि यह युगों से ग्रहण में उपयोग किया जाता है। धन्यवाद भगवान, यह ग्रहण हेलियोस में तय किया गया है और मुझे उम्मीद है कि एक्सिस 2 आखिरकार मर जाएगा। अभी बहुत बेहतर ढेर हैं।

मैं SAAJ के बारे में पढ़ता हूं, ऐसा लगता है कि दृष्टिकोण के अधिक दानेदार स्तर होंगे?

क्या करने?

क्या कोड उत्पन्न करने के लिए WSDL2Java उपकरण का उपयोग करने के अलावा कोई अन्य तरीका है। शायद दूसरे विकल्प में wsimport। पक्ष और विपक्ष क्या होते हैं?

हाँ! CXF या JAX-WS RI जैसे JAX-WS स्टैक को प्राथमिकता दें (आप मेट्रो, मेट्रो = JAX-WS RI + WSIT के बारे में भी पढ़ सकते हैं ), वे बस अधिक सुरुचिपूर्ण, सरल, उपयोग करने में आसान हैं। आपके मामले में, मैं सिर्फ JAX-WS RI का उपयोग करूंगा जो Java 6 और इस प्रकार शामिल है wsimport

क्या कोई इन विषयों पर कुछ अच्छे ट्यूटोरियल के लिए लिंक भेज सकता है?

यह एक और समर्थक है, JAX-WS के बहुत सारे (अच्छी गुणवत्ता वाले) ट्यूटोरियल हैं, उदाहरण के लिए देखें:

WSDL2Java का उपयोग करते हुए कोड जनरेट करते समय हमें किन विकल्पों का उपयोग करने की आवश्यकता है?

कोई विकल्प नहीं, उपयोग wsimport:)

यह सभी देखें

संबंधित सवाल


4
कमाल का काम है, धन्यवाद। क्या आप कृपया इसके कुछ विवरण के लिए WSIT को एक लिंक बना सकते हैं (जैसे कि download.oracle.com/docs/cd/E17802_01/webservices/webservices/… )
dma_k

@dma_k किया, WSIT प्रोजेक्ट के लिए एक लिंक जोड़ा गया (जो आपने पोस्ट किया है वह भी एक अच्छा है, इसलिए पाठकों के पास दोनों हैं)।
पास्कल थिवेंट

1
मैंने आपको सभी लिंक का अनुसरण किए बिना इस पर बहुत पहले एक +1 दिया था। जिंदा आदमी, कि पित्त की थैली नाक पर इसे मारता है! :) फिर, इसके लिए धन्यवाद।
javamonkey79

1
JAX-WS के लिए +1। Axis2 के साथ कई दिनों के लिए खो दिया ... कुल एमईएस (निर्भरता का एक टन का उल्लेख नहीं करने के लिए)
marcolopes

1
हे पास्कल, ग्लेन मजज़ा की कड़ी अब टूट चुकी है।
आदिल अंसारी

8

मुझे वेब सेवा ऐप के क्लाइंट अंत के लिए स्प्रिंग WS का उपयोग करके अच्छी सफलता मिली है - http://static.springsource.org/spring-ws/sites/1.5/reference/html/client.html देखें

मेरी परियोजना का एक संयोजन का उपयोग करता है:

  • XMLBeans (xmlbeans-maven-plugin का उपयोग करके एक सरल मावेन नौकरी से उत्पन्न)

  • स्प्रिंग WS - marshalSendAndReceive () के उपयोग से कोड भेजने और प्राप्त करने के लिए एक पंक्ति में नीचे आ जाता है

  • कुछ डोजर - क्लाइंट GUI के लिए सरल सेम के लिए जटिल XMLBeans की मैपिंग


1

आप Apache axis2 का उपयोग करके वेब सेवा क्लाइंट विकसित करने से संबंधित कुछ संसाधन पा सकते हैं।

http://today.java.net/pub/a/today/2006/12/13/invoking-web-services-using-apache-axis2.html

नीचे दिए गए पोस्ट Apache ax2 का उपयोग करके वेब सेवाओं के विकास के बारे में अच्छी व्याख्याएँ देते हैं।

http://www.ibm.com/developerworks/opensource/library/ws-webaxis1/

http://wso2.org/library/136


0

निम्नलिखित उत्तर में कुछ विचार:

Axis2 - क्लाइंट कोड का उपयोग करके एक वेब सेवा बनाने के चरण

डब्लूएसडीएल से उत्पन्न एडीबी कक्षाओं को लागू करने वाले एक ग्रूवी क्लाइंट का एक उदाहरण देता है।

वहाँ वेब सेवा ढांचे के बहुत सारे हैं ...

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.