त्रुटि: वेब सेवा संचालन .... पैरामीटर के साथ {part = {...}, storeId = {...}, contractId = {...}} नहीं मिल सका।कोल्डफ्यूजन 9 कॉलिंग .NET वेब सेवा- पैरामीटर के साथ वेब सेवा संचालन नहीं मिल सकता है। मदद!
मैंने एक .NET वेब सेवा बनाई जो कोल्डफ्यूजन पृष्ठ से बात करता है। क्या होता है जब उपयोगकर्ता भाग संख्या फ़ील्ड में भाग संख्या टाइप करता है तो उसके बाहर टैब, उस सेवा के लिए उचित मूल्य प्राप्त करने के लिए वेब सेवा को बुलाया जाता है। दृश्यों के पीछे मूल्य निर्धारण कैसे किया जाता है, यह अप्रासंगिक है, और उस बिंदु के लिए यहां दिखाने के लिए बहुत जटिल है जिसे मैं पार करने की कोशिश कर रहा हूं। हिस्सा, storeId, और contractId:
यहाँ मैं क्या ऑन जा रहा हो गया मैं 3 चर में ColdFusion पेज गुजर राशि है।
<cfset vars = structNew()> <cfset vars["contractId"] = "#Trim(Attributes.contract)#"> <cfset vars["part"] = "#Trim(Attributes.part)#"> <cfset vars["storeId"] = "#Trim(Attributes.store)#"> <cfinvoke webservice = "http://compassnetdev/Services/CustomerContractPartPrice.asmx?wsdl" method = "GetCustomerContractPrice" returnVariable = "price" argumentCollection = "#vars#"> </cfinvoke>
से पहले, मैं सिर्फ contractId और हिस्सा में पारित किया जा रहा था, और यह बहुत अच्छा काम किया। कोई समस्या नहीं। लेकिन चूंकि मैं storeId में जोड़ा है तो उसका यह त्रुटि संदेश ऊपर फेंक रहा है:
Error Occurred While Processing Request Web service operation GetCustomerContractPrice with parameters {part={BV410070},storeId={001},contractId={21}} cannot be found. The error occurred in C:\inetpub\wwwroot\CustomTags\fn_get_price_2.cfm: line 58 56 : method = "GetCustomerContractPrice" 57 : returnVariable = "price" 58 : argumentCollection = "#vars#"> 59 : 60 :
आप इसे मान मैं ठीक से गुजर रहा हूँ हो रही है देख सकते हैं।
मैं के बारे में सुनिश्चित क्या किया:
मुझे यकीन है कि वेब सेवा का पता ऊपर संकेत वर्तमान था (जिसका अर्थ है, मुझे यकीन है कि यह नवीनतम निर्माण कि मेरी नई पैरामीटर है था)।
मैं मैन्युअल रूप से वेब सेवा पर जाता हूं, और wsdl दिखाता है (अपेक्षित के रूप में)।
मैं वेब सेवा URL पर जाकर मैन्युअल रूप से वेब सेवा का आह्वान कर सकता हूं। मैं अपने 3 चर में प्रवेश कर सकता हूं और Invoke पर क्लिक कर सकता हूं, और यह सही मान देता है।
यहाँ मेरी वेब सेवा कोड है:
public class CustomerContractPartPrice : System.Web.Services.WebService { [WebMethod] public decimal GetCustomerContractPrice(string part, string storeId, int contractId) { var context = new PricingBLL(); decimal price = context.GetCustomerContractPartPrice(contractId, part, storeId); return price; } }
यह व्यापार वस्तु के लिए बाहर चला जाता है और काम करता है, और परिणाम देता है। अंततः मुझे लगता है कि यह एक शीतफ्यूजन/.NET इंटरऑपरेबिलिटी मुद्दा है। विचार?
बहुत बढ़िया, मुझे लगता है कि मेरी समस्या की जड़ थी !! जवाब के लिए धन्यवाद। जैसा कि मैंने जवाब पाया, ऊपर मेरा जवाब देखें! –