अब मैं एनटीएलएम प्रमाणीकरण के आसपास एक .NET सेवा के लिए एक वेब सेवा क्लाइंट के रूप में अपाचे सीएक्सएफ का उपयोग कर रहा हूं। यह बहुत अच्छा काम करता है, लेकिन मुझे आश्चर्य है कि क्यों मैं वेब सेवा लक्ष्य एंडपॉइंट सेट करने में सक्षम नहीं हूं। ऐसा लगता है कि सीएक्सएफ कुछ अजीब कारणों से रनटाइम पर डब्लूएसडीएल चाहता है - यकीन नहीं है। यह डब्लूएसडीएल से भौतिक अंतराल लेता है, जो मुझे लगता है कि परीक्षण वातावरण में ठीक काम करता है, लेकिन तैनाती के समय पर यह बदलना निश्चित है।डायनेमिक एंडपॉइंट्स के लिए अपाचे सीएक्सएफ क्लाइंट
यहाँ कुछ कोड प्रदर्शित करने के लिए है:
MyWebServices service = new MyWebServices();
MyWebServicesSoap port = service.getMyWebServicesSoap12();
// Turn off chunking so that NTLM can occur
Client client = ClientProxy.getClient(port);
HTTPConduit http = (HTTPConduit) client.getConduit();
HTTPClientPolicy httpClientPolicy = new HTTPClientPolicy();
httpClientPolicy.setConnectionTimeout(36000);
httpClientPolicy.setAllowChunking(false);
http.setClient(httpClientPolicy);
port.doSomethingUseful();
फिर, वहाँ कोई जगह है कि मैं CXF ग्राहक एपीआई कि मुझे सेवा समाप्ति बिंदु स्थापित करने के लिए अनुमति देता है में देख सकते हैं। ऐसा नहीं है कि मैं वैसे भी देख सकता हूं। इस मामले में, लक्ष्य http://localhost/integration/webservices/mywebservices.asmx है, लेकिन मैं कहीं भी हो सकता है। निश्चित रूप से इस पैदल यात्री समस्या को हल किया गया है?
यकीन नहीं में कार्य करना के लिए एक यूआरएल ले हो सकता है क्या आपका मतलब है कि आपके पिछले वक्तव्य में – andyczerwonka
माइक्रोसिस क्लास में, क्या अन्य विधियां हैं जो एक पोर्ट पैरामीटर स्वीकार करने वाले पोर्ट को वापस कर देगी? क्या आप उस वर्ग के हस्ताक्षर पेस्ट करने के लिए अपनी पोस्ट संपादित कर सकते हैं? – Kevin
एक आकर्षण की तरह काम करता है - धन्यवाद – andyczerwonka