2010-01-26 5 views
10

मैं @WebService एनोटेशन का उपयोग करके जावा क्लास से डब्लूएसडीएल उत्पन्न कर रहा हूं और wsgen चला रहा हूं, जो मैवेन बिल्ड लक्ष्य द्वारा ट्रिगर किया गया है।wsgen और maven का उपयोग कर जावा से WSDL उत्पन्न करते समय विधि पैरामीटर नामों का उपयोग करें?

मेरी समस्या यह है कि उत्पन्न WSDL कोड से पैरामीटर नामों का उपयोग करने के बजाय वेब सेवा संचालन के लिए पैरामीटर को arg0, ar1, arg2 आदि के रूप में परिभाषित करता है। इन नामों को समझने की कोशिश करने के लिए सेवा के ग्राहकों के लिए यह सहायक नहीं है कि

क्या विधि से पैरामीटर नामों को पकड़ने और उपयोग करने के लिए wsgen को बताने का कोई तरीका है - या तो एनोटेशन पर विधि या wsgen को भेजा पैरामीटर?

धन्यवाद!

उत्तर

15

@WebParam एनोटेशन का उपयोग करें।

@WebMethod 
public void thisMethodHasAWebParam(@WebParam(name="param1") String arg1) { 
} 
+0

मुझे पता था कि ऐसा करने का एक आसान तरीका होना चाहिए था। बहुत बहुत धन्यवाद! – Vinnie

+3

यह काम करता है। लेकिन क्या यह बेहद अनावश्यक नहीं है? मुझे पता है कि बाइट कोड में विधि हस्ताक्षर पैरामीटर नामों को संरक्षित नहीं करते हैं, लेकिन उपकरण स्रोत कोड को भी नहीं देख सकता है? – Thilo

+1

यह कोड कोड को कैसे देख सकता है, क्योंकि यह कोड उत्पन्न करते समय WSDL फ़ाइल URL का उपयोग करता है। और रनटाइम पर WSDL फ़ाइल जेनरेट की जाती है। –

संबंधित मुद्दे