के साथ एक वेब-सेवा क्लाइंट बनाना हमें एक कंपनी द्वारा wsdl और xsd स्कीमा प्रदान किया गया है जिसे हम ईमेल के माध्यम से काम कर रहे हैं। जिन वेब-सेवाओं के साथ हम इंटरफेसिंग कर रहे हैं उन्हें आईपीएससी सुरंग के माध्यम से एक्सेस किया जाता है। प्रकाशित डब्लूएसडीएल में स्थानीय संदर्भ (उनके अंत में) हैं जिसका अर्थ है कि हम इसका उपभोग नहीं कर सकते हैं।एक ज्ञात लेकिन पहुंच योग्य wsdl
पहला प्रश्न: क्या यह एक आम सेटअप है? मैंने सोचा कि डब्ल्यूएसडीएल होने का मुद्दा न केवल अनुबंध को परिभाषित करना था बल्कि उपभोक्ताओं को सेवा का खुलासा करना था।
मैं wsimport, wsconsume, आदि का उपयोग करके प्रदान किए गए डब्लूएसडीएल के क्लाइंट/सर्वर कोड को आसानी से उत्पन्न कर सकता हूं .. मुझे पता है कि जब मेरा जेनरेट क्लाइंट मेरी जेनरेट की गई सेवा को कॉल करता है तो यह मुझे सही संदेश देता है।
दूसरा प्रश्न: क्या इसे एक अलग साबुन पते पर रूट करने का कोई आसान तरीका है?
मैं बस की तरह कुछ करने के लिए सक्षम होना चाहते हैं:
SalesTaxService svc = new SalesTaxService();
SalesTax tax = svc.getSalesTaxPort()
tax.getRate("NY");
लेकिन साबुन का पता डबल्यूएसडीएल में परिभाषित का उपयोग नहीं। मैं प्रत्येक विधि के लिए प्रेषण ग्राहकों का एक समूह लिखने से बचना चाहता हूं।
क्या मुझे कुछ याद आ रही है?
* skaffman के जवाब में: यही उत्पन्न हुआ था। यह एक नाम कंधे उचकाने की क्रिया के रूप में wsdlLocation को चूक
@WebServiceClient(name = "SomeService")
public class SomeService_Service extends Service {
public SomeService_Service(URL wsdlLocation, QName serviceName) {
super(wsdlLocation, serviceName);
}
public SomeService_Service(URL wsdlLocation) {
super(wsdlLocation, new QName("urn:some_service", "SomeService"));
}
}
भी देखें: http: // stackoverflow
क्रेडिट को जाता है। स्टब्स उत्पन्न करने के लिए कॉम/ए/863561/147763 –