আমি ডাব্লুএসডিএল ভিত্তিক আমার ওয়েব পরিষেবার জন্য একটি ইন্টারফেস তৈরি করতে JAXWS-RI 2.1 ব্যবহার করেছি। আমি কোনও সমস্যায় ওয়েব পরিষেবাদির সাথে ইন্টারঅ্যাক্ট করতে পারি তবে ওয়েব পরিষেবায় অনুরোধ প্রেরণের জন্য টাইমআউট নির্দিষ্ট করতে সক্ষম হয়েছি। যদি কোনও কারণে এটি ক্লায়েন্টের প্রতিক্রিয়া না করে তবে চাকাটি চিরকালের জন্য স্পিন করে বলে মনে হচ্ছে।
আশেপাশে শিকার প্রকাশ করেছে যে আমার সম্ভবত এমন কিছু করার চেষ্টা করা উচিত:
((BindingProvider)myInterface).getRequestContext().put("com.sun.xml.ws.request.timeout", 10000);
((BindingProvider)myInterface).getRequestContext().put("com.sun.xml.ws.connect.timeout", 10000);
আমি এটিও আবিষ্কার করেছি যে আপনার কাছে জ্যাকএক্সডাব্লুএস-আরআইয়ের কোন সংস্করণ নির্ভর করে তার পরিবর্তে আপনাকে এই বৈশিষ্ট্যগুলি সেট করার প্রয়োজন হতে পারে:
((BindingProvider)myInterface).getRequestContext().put("com.sun.xml.internal.ws.request.timeout", 10000);
((BindingProvider)myInterface).getRequestContext().put("com.sun.xml.internal.ws.connect.timeout", 10000);
আমার সমস্যাটি হ'ল উপরের কোনটি সঠিক তা নির্বিশেষে আমি জানি না আমি কোথায় এটি করতে পারি। আমি যা পেয়েছি তা হ'ল একটি Service
সাবক্লাস যা ওয়েবসাইসিসে স্বয়ংক্রিয়ভাবে উত্পন্ন ইন্টারফেস প্রয়োগ করে এবং এটি যে তাত্ক্ষণিকভাবে চালু হচ্ছে, যদি ডাব্লুএসডিএল যদি সাড়া না দেয় তবে বৈশিষ্ট্যগুলি সেট করতে ইতিমধ্যে খুব দেরি হয়ে গেছে:
MyWebServiceSoap soap;
MyWebService service = new MyWebService("http://www.google.com");
soap = service.getMyWebServiceSoap();
soap.sendRequestToMyWebService();
কেউ কি আমাকে সঠিক দিকে নির্দেশ করতে পারে ?!